lookup table  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
LhuPJ
What is classpath?
[Avatar]

Membro desde: 13/07/2005 00:00:00
Mensagens: 9
Offline

Olá Pessoal!
Estou tentando pegar uma imagem em nível de cinza e aplicar a lookup table nela. Já fiz a parte que pega os três canais de cores (RGB). A saída eu também já fiz, só está faltando mesmo aplicar a lookuptable, sei que tem na JAI, mas não deu certo alguém sabe como fazer isso.
Obrigada.
Lhu.
[WWW] [ICQ]
rafael-sjcjugPJ
What is classpath?
[Avatar]

Membro desde: 16/07/2005 00:00:00
Mensagens: 5
Offline

Lhu wrote:Olá Pessoal!
Estou tentando pegar uma imagem em nível de cinza e aplicar a lookup table nela. Já fiz a parte que pega os três canais de cores (RGB). A saída eu também já fiz, só está faltando mesmo aplicar a lookuptable, sei que tem na JAI, mas não deu certo alguém sabe como fazer isso.
Obrigada.
Lhu.


Você não disse o que não deu certo... mas veja www.lac.inpe.br/~rafael.santos/Java/JAI, tem alguns exemplos que podem ajudar.

Rafael
[WWW] [ICQ]
LhuPJ
What is classpath?
[Avatar]

Membro desde: 13/07/2005 00:00:00
Mensagens: 9
Offline

O que não deu certo foi na hora de aplicar a tabela de cores pois o programa está gerando a mesma imagem de entrada nem entra na função lookque está abaixo.





* Editado: Lembre-se de usar BBCode em seus códigos para mantê-los identados e mais legíveis para outros usuários - Matheus
:joia:
[WWW] [ICQ]
rafael-sjcjugPJ
What is classpath?
[Avatar]

Membro desde: 16/07/2005 00:00:00
Mensagens: 5
Offline

Lhu wrote:O que não deu certo foi na hora de aplicar a tabela de cores pois o programa está gerando a mesma imagem de entrada nem entra na função lookque está abaixo.


Ele não entra no seu método estático lookup ou ele executa o método JAI.create e dá o mesmo resultado?


Lhu wrote:
public static PlanarImage lookup (PlanarImage ima)
{

byte[] tableData = new byte[0x10000];
for(int i=0; i<(0x10000);i++)
{
tableData[i]=(byte)(i >> ;
// tableData[1][i]=(byte)(i >> ;
// tableData[2][i]=(byte)(i >> ;
}

LookupTableJAI lut = new LookupTableJAI(tableData);
RenderedOp image2= null;
image2 = JAI.create ("lookup",ima, lut);
return image2;


Não sei se este código deve funcionar - sua LUT tem 0x10000 entradas?? O que exatamente você está tentando fazer? Essa sua LUT não faz muito sentido, tem tantas entradas que seria mais simples usar RGB diretamente...

Rafael
[WWW] [ICQ]
LhuPJ
What is classpath?
[Avatar]

Membro desde: 13/07/2005 00:00:00
Mensagens: 9
Offline

Na verdade esse é só um exemplo que dei pois o código que uso é





* Editado: Lembre-se de usar BBCode em seus códigos para mantê-los identados e mais legíveis para outros usuários - Matheus
:joia:
[WWW] [ICQ]
rafael-sjcjugPJ
What is classpath?
[Avatar]

Membro desde: 16/07/2005 00:00:00
Mensagens: 5
Offline

Lhu wrote:Na verdade esse é só um exemplo que dei pois o código que uso é


Reconheço este código

Veja que o bloco que mapeia a LUT para a imagem só é executado se o modelo de cores for indexado. Se o modelo for outro, o método retorna a imagem original sem modificações. Você sabe qual é o modelo de cores da sua imagem?

Rafael
[WWW] [ICQ]
LhuPJ
What is classpath?
[Avatar]

Membro desde: 13/07/2005 00:00:00
Mensagens: 9
Offline

Não sei qual é o modelo de cor da minha imagem, uso vários tipos de imagens, inclusive imagens microscópicas. Estou usando o código abaixo e ele funcionou, mas queria que as cores ficassem mais nítidas para o usuário.





* Editado: Aumente as chances de alguém responder o seu tópico. Use BBCode em seus códigos para mantê-los identados e mais legíveis para outros usuários. - Matheus
[WWW] [ICQ]
rafael-sjcjugPJ
What is classpath?
[Avatar]

Membro desde: 16/07/2005 00:00:00
Mensagens: 5
Offline

Lhu wrote:Não sei qual é o modelo de cor da minha imagem, uso vários tipos de imagens, inclusive imagens microscópicas. Estou usando o código abaixo e ele funcionou, mas queria que as cores ficassem mais nítidas para o usuário.


Lhu, por favor diga o que você quer fazer com as imagens. Em uma das primeiras mensagens você comenta que as suas imagens são em nívei de cinza e você quer aplicar LUTs - é para colorizar ou melhorar contraste? Se as imagens são sempre em nível de cinza você já sabe qual é o modelo de cor delas, certo? Ou você terá imagens em cores e cinza e quer melhorar contraste?

Veja que "cores mais nítidas para usuário" é bem relativo.

Diga exatamente o que você quer que eu posso sugerir um código que funcione em todas as ocasiões.

Rafael
[WWW] [ICQ]
LhuPJ
What is classpath?
[Avatar]

Membro desde: 13/07/2005 00:00:00
Mensagens: 9
Offline

Oi Rafael!
Na verdade isso vai ser aplicado em imagens em nível de cinza e coloridas. Quero deixar o usuário livre para escolher as cores que deseja utilizar na imagem. É isso que pretendo fazer.
Muito obrigada.
Lhu.
[WWW] [ICQ]
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team