Python (pygame) : Get image color information?

标签 python colors pygame palette color-palette

我的最终目标是在图像中找到一种颜色(在本例中为白色)并将其替换为另一种颜色(基于特定情况)。因此,随着某个变量的变化,白色会被特定的颜色所取代。

然而,为了到达那里,我目前只是在玩图像(使用教程等)。我正在尝试使用以下代码打印图像的调色板。我的理解是颜色是代表 RGB 的 3 个整数的“元组”。 0 = 最暗,255 = 白色。所以,我正在测试的图像是黑白图像。我期待类似“(0,0,0),(255,255,255)”的东西。所以,我想如果我能做到这一点,那么我可以编写代码用适当的颜色替换“(255,255,255)”。

我提到最终目标是因为我很清楚我的方法可能不是最好的,也许有人有更好的方法可以解决这个问题。如果没有,我至少希望能够打印一个引用图像包含的颜色的字符串。 “NOFRAME”是我在这个网站上找到的一个很好的建议,因为我实际上并没有“使用”图像/图形——只是使用它们的属性。

image1=r"C:\Python27\Lib\site-packages\pygame\examples\data\image1.jpg"
image2=r"C:\Python27\Lib\site-packages\pygame\examples\data\image2.png"

import pygame, sys
from pygame.locals import *

pygame.init()

pygame.display.set_mode((1,1), pygame.NOFRAME)

background = pygame.image.load(image1).convert()
mouse_c=pygame.image.load(image2).convert_alpha()

colorpal = pygame.Surface.get_palette(mouse_c)

print colorpal

最佳答案

你想要做的是需要大量的像素级工作,所以我建议你使用 pygame.PixelArray用于表面直接像素访问的对象。

对于您特别想做的事情,听起来您可以使用 pygame.PixelArray.replace()方法。

关于Python (pygame) : Get image color information?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16872624/

相关文章:

python - Webkit2png 不适用于 --ignore-ssl-check

android - Android布局绘制有什么比较高效的?安卓 :textColor ="#FFFFFF" or android:textColor ="@android:color/white"?

java - 如何更改边框颜色运行时?

javascript - 如何实现颜色选择器而不是静态颜色

python - Pygame-子弹和敌人的碰撞,没有 Sprite 或类

python - 开始菜单运行缓慢。是什么原因?

Pygame 鼠标事件中的 Python 时间计数器

Python 描述符 __get__ 和 __set__

python - 在 Python 中有效地获取直方图 bin 的索引

python - 你如何在 Peewee 模型中存储列表?