2015-10-14 81 views
0

我只是想知道如何去迭代通过图像的每个像素?我知道我可以像打开其他文件一样打开文件,但它不是'可读'格式。我怎样才能打开和解析一个PNG像素点?

例如,假设我有:world.png (1920/1080)

我该如何去约两内解析它的循环?

+0

你看着'opencv'? –

+0

好吧,我实际上'需要'自己来遍历它。我知道opencv是一个选项,但我正在尝试将一个'native C++'应用程序与一个用CUDA编写的应用程序进行基准测试。所以,我实际上只是想知道如何以可读的格式打开它。 @ JasonMc92在整个网站上的每一个答案都可以在谷歌搜索中找到足够的时间。这是一个致力于编程帮助的网站... – Kris

+0

@Kris,我知道。我一直在这里。 :)我的信息就是用我自己的话说就是好的StackOverflow问题的典型规则。我更喜欢它对一切进行密切投票,就像某些人的风格一样。 – CodeMouse92

回答

0

你应该使用库来实现你想要的。在这种情况下,图书馆是libpng。参见手册中的“阅读”部分:http://www.libpng.org/pub/png/libpng-manual.txt

正如@Ben在评论中指出的还有一个C++包装:http://www.nongnu.org/pngpp/doc/0.2.7/

+0

哇,我不知道这个! http://www.nongnu.org/pngpp/doc/0.2.7/ –

+2

*必须*?图书馆是由什么构成的?童话般的尘埃? – Amit

+0

这是一个很好的编程规则:“不要重新发明轮子”。写一个兼容的PNG阅读器不是你在几个工作日内完成的。无论如何:如果您愿意,我会将“必须”替换为“应该”。 –