目前我正在尝试复制一张在python上是一半的图片并使其对称。其中图片包含整个像素数的一半。 左边是原件。我想从左到右复制这些像素,使整个图片对称
原始图片如下所示:
a a b b - - - -
a b c d - - - -
a b a b - - - -
输出图片将是:
^{pr2}$我正在处理的代码如下:
from csmedia import *
def symmetry(img):
output_image = None
w, h = img.size()
for y in range(h):
for x in range(w):
os = img.get(x, y)
img.set(w - x - 1, y, os)
return output_image
if __ name__ == __main__:
img = load_picture('img/half_star.png')
image = symmetry(img)
image.show
但是,当我运行代码时,它会给我“AttributeError:'NoneType'对象没有属性'show'”
我希望问题足够清楚。 谢谢您。在
您的
symmetry
函数不是生成输出图像,而是修改原始图像。你可以这样修改它:请注意,如果您使用OpenCV(最常用的图像处理库),python的for循环并不是完成这项工作的最佳工具。您可以使用
numpy.flip
并将原始数组和翻转数组合并在一起,以提高应用程序的速度。在也许你只是想:
而不是
^{pr2}$相关问题 更多 >
编程相关推荐