我需要加载图像并搜索颜色并替换它们。例如,在图像上,我需要搜索所有红色像素并将它们转换为紫色。
我正在执行以下操作(img是有效.png图像):
func colorize(img image.Image) {
b := image.NewRGBA(img.Bounds())
draw.Draw(b, b.Bounds(), img, image.ZP, draw.Src)
for x := 0; x < b.Bounds().Dx(); x++ {
for y := 0; y < b.Bounds().Dy(); y++ {
log.Println(b.At(x, y).RGBA())
}
}
}
事情img.At().RGBA()似乎没有返回正确的 R、G、B、A 代码?例如,我得到的数字大于 255。
那么我应该如何读取所有图像像素,同时能够知道它们的 x 和 y 位置呢?
蝴蝶不菲
相关分类