问题标签 [jpeg2000]

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 投票
1 回答
2958 浏览

c++ - 如何使用 openJPEG C++ 逐块读取 JP2

我想知道:逐块读取 jp2 块并将数据存储在缓冲区对象中的意图是什么?

现在我做这样的事情。

但它是如何设计的?

0 投票
1 回答
476 浏览

c++ - OpenJPEG 的 opj_encode 出现段错误

我是 OpenJPEG 的新手,我正在尝试使用它的库来创建一个 c++ 应用程序,该应用程序接收图像文件并将它们编码为 J2k 格式。我创建默认参数,opj_set_default_encoder_parameters(&params)并设置 outfile 值。使用这些参数,我创建图像image = bmptoimage(filename, &params)并将参数的 x 和 y 设置为图像大小。opj_setup_encoder(encoder, &params, image)返回成功,但代码如下:

我在 opj_encode 函数中收到信号 11 段错误。

我想我没有设置一个重要的参数,但我找不到任何东西来表明它可能是哪个参数。可能是哪个参数?

也可能是我错误地创建了流对象,stream = opj_stream_create_default_file_stream(params.outfile, OPJ_FALSE);

谢谢

更新

我发现这opj_encode是段错误,因为 opj_start_compress 失败。它失败并出现错误“与图块大小相比,分辨率数量太高”。我已经输入params.numresolution = 1;(0 导致 malloc 错误),但我仍然得到同样的错误。知道为什么opj_start_compress会失败吗?

0 投票
1 回答
254 浏览

jpeg - 用于调试 Jpeg 2000 图像的工具

我通常使用 JPEGsoop 来查看 jpeg 图像。是否有工具包库或程序可用于查看 Jpeg 2000 图像的结构?

我看到了 John Bokma Java 自由职业者 Perl 程序员获取图像元数据

我想无论如何我都会建立那个程序。

还有其他建议吗?

0 投票
0 回答
1127 浏览

r - R中的JPEG2000或批量转换为geotiff

我希望将 .jp2 图像打开到 R 中。我有 Sentinel-2 卫星图像,但我似乎无法正确安装 JPEG2000 GDAL 驱动程序或链接到我的 R 环境。我曾尝试与 Jasper 合作,但并没有如我所愿。是否有任何允许在 R 中直接打开 .jp2 sentinel-data 的软件包?

或者,我正在尝试将 jp2 批量转换为 geotiff,所以我可以在 R 中使用这些。我试过这个:https ://viewer.nationalmap.gov/tools/rasterconversion/Convert_JP2_Data_2_GeoTIFF_with_ESRI.html但我没有 ArcGIS可用,所以也失败了。文件需要保持原来的名称,只有扩展名需要改变。

我正在寻找一种可用于大量文件的开源解决方案(至少有几百个,所以在 QGIS 中手动操作不是解决方案)。

你能帮我解决这个问题吗?

谢谢!

0 投票
2 回答
663 浏览

codec - DICOM像素数据压缩解压会不会弄乱窗口中心和窗口宽度

