标签: python-imaging-library

使用 PIL 将图像路径更改为图像对象

我正在使用自定义保存功能将图像路径保存到我的模型图像字段。然后我意识到我只是在保存路径而不是实际对象。我的问题是如何使用 PIL 将该路径转换为对象。

python python-imaging-library

0
推荐指数
1
解决办法
3411
查看次数

Python PIL:使用PIL修改图像,Flush()不起作用

from PIL import Image
import webbrowser, aggdraw

im = Image.open('Background.png')
# Drawing cross on top of PIL image
d = aggdraw.Draw(im)
p = aggdraw.Pen("black", 0.5)
d.line((0, 0, 500, 500), p)
d.line((0, 500, 500, 0), p)
d.flush()
webbrowser.open('Background.png')
Run Code Online (Sandbox Code Playgroud)

以上是我正在运行的代码.我使用Web浏览器打开图像,因为PIL show()似乎不起作用.以上将Background.png返回给我不变.

任何输入都将不胜感激.

python python-imaging-library aggdraw

0
推荐指数
1
解决办法
666
查看次数

使用Python和PIL进行慢速图像处理

我正在尝试按RGB值的顺序对图像的像素进行排序.作为Python的新手我试过这个:

from PIL import Image

source = Image.open("source.jpg")
colors = source.getcolors(source.size[0] * source.size[1]) #maxcolor value =256, get   all colors with source.size[0] * source.size[1]
pixels = []
for i, color in colors:
    pixels.extend(i * [color])
    pixels.sort()
    new = Image.new('RGB', source.size)
    new.putdata(pixels) 
    new.save("new.png")
Run Code Online (Sandbox Code Playgroud)

它适用于40x40像素左右的小文件.但目标是在高达3000x2000分辨率的照片上使用它,我尝试运行它,但两小时后仍然没有尽头.代码可以优化,我做了一些完全错误的事情,还是Python根本不适合这种任务?

python image-processing python-imaging-library

0
推荐指数
1
解决办法
2328
查看次数

将图像实例(文件)转换为数组(python)

我有一个图像序列,我试图在特定的帧上运行脚本.我需要切换到这个框架并将其转换为数组.但是,我无法将框架作为实例<TiffImagePlugin.TiffImageFile image mode=I;16 size=512x512 at 0x104A0C998>.如何将此实例转换为数组?我已经使用过numpy.array但它不起作用.谢谢!

prot=Image.open("F23BN.tif")
for frame in ImageSequence.Iterator(dna):
    if frame==16:
        frame.convert('L')
        print frame.mode, frame.format #I checked the format and it is still in the Instance format
Run Code Online (Sandbox Code Playgroud)

python tiff python-imaging-library

0
推荐指数
1
解决办法
7820
查看次数

python在画布上以圆圈排列图像

我有一堆图像(比如10)我已经生成了数组或PIL对象.

我需要将它们集成到一个循环的方式来显示它们,它应该调整自己的屏幕分辨率,python中有什么可以做到这一点?

我尝试过使用粘贴,但弄清楚分辨率画布和粘贴位置是痛苦的,想知道是否有更简单的解决方案?

python python-imaging-library

0
推荐指数
1
解决办法
1332
查看次数

不使用PIL ImageFont渲染的Unicode字符

我正在尝试使用框绘图字符来编写tiff图像,但所有相关字符都显示为: 这个图片

框绘制字符(例如"┌─┐│└┘╞═╡╤╧╘╛")直接粘贴到源代码中,并且在保存到文本文件时它们会正确显示,但我不明白为什么它们'没有出现在图像上.

这是我用来绘制图像的代码示例:

# coding=utf-8
text = "?????????????"
from PIL import Image, ImageDraw, ImageFont, TiffImagePlugin
img = Image.new("1",(1200,1600),1)
font = ImageFont.truetype("cour.ttf",14,encoding="unic")
draw = ImageDraw.Draw(img)
draw.text((40,0), text, font=font, fill=0)
img.save("imagefile.tif","TIFF")
Run Code Online (Sandbox Code Playgroud)

我在Windows 7上使用python版本2.7.2.

python unicode python-imaging-library

0
推荐指数
1
解决办法
3230
查看次数

将PIL图像转换为numpy数组

我想将PIL图像转换为numpy数组.Numpy的asarray功能只是将图像放在一个0维数组中.

(Pdb) p img
<PIL.Image._ImageCrop image mode=RGB size=1024x0 at 0x106953560>
(Pdb) img.getdata()
<ImagingCore object at 0x104c97b10>
(Pdb) np.asarray(img.getdata())
array([], dtype=float64)
(Pdb) np.asarray(img)
array(<PIL.Image._ImageCrop image mode=RGB size=1024x0 at 0x106953560>, dtype=object)
(Pdb) np.asarray(img).shape
()
(Pdb) np.asarray(img, np.uint8)
*** SystemError: error return without exception set
Run Code Online (Sandbox Code Playgroud)

关于类似SO问题的解决方案不起作用.

python numpy python-imaging-library

0
推荐指数
1
解决办法
1717
查看次数

使用python将图像转换为数字矩阵

我有一张图片"felix.png"(280x280).

我正在将此图像转换为数字矩阵:

from PIL import Image
from numpy import array




img = Image.open('felix.png')
arr = array(img)
Run Code Online (Sandbox Code Playgroud)

这个数组的形状是(280,280,3),我想知道为什么每个像素用3维数组表示?

例如arr[0][0][255,255,255]......

python arrays numpy python-imaging-library

0
推荐指数
1
解决办法
524
查看次数

如何在Python(PIL)中处理TIFF标头值?

我可以通过PIL读取TIFF图像文件...

im = Image.open('FRONT200BW_1.TIF')
Run Code Online (Sandbox Code Playgroud)

我可以通过以下方式查看TIFF标头:

im.tag[270]
'returned description'
Run Code Online (Sandbox Code Playgroud)

这是我碰到砖墙的地方。我需要摆弄Artist(315),Date_Time(306),Document_Name(269),Image_Description(270)和Page_Name(285),然后将文件保存回磁盘,而无需对图像数据进行其他更改任何其他标头值/标签。

看来我应该能够执行以下操作:

im.tag[270] = 'my new description'
Run Code Online (Sandbox Code Playgroud)

但是当我这样做时,有趣的事情发生了...

如果我对该文件执行save()并进行检查,则它没有新的描述标头,实际上会丢失所有标头值。

当我检查之前通过的价值

im.tag.tags
Run Code Online (Sandbox Code Playgroud)

我得到的是一个字典外观的东西,返回了一个字符串,用于描述文件中先前存在的描述。在如上所述更改它并查看im.tag.tags之后,它会将键270的值从字符串更改为元组。就像我说的,保存它似乎会擦除所有标头。

如何更改这些标头值?

python tiff python-imaging-library

0
推荐指数
1
解决办法
5317
查看次数

从文件夹中打开随机png图像

您好,我需要非常简单的Python 3脚本的帮助。在脚本中,我尝试从一个文件夹中打开一个png图像文件:

png = Image.open('img/image.png', + 'r')
Run Code Online (Sandbox Code Playgroud)

它工作正常,但是现在我需要从同一文件夹中获取随机的.png图像,但是尝试了一些不成功之后,我想知道如何做,实际上我在脚本中使用了

  • 来自随机进口randint
  • 导入uuid
  • 从PIL导入图片

任何帮助将不胜感激,谢谢大家

python python-imaging-library python-3.x

0
推荐指数
1
解决办法
165
查看次数