我正在写一个小应用程序,它读取图像中每个像素的颜色并将其写入文件。首先我是用Python做的,但是在大图片上它太慢了。然后我发现了可以使用的FreeImage库,但我无法理解如何使用GetPixelColor方法。 您能否提供一个关于如何获得颜色的例子,例如像素[50:50]? 这里是关于GetPixelColor的信息:http://freeimage.sourceforge.net/fnet/html/13E6BB72.htm。 非常感谢!FreeImage:获取像素颜色
0
A
回答
4
随着使用FreeImagePlus一个24位或32位的图像,得到了像素在COORDS 50,50应该是这样的:
fipImage input;
RGBQUAD pixel;
input.load("myimage.png");
height = in.getHeight();
in.getPixelColor(50, height-1-50, &pixel);
请注意,在FreeImage的原产地是左下角,所以y值大概会需要通过如上所述从图像高度减去y来反转。
0
要从输入图像获取像素颜色:img,从函数调用让我们说:void read_image(const char* img)
请按照下面的代码片段。
这里是上面read_image函数的代码片断:
FREE_IMAGE_FORMAT fif = FreeImage_GetFIFFromFilename(img);
FIBITMAP *bmp = FreeImage_Load(fif, img);
unsigned width = FreeImage_GetWidth(bmp);
unsigned height = FreeImage_GetHeight(bmp);
int bpp = FreeImage_GetBPP(bmp);
FIBITMAP* bitmap = FreeImage_Allocate(width, height, bpp);
RGBQUAD color; FreeImage_GetPixelColor(bitmap, x, y, &color);
可变color
将包含图像像素的颜色。可以按如下方式提取的RGB值:
float r,g,b;
r = color.rgbRed;
g = color.rgbGreen;
b = color.rgbBlue;
希望它能帮助!
相关问题
- 1. GDAL获取像素颜色
- 2. Java - 获取像素颜色
- 3. 获取FreeImage像素的数据格式?
- 4. 获取rMagick中像素的颜色
- 5. Java获取像素的颜色LIVE
- 6. 使用Magick获取像素颜色++
- 7. 尝试获取像素颜色
- 8. 从NSImage获取像素和颜色
- 9. 如何从像素获取颜色? OpenGL
- 10. 获取UIImage的像素颜色
- 11. 获取AVCaptureSession或AVCaptureVideoPreviewLayer的像素颜色
- 12. 从图片中获取像素颜色?
- 13. 如何获取图像中像素的颜色(加载灰色)?
- 14. 读取图像的像素颜色
- 15. 如何使用FreeImage获取子图像
- 16. 减少颜色使用的FreeImage库(C#)
- 17. iPhone:如何获取图像的每个像素的颜色?
- 18. 从网络摄像头获取像素颜色
- 19. 从Vaadin的图像获取像素颜色
- 20. 获取图像的平均外部像素颜色
- 21. 在Swift 3中使用CGPoint从图像获取像素颜色
- 22. 统一2D:获取原始图像的颜色像素
- 23. 获取pygame中图像的单个像素的颜色
- 24. PNG ++读取像素颜色值
- 25. 提取屏幕像素的颜色请
- 26. 提取颜色渐变像素信息
- 27. jQuery获取元素的颜色?
- 28. XNA获取像素颜色并在每个像素上绘制精灵
- 29. PyPNG读取48位,更改像素颜色,写入像素
- 30. 获取像素颜色的阿尔法混合
如果可以使用DevIL或CImg来完成,那也不错。 – ghostmansd