Java para ImageJ.Como converter uma imagem de RGB para 8 bits usando código?
Pergunta
Atualmente estou trabalhando na rotulagem de componentes conectados.Este é um processo que pega uma imagem e informa quantos objetos separados existem na imagem.
Meu problema é que logo no início preciso pegar qualquer imagem (especificamente valor RGB) e convertê-la em 8 bits.
EDITAR:como literalmente considerado um 8 bits, onde a imagem não é mais reconhecida como RGB.Não é uma imagem de 8 bits reconhecida como RGB.
Existe uma maneira de usar o código para fazer isso automaticamente sem precisar ir até a barra de ferramentas e convertê-lo "manualmente"?
Para esclarecer, estou programando para ImageJ usando Java.
Se alguém estiver disposto a me ajudar, ficarei feliz em fornecer o código que tenho até agora, onde estou criando uma imagem colorida em escala de cinza e depois tornando-a binária.Meu problema é que após as alterações a imagem ainda é considerada RGB, mesmo sendo essencialmente de 8 bits.
Obrigado
EDITAR:Eu estava olhando o código que me foi fornecido anteriormente e ele não parece resolver meu problema.Estou literalmente apenas querendo fazer com que o pequeno 'tick' que está próximo ao RGB esteja próximo de 8 bits.Já fiz toda a conversão sozinho, mas ainda é reconhecida como imagem RGB.
Solução
Tente por favor:
import ij.ImagePlus;
import ij.process.ImageConverter;
// ...
ImagePlus imp = IJ.getImage();
ImageConverter ic = new ImageConverter(imp);
ic.convertToGray8();
imp.updateAndDraw();