我正在查看计算机断层扫描 (CT) DICOM 图像。这些最初是未压缩的 DICOM 图像。我有这些 DICOM 图像的无损 J2K 压缩形式:传输语法 = 1.2.840.10008.1.2.4.90(JPEG-2K 无损)。当我将这些 DICOM 图像解压缩回来时: Transfer Syntax =1.2.840.10008.1.2.1 (Little Endian Explicit) 并在 DICOM 查看器中并排查看压缩和未压缩的 DICOM 图像然后我观察到 - 压缩和未压缩的图像需要用于查看的不同“窗口级别”(“窗口级别”=窗口中心的组合'= WC =亮度和“窗口宽度”

所以问题

  1. 这种级别的变化(窗口中心和窗口宽度)是否归因于我的编解码器的问题。就像我的编解码器因为处理不正确而弄乱了像素数据一样?
  2. 有没有办法通过调整 DICOM 标头中的字段来解决这个问题?

我查看了 Dicom Image 的 Post on Window width and center 计算。虽然那篇文章告诉我应用重新缩放截距和斜率来将图像的像素值转换为对应用程序有意义的值,但我试图弄清楚我如何与之相关

  • 我在视觉上看到的(原始和调整后的窗口中心和窗口宽度之间的关系)
  • 有没有一种方法可以以编程方式关联像素值以获得 wc、ww、比例截距斜率的值?

我还检查了(正确的 DICOM JPEG(RGB) 像素处理逻辑,用于应用窗口宽度和级别过滤器)——但这似乎与图像的渲染有关。我的问题与调整 DICOM 标头(wc?ww?比例截距?斜率?)有关,以使观众能够正确呈现它。查看 DICOM 像素数据,我能否根据像素数据元素中的像素值达到这些 28 组元素的适当级别。是否有一个已知的函数来计算这种东西?

我的图像是单色的

非常感谢

约格什·德维

0 投票
1 回答
197 浏览

jpeg2000 - 使用 OpenJPEG 库读取 JP2 的 GML?

标题总结了一切。但我必须解释,我不寻求 GDAL 解决方案。我的目标是仅使用 OpenJPEG 和我的地理投影库来读取带有地理参考的整个 JP2 文件?

0 投票
2 回答
1231 浏览

imagemagick - 使用 ImageMagick 进行转换时保持相同的文件名

我正在尝试使用终端中的 ImageMagick 将目录中的数百个特别命名的 .jp2 文件转换为 .jpg 文件。

比如我想让A.jp2、B.jp2、C.jp2变成A.jpg、B.jpg、C.jpg。

我尝试了以下命令:

但是,这给了我以下文件:

  • *-0.jpg
  • *-1.jpg
  • *-2.jpg
  • 等等

转换时如何保留原始文件的名称?

0 投票
0 回答
588 浏览

matlab - matlab - 非常大的 jp2 上的 imread 和 imshow

我正在处理一个非常大的 jp2 (jpeg2000) 文件,需要使用 imshow 函数查看它。

鉴于 jp2 文件具有多个级别的比例(通过小波分解级别),我认为我将能够加载它并显示它,而无需加载整个文件大小(几 GB),就像加载 RSET 文件一样.

我试过加载文件并用 imshow 显示它,但 Matlab 崩溃了。

有什么建议么?

0 投票
2 回答
2891 浏览

java - 使用 ImageIO 将 JPEG2000 转换为 PNG

我正在尝试将 JPEG2000 (.jp2) 图像转换为其他格式(JPEG 或 PNG),因此我尝试使用 writejavax.imageio封装方法。这适用于其他格式(例如 JPEG 到 PNG),但当涉及 JPEG2000(或 TIFF)时,它会引发异常。谁能告诉我输入图像的可能格式是什么?

这是方法:

我这样称呼它:

0 投票
1 回答
911 浏览

java - Java中的离散小波变换在图像中创建白点

在我的 Java 程序中,将图像加载到程序中,然后使用离散小波变换进行变换,并将得到的系数用作输出图像的图像数据。

该过程适用于自然图像:http: //imgur.com/Pk3kUs7

但是,如果我转换例如卡通图像,则在近似子带中的暗边缘上会出现白点:http: //imgur.com/kLXyBvd

这是 forwardDWT 的代码:

这是使用提升方案实现的 CDF9/7 fitlerbanks 的 DWT,类似于 JPEG2000 中的 DWT。

该算法有两个限制:

  1. 只能处理灰度数据
  2. 图像的宽度和高度必须相同,并且是 2^n 的乘积,例如 256x256、512x512 等。

因为也可能是灰度值计算错误,这里是加载图像的其他代码,开始转换,将 rgb 值转换为灰度值并转换回 rgb:

注意:因为图像的宽度和高度应该是相同的,所以我有时只使用宽度来表示高度。

编辑:正如@stuhlo 所建议的,我在 forwardDWT 中添加了对近似子带值的检查:

不幸的是,现在水平细节的 subabnd 变黑了。