问题标签 [pgm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
16438 浏览

c - 如何在 C 中读取二维双数组中的 .pgm 图像文件

问题很简单:如何将 .pgm 图像文件读入 C 中的二维双精度数组。我在内存中没有 .pgm 缓冲区。我想将它从磁盘读入内存。

如果我能得到一个代码片段,我将不胜感激。谢谢你。

0 投票
1 回答
2915 浏览

c# - 将 pgm 图像转换为 bmp

如何在 C# 中加载 pgm 图像以及如何将其转换为 pgm 文件?

0 投票
2 回答
614 浏览

java - 帮助Java ImageWriter添加插件

我正在尝试将 BufferedImage 保存为 PNM 文件。我已经安装了 JAI(Java Advanced Imaging),并导入了 PNMWriter 插件。但是,我不知道如何将它添加到我的 ImageWriter 中,以便它可以写入 .pnm。当我运行 ImageIO.getWriterFormatNames() 以获取可能的格式名称时,只会出现标准格式名称(.png、.bmp、.jpg....)... 做什么

0 投票
1 回答
1494 浏览

c - 在 C 中裁剪 PGM

我正在尝试自学数字图像处理。我已将我的 pgm 读入一个结构。在这个结构中,我有像素数组。我可以打印得很好。现在我想根据用户输入裁剪这张照片。我接受这些输入,然后根据输入的坐标得到一个黑色矩形。我做错了什么?

0 投票
1 回答
96 浏览

c - 模块化出错了

所以我有一个有效的大功能。然后我决定修改它,现在我只是打印出一个黑色方块。我附上我的代码,看看是否有人会理解发生了什么。这三个函数 where 曾经的大函数: Function 1

前两个函数在 main 中调用。

0 投票
0 回答
528 浏览

java - 如何在 Java 中加载具有正确颜色范围的 PGM 图像?

我正在做一项工作,我必须用 Java 编程语言加载 PGM 图像。

我从文件加载它没有问题,因为我使用的是 Apache Sanselan 框架,而且它太容易做到:

但是,当我尝试在 Swing Canvas 上绘制它时,我意识到无法正确识别颜色范围。问题是加载的最大颜色值始终为 255(而在 PGM 文件中,可以指定另一个最大颜色)。

例如,当加载 PGM 图像时

最大颜色为 15,我得到一个完整的黑色图像,因为最大颜色被视为 255(因此,如果图像正确加载,则值为 15 的像素将是白色,在这种情况下几乎是黑色)。

我尝试使用 Java Advanced Image I/O Tools,但遇到了完全相同的问题。

有人知道如何解决吗?

谢谢!

0 投票
3 回答
6904 浏览

python - Python 和 16 位 PGM

我有 16 位 PGM 图像,我正在尝试用 Python 读取。似乎(?)像 PIL 不支持这种格式?

大致显示图像,但它不正确。整个过程中都有黑带,据报道 img 有mode=L我认为这与我有一个关于16 位 TIFF 文件的早期问题有关。PIL 不支持 16 位那么罕见吗?有什么建议我可以使用 PIL 或其他标准库或本地代码在 Python 中读取 16 位 PGM 文件吗?

0 投票
5 回答
24354 浏览

python - Numpy 和 16 位 PGM

使用 numpy 在 Python 中读取 16 位 PGM 图像的有效且清晰的方法是什么?

由于 PIL 错误,我无法使用 PIL 加载 16 位 PGM 图像。我可以使用以下代码阅读标题:

这将打印正确的数据:('P5', ' ', '640', ' ', '480', ' ', '65535')但我感觉这不是最好的方法。除此之外,我很难弄清楚如何通过 16 位以size(header).

编辑:添加图像

读取和显示图像的 MATLAB 代码是:

看起来像这样:

在此处输入图像描述

0 投票
3 回答
4726 浏览

c - 使用 Pure C 显示来自 PGM 图像 (p5) 的直方图像素值,无需任何图像处理库

这个问题对于使用纯 C 进行图像处理有更多的理解是具有挑战性的。我已经做了一个简单的程序,使用用 GCC 编译的 C 来读取非二进制 PGM 文件。现在,当我尝试读取二进制 PGM 文件时,它已成为一个问题。可以通过使用IrvanView将JPG转换为PGM来获取此二进制 PGM 文件。

注意:请不要使用任何图像处理库(例如:OpenCV)回答。

我目前的代码是:

我已经阅读了一些与我的问题相关的页面 [如何阅读 .PGM 格式文件?] ,但我找不到任何明确而简单的答案。对于我的代码中的任何错误,我深表歉意。任何关于我的代码的建议和批评都将不胜感激。

我上面的脚本无法显示正确的颜色直方图,因为如果你理性思考,你可能会得到高于 100 的像素颜色(不仅低于 100)。所以,主要问题是如何解决这个问题?

编辑我

编辑二

0 投票
2 回答
24890 浏览

c++ - How to read in data from a pgm file in C++

So far I can read every line and print it out to the console:

However a pgm file apparently will always have the following at the start before the data:

How can i adapt my code so that it checks that "P2" is present, ignores any comments (#), and stores the variables and subsequent pixel data?

I'm a bit lost and new to c++ so any help is appreicated.

Thanks