ImageJ的Java。如何使用代码将图像从RGB转换为8位?

时间:2014-04-14 16:28:47

标签: java rgb grayscale imagej 8-bit

我目前正致力于连接组件标签。这是一个获取图像并告诉您图像中有多少个单独对象的过程。

我的问题是,在一开始我需要能够拍摄任何图像(特别是RGB值)并将其转换为8位。

编辑:在字面上被认为是8位,其中图像不再被识别为RGB。不是被识别为RGB的8位图像。

有没有办法使用代码自动执行此操作而无需进入工具栏并“手动”转换它?

为了澄清,我正在使用Java为ImageJ编程。

如果有人愿意帮助我,我很乐意为他们提供我到目前为止的代码,我将制作彩色图像灰度,然后将其设为二进制。我的问题是,在更改之后,图像仍被视为RGB,即使图像基本上是8位。

由于

编辑:我正在查看之前提供给我的代码,它似乎无法解决我的问题。我实际上只是希望制作RGB旁边的小“滴答”,而不是8位。我已经完成了自己的所有实际转换,它仍然被识别为RGB图像。

1 个答案:

答案 0 :(得分:5)

请尝试:

import ij.ImagePlus;
import ij.process.ImageConverter;

// ...

ImagePlus imp = IJ.getImage();
ImageConverter ic = new ImageConverter(imp);
ic.convertToGray8();
imp.updateAndDraw();