将JPEG图像转换为黑白图像

4

有没有一种特定的方法可以使用C将JPEG图像转换为黑白?我使用C将.bmp图像转换为黑白,只需提取头文件(.bmp文件中为54字节),并使用公式将RGB转换为相应的灰度级别即可。但是如何在jpeg文件中进行此操作呢?


你必须通过学习规范来掌握JPEG的语言,或者使用像libjpeg这样的库。 - Kerrek SB
尝试寻找一些库。 - Spec
这个库在C中可用吗?除了使用库之外,是否还有其他方法可以解决bmp文件的问题,因为它们本身就很容易解决。 - bluechill
@bluechill libjpeg是用C语言编写的,它非常擅长它所做的事情。由于JPG是一个非常复杂的事情,因此您不太可能做得比它更好。 - Tony The Lion
2
将JPEG转换为黑白(其实是灰度)很容易。只需丢掉U和V通道,仅保留Y通道即可。 :-) - R.. GitHub STOP HELPING ICE
@bluechill [just google it](http://bit.ly/A1aCzg) - Agnius Vasiliauskas
1个回答

0

如问题评论中所提到的,可以通过处理JPEG压缩数据来实现无损压缩。使用OpenCV打开、处理和重新压缩可能会引入一些伪影。 - rotoglup

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接