标签: python-imaging-library

将图像清洁为仅黑色

我有一张图片.

我想逐个像素地检查那个图像,任何非黑色的像素都应该变成白色.我该怎么做呢?

(蟒蛇).

谢谢!

python image-processing python-imaging-library

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

Django上的图像管理

我想弄清楚在django上使用哪个图像管理库.photologue,image-kit和pil(python成像库)有什么区别?

django photologue imagekit python-imaging-library django-imagekit

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

在PNG中编码二进制数据?

我正在寻找有关如何通过颜色将少量二进制数据(例如,大约200字节)编码到PNG中的信息; 本质上是Hid.im.torrent文件做的事情.任何有关最佳实践的信息或跳板都将是出色的.

谢谢!

python encoding png steganography python-imaging-library

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

谷歌应用引擎get_serving_url()未定义

这似乎是一个简单的问题,但我无法弄清楚:

get_serving_url()在我的代码中调用函数并得到错误:

NameError:未定义全局名称"get_serving_url"

我的import语句目前看起来像是:来自google.appengine.api导入图片

之前我尝试了各种"从PIL导入图像"并导致导入错误.我最近安装了PIL库

我的python路径上有site-packages和PIL文件夹

我该如何get_serving_url()工作?

python import google-app-engine python-imaging-library

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

从图像URL构建调色板

我正在尝试创建一个API,它将图像URL作为输入,并返回JSON格式的调色板作为输出.

它应该是这样的:http://lokeshdhakar.com/projects/color-thief/

但应该是在Python中.我已经研究过PIL(Python图像库),但没有得到我想要的东西.有人能指出我正确的方向吗?

Input: Image URL
Output: List of Colors as a palette
Run Code Online (Sandbox Code Playgroud)

python palette python-imaging-library

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

如何在图像中找到矩形

这是此答案中此代码生成的图像(绿色圆圈除外,我之后提到):

FOO

形状为(707,1028,3),因此每个像素有三个通道(RGB),但只填充白色和黑色.如果它被转换为8位图像会更好.

我需要获取图像中每个矩形的位置和大小.我有一些代码使用PIL并.load()访问每个像素,但速度太慢.在PIL版本中,我寻找开始角落和结束角落.代码就像pixels[x, y] == 255 and pixels[x-1, y] == 0 and pixels[x, y-1] == 0

python arrays numpy python-imaging-library

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

TypeError:期望的整数参数,在将图像转换为灰度时得到浮点数

我使用以下代码将彩色图像转换为灰度图像.它为什么抛出TypeError

#!/usr/bin/python
from PIL import Image
im = Image.open("Penguins.jpg")
pixel = im.load()
width, height = im.size
for x in range(width):
    for y in range(height):
        R,G,B = pixel[x,y]
        pixel[x,y] = ((0.299*R+0.587*G+0.114*B),(0.299*R+0.587*G+0.114*B),(0.299*R+0.587*G+0.114*B))

im.save("Penguins_new.jpg")
Run Code Online (Sandbox Code Playgroud)

python python-imaging-library

1
推荐指数
1
解决办法
3万
查看次数

在PIL中,为什么不转换('L')转动图像灰度?

对于我正在编写的程序,我需要将RGB图像转换为灰度,并使用PIL将其作为NumPy数组读取.

但是,当我运行以下代码时,它会将图像转换为灰度,但会转换为奇怪的颜色失真,有点像热像仪的输出,如图所示.

知道问题可能是什么?

谢谢!

http://www.loadthegame.com/wp-content/uploads/2014/09/thermal-camera.png

from PIL import Image
from numpy import *
from pylab import *

im = array(Image.open('happygoat.jpg').convert("L"))

inverted = Image.fromarray(im)

imshow(inverted)
show()
Run Code Online (Sandbox Code Playgroud)

python numpy python-imaging-library

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

无法裁掉透明度,PIL getbbox()和Numpy都无法正常工作

在图像处理方面我非常喜欢:(我有一堆PNG文件(其中300个),我希望裁剪大面积的透明度.我想显然自动化过程,因此为什么我尝试使用python和PIL.

现在我看看以下链接, 将PNG图像裁剪为最小尺寸,并使用此链接建议的Numpy,使用python/PIL自动裁剪图像,两者都没有成功:(输出文件与输入文件!没有裁剪透明度,大小相同.getbbox返回相同的宽度和高度.

这是其中一个图像的链接; 98x50 按钮图像是一个铃铛形状的按钮图标.它是用白色绘制的,因此很难看出哪个透明背景.预期的结果将是一个20x17的按钮(内部透明度为20x17的盒子保持不变)

这是我正在使用的代码;

#!/usr/bin/env python

import sys
import os
import Image
import numpy as np


def autocrop_image2(image):
    image.load()

    image_data = np.asarray(image)
    image_data_bw = image_data.max(axis=2)
    non_empty_columns = np.where(image_data_bw.max(axis=0) > 0)[0]
    non_empty_rows = np.where(image_data_bw.max(axis=1) > 0)[0]
    cropBox = (min(non_empty_rows), max(non_empty_rows),
               min(non_empty_columns), max(non_empty_columns))

    image_data_new = image_data[cropBox[0]:cropBox[
        1] + 1, cropBox[2]:cropBox[3] + 1, :]

    new_image = Image.fromarray(image_data_new)
    return new_image


def autocrop_image(image, border=0):
    # Get the bounding box
    bbox = image.getbbox()

    # Crop the image to the contents …
Run Code Online (Sandbox Code Playgroud)

python numpy image python-imaging-library

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

PIL:无法保存粘贴了png的jpg

我正在尝试在jpg上粘贴一个png.这是代码:

#!/usr/bin/env python3

from PIL import Image
from PIL import ImageDraw

im = Image.open("existing.jpg")
logo = Image.open("python-32.png")

back = Image.new('RGBA', im.size)
back.paste(im)
poly = Image.new('RGBA', (512,512))
pdraw = ImageDraw.Draw(poly)
pdraw.polygon([(128,128),(384,384),(128,384),(384,128)],
          fill=(255,255,255,127),outline=(255,255,255,255))

back.paste(poly, (0,0), mask=poly)
back.paste(logo, (im.size[0]-logo.size[0], im.size[1]-logo.size[1]), mask=logo)

back.show()
Run Code Online (Sandbox Code Playgroud)

当我执行上面的代码时,我可以看到PNG图像显示为随机名称tmpc8rb455z.PNG.

我也尝试用jpg格式保存它但失败了.这意味着当我添加back.save('res.jpg', 'JPEG')并执行它时,我会收到这样的错误:

Traceback (most recent call last):
  File "test.py", line 32, in <module>
    back.save('res.jpg', 'JPEG')
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/PIL/Image.py", line 1893, in save
    save_handler(self, fp, filename)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/PIL/JpegImagePlugin.py", line 604, in _save
    raise IOError("cannot write mode %s as …
Run Code Online (Sandbox Code Playgroud)

python png jpeg python-imaging-library

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