我正在为生物医学成像课程设计一个项目(请注意:这是非编程课程,因此寻求编程帮助并不是作弊。寻求规划方面的概念帮助将是作弊。)使用不同的数学变换的图像。我正在用C编写程序,因此它可以尽可能快。我已经完成了数学转换的代码,但是我已经意识到我不知道如何将灰度.png文件转换为二维矩阵/数组以进行计算,而且我也不知道如何显示.png C档。有人可以帮我吗?
我正在尝试将“ image.png”图像转换为2d数组,其中数组中的每个条目的值都在0-255之间,并与“ image.png”中的每个像素相对应。我还想将一个二维数组(其中每个条目对应于图像中的一个像素,并将其值介于0-255之间)转换为新的“ image_two.png”文件。
我是一个有点新的程序员。我在python编程方面有扎实的基础,但是C对我来说是新的。我做了很多研究,发现很多人都在谈论使用“此库”或“该库”,或“此库”,但是我如何在C中使用下载的库?作为python程序员,这对我来说是陌生的领域:(
我正在使用Ubuntu 12.04
重申:
您如何在C中将灰度的.png图像读取为二维数组/矩阵?
您如何在C中将二维数组/矩阵显示为灰度图像?
您如何使用C代码下载下载的库(特别是针对上述两个问题)?我发现了如何使用这些库。
编辑:我仍然很难弄清楚如何从.png文件中创建一个灰度2d数组,以及如何从灰度2d矩阵中创建一个.png文件。有人可以帮忙吗?
要在 Linux 中安装库,通常您将使用包管理器。例如,在 Debian(包括 Ubuntu)中,您可以执行以下操作:
$ apt-cache search libpng
Run Code Online (Sandbox Code Playgroud)
您将根据运行此命令的结果决定安装哪个软件包,然后运行
$ sudo apt-get install <package-name>
Run Code Online (Sandbox Code Playgroud)
此命令可能会安装png.h在已包含在 gcc 搜索路径中的位置。这意味着要png.h在您的程序中使用,您所要做的就是包含它。
#include <png.h>
Run Code Online (Sandbox Code Playgroud)
跳至libpng 手册中的第 3 章,了解有关读取 png 文件的演练。