Você está na página 1de 8

Pgina 1

PROCESSOS
Acesso livre
Usando o software MATLAB com o
servidor Tomcat e
Plataforma Java para anlise de imagem
remoto em
patologia
Tomasz Markiewicz
1,2
A partir do 10 Congresso Europeu sobre
telepatologia e 4 Congresso Internacional
de Microscopia Virtual
Vilnius, Litunia. 1-3 julho 2010
resumo
Antecedentes: O software Matlab um de a
ferramenta de desenvolvimento mais
avanada para aplicao em engenharia
prtica. Do nosso ponto de vista o mais
importante a caixa de ferramentas de
processamento de imagem, oferecendo
muitos built-in
funes, incluindo a morfologia matemtica,
ea implementao de uma muitas redes
neurais artificiais como AI. isto
plataforma muito popular para a criao do
programa especializado para anlise de
imagens, tambm em patologia. Baseado no
verso mais recente do Matlab Builder Java
caixa de ferramentas, possvel criar o
software, servindo como um sistema remoto
para
anlise de imagem em patologia atravs de
uma comunicao internet. A plataforma de
internet pode ser realizado com base em
Java
Pginas Servlet com servidor Tomcat como
servlet container.
Mtodos: Em implementao de software
apresentado propomos anlise de imagem
remota realizada por algoritmos Matlab.
Esses algoritmos pode ser compilado para o
executvel arquivo jar com a ajuda de
Matlab Builder Java caixa de ferramentas. O
Matlab
funo deve ser declarada com o conjunto de
dados de entrada, estrutura de produo com
resultados numricos e Matlab web

figura. Qualquer funo preparados desta


maneira pode ser usado como uma funo de
Java em Java Servlet Pages (JSP). o
interface grfica de utilizador fornecendo os
dados de entrada e exibio dos resultados
(tambm em forma grfica) deve ser
implementado em JSP. Alm disso, o
armazenamento de dados na base de dados
pode ser executada de acordo com algoritmo
de escrita em
MATLAB com a ajuda de Matlab Toolbox
banco de dados diretamente com o
processamento de imagem. A pgina JSP
completa pode
ser executado por servidor Tomcat.
Resultados: A ferramenta proposta para
anlise de imagem remoto foi testada na
anlise computadorizada de imagens
mdicas
Software (CAMI), desenvolvido pelo
autor. O usurio fornece imagem e
informaes sobre o caso (diagnstico,
colorao, imagem
parmetro etc.). Quando a anlise
inicializada, os dados de entrada com
imagem so enviados para servlet no
Tomcat. Quando a anlise
feito, cliente obtm os resultados grficos
como uma imagem com clulas
reconhecidas marcados e tambm o
quantitativo
sada. Alm disso, os resultados so
guardados numa base de dados do
servidor. A plataforma de internet foi testado
em PC Intel Core2
Duo T9600 servidor RAM 4GB 2.8GHz
com 768x576 pixel tamanho, formato TIFF
1.28Mb imagens reffering de meningioma
tumor (x400, Ki-67 / MIB-1). O consumo de
tempo foi a seguinte: a anlise por CAMI,
localmente em um servidor - 3.5
segundos, na anlise remota - 26 segundos, a
partir do qual foram utilizados 22 segundos
para a transferncia de dados atravs da
Internet
conexo. Imagem em formato jpg (102 Kb)
o tempo de consumo foi reduzido para 14
segundos.

Concluses: Os resultados confirmaram que


projetou plataforma remota pode ser til
para a imagem patologia
anlise. O consumo de tempo dependia
principalmente do tamanho de imagem e
velocidade das conexes de internet. o
execuo apresentado pode ser usado para
muitos tipos de anlise na colorao
diferente, tecido, morfometria
Correspondncia: markiewt@iem.pw.edu.pl
Contribuiu igualmente
1
Instituto de Teoria da Engenharia Eltrica,
Medio e Informao
System, Warsaw University of Technology,
ul. Koszykowa 75, 00-662 Varsvia,
Polnia
Lista completa de informao sobre o autor
est disponvel no final do artigo
Markiewicz diagnstico de patologia
de 2011, 6 (Suppl 1): S18
http://www.diagnosticpathology.org/content/
6/S1/S18
2011 Markiewicz; licenciado BioMed
Central Ltd. Este um artigo de acesso
aberto distribudo sob os termos da Creative
Commons
Licena
Attribution (http://creativecommons.org/lice
nses/by/2.0), que permite uso irrestrito,
distribuio e reproduo em
qualquer meio, desde que a obra original,
devidamente citada.
Page 2

abordagens, etc. O problema significativo


a implementao da pgina JSP sob a forma
de multithread, que pode
ser usado paralelamente por muitos
usurios. A plataforma apresentada para
anlise de imagem na patologia pode ser
especialmente til
para pequeno laboratrio sem o seu prprio
sistema de anlise de imagem.
Antecedentes
A anlise de imagem em patologia um
muito amplo e ditpico focando os interesses ferentiated de
muitos pesquisadores

[1 -6]. As imagens microscpicas digitais


so em patologia
muito diferente, de acordo com o tipo de
tecido, a doena,
colorao usado, eo tipo de anlise
necessrios (por exemplo, quansentante, morfomtricas). Software
Matlab [7] um um dos
a ferramenta mais desenvolvida para
aplicao em engenharia
praticar e pode ser til neste tpico. Entre
muitos
diferentes aspectos tcnicos, suporta
processamento de imagem,
dando muitas funes internas,
especialmente direcionado para
morfologia matemtica e oferecendo
implementao
de muitas redes neurais artificiais, que
podem ser utilizados
em conjunto com o processamento de
reconhecimento morfolgica
das clulas. Graas a esses recursos, Matlab
uma popuplataforma lar para criao de programa
especializado para
anlise de imagens, tambm na
patologia [8].
Nos ltimos anos, a anlise computadorizada
de Medicina
Imagens de software (CAMI), escrito em
Matlab, foi
desenhado e desenvolvido por ns no
Instituto Militar
de Medicina, Varsvia, Polnia [9, 1 0]. Foi
utilizado em Sevprojetos de pesquisa eral como uma
ferramenta para quantitativa automtica
tiva e anlise de imagem morfomtricas. O
principal
direes de aplicao eram cncer de mama
(ER / PR
receptores), tumores do sistema nervoso
(neuroblasToma, meningioma, oligodendroglioma colorao Ki-67)
gstrica e inflamatria (cromogranina,
serotonina e

Os anticorpos da somatostatina). Os
resultados positivos da CAMI
aplicao nos inclinado a idia de construir a
plataforma internet
oferecendo o ambiente de trabalho remoto
para CAMI.
A ltima verso do Matlab oferece
ferramentas para automtica
construindo os arquivos executveis de
nossas funes projetadas
em cdigo Matlab usando linguagem
Java. Com a ajuda de
Matlab Builder Java toolbox [7], possvel
construir
arquivos jar executveis para uso pelo Java
Servlet Pages (JSP)
[11] no servidor www internet como um
servlet (exe- programa
cuted no servidor). No entanto exemplo de
aplicao (existente
na internet e apresentados no lado web do
Mathworks
[7]) restringir ao uso de Matlab para clculo
numrico
apenas, ou s vezes com visualizao
grfica, complemadamente, omitindo-se o problema de
anlise de imagens de apoio
manejado pelo usurio remoto. Apenas um
exemplo de software
(HDRExplorer [1 2]) com a anlise da
imagem
sequncia pode ser encontrado, mas este
sistema funciona somente com
os arquivos de dados armazenados no
servidor, no no usurio
estao remota. A anlise de imagem na
patologia exige
carregar a imagem para executar a
anlise. Nisso
papel a realizao prtica de processamento
de imagem em
patologia no uso de funes Matlab por JSP
e Tomcat
servidor [13] para apresentado.
Implementao
Neste estudo, o autor se prope a construir o
controle remoto

plataforma para anlise de imagem com base


na funo Matlab,
JSP e Tomcat servidor. Estas ferramentas
com adicional
banco de dados fornecer todas as funes
necessrias para realizar o
tarefa. Os requisitos bsicos dos programas
so to
segue:
Java Runtime Environment v. 6 ou superior
Tomcat 6.0.20 ou superior
Matlab 7.9 ou superior
Matlab Toolboxes: MATLAB Compiler v
4.11,.
MATLAB Construtor JA v. 2.0.4, caixa de
ferramentas de banco de dados v. 3.6
e Processamento de Imagens Toolbox v.
6.4.or superior.
O principal esquema da plataforma contendo
Tomcat
servidor como um recipiente de servlet do
sistema, o prprio servlet
escrito em linguagem JSP, Matlab e base de
dados prtantes na fig. 1. O utilizador remoto com a
ajuda de
web browser se conecta com o servidor do
sistema via internet. Qualquer explorador web, como o
Mozilla Firefox, Internet
Explorador etc, podem ser usados. O
servidor Tomcat uma disposio
der de servio de internet e funciona como
um continer de servlet.
A pgina web visto pelo usurio remoto
gerado
pelo aplicativo servlet escrito em linguagem
JSP. este
servlet percebe resposta e envia os dados a
partir da web
navegador, a conexo com Matlab
Biblioteca Runtime [7]
para a execuo de funes de anlise de
imagem. A armazenagem de qualquer
dados na base de dados controlado por
funes Matlab.
Esta base de dados pode estar situado no
sistema ou no servidor

um outro computador, conectado com, por


exemplo servidor via LAN.
Os resultados numricos e grficos de
anlise de imagem
so retornados de funes Matlab para a
aplicao
servlet e transmitida via internet para o
navegador web. Todos
ferramentas de plataforma de anlise de
imagem pode ser executado no sisTEM servidor e qualquer operao
executada nos dados
pode ser realizada neste computador. A
alternativa abordagem com base de dados
colocados no outro computador
conectada com, por exemplo servidor via
LAN tambm podem ser aplicadas.
O sistema remoto proposta requer o conjunto
de espeferramentas e mtodos para trabalho
eficiente na prtica fic
aplicao. A principal tarefa a resolver o
da realizao
o upload de imagem e retornar os resultados
por controle remoto
utilizador, funcionando como um dos
diversos utilizadores do sistema. o
mecanismos adequados para a realizao
desses recursos
da plataforma remota so implementadas por
JSP servlet.
O primeiro passo feito pelo usurio envie a
imagem
Markiewicz diagnstico de patologia
de 2011, 6 (Suppl 1): S18
http://www.diagnosticpathology.org/content/
6/S1/S18
Pgina 2 de 7
Pgina 3

para a anlise. O formulrio de


dados multipart / form-data
um dos mais comumente usado para enviar
arquivos via
De HTTP. Esta forma oferece possibilidade
de upload de imagens
arquivo para o cargo frame remoto. O
cdigo pode ser simples
como escrito

<form name = "PlatformName" action =


"System.jsp"
method = "post" ENCTYPE = "multipart /
form-data">.
O segundo passo enviar o pedido do
cliente para o
servidor. Esta ao requer a implementao
de aquisio
o arquivo de imagem e transmiti-lo via
internet para JSP
servlet. A interpretao dos dados podem ser
realizados
por funo Matlab. Para fazer essa
transmisso a
ficheiro de imagem deve ser lido a partir da
solicitao de vrias partes via byte
transmitir e usado como um parmetro para
a funo Matlab.
O cdigo de exemplo de arquivo de leitura
via fluxo como o fole
tmpfile = multipartRequest.getFile
("upload");
FileInputStream fis = new FileInputStream
(multipartRequest.getFile ("upload"));
databytes byte [] = new byte [fis.available
()];
int byteRead = 0;
int wsk = 1;
while (wsk> -1) {
byteRead = fis.read (databytes);
wsk = byteRead;
}.
A funo Matlab pode ser executado pelo
comando
Object [] resultado =
componentObject.function_name (
1, // sempre um - uma estrutura de matriz
databytes,
outros parmetros; ...).
retornando os resultados da execuo desta
funo em
um objeto de resultado. O function_name
um nome de Matlab
funo e componentObject o objeto criado
por
servlet, que contm funes Matlab como
mtodos de objeto.

O objeto de resultado pode conter quaisquer


dados numricos, tais
como nome de arquivo, tamanho e outros, e
tambm Matlab web-figura.
Esta figura web um tipo virtual de FiMatlab clssico
ure obtido no uso estacionrio de aplicao e
pode
ser colocado no cdigo HTML. Esta figuraweb est equipada
com zoom, rodar e mover botes, como
mostrado na Fig. 2.
Na soluo apresentada a anlise de imagem
remoto
realizada por diferentes algoritmos
Matlab. Estes algoritmos deve ser compilado para o
executvel arquivo jar com
a ajuda de Matlab Compiler e Matlab
Construtor JA
caixa de ferramentas. A funo Matlab deve
ser declarada com set
de dados de entrada e de sada que contm a
estrutura
resultados numricos e Matlab webfigura. Qualquer funo
preparado desta maneira pode ser usado
como uma funo de Java
em Java Servlet Pages (JSP). A interface
grfica do usurio
fornecendo os dados de entrada e exibio
dos resultados (tambm
em forma grfica) deve ser implementado
em JSP.
Figura 1 O principal esquema do sistema de
anlise de imagem remoto.
Markiewicz diagnstico de patologia
de 2011, 6 (Suppl 1): S18
http://www.diagnosticpathology.org/content/
6/S1/S18
Pgina 3 de 7
Page 4

O servlet JSP percebe o processo de fazer o


upload do
dados de entrada (dados de imagem e
descrio), transformandoos dados de HTML para funo Matlab (s) e
de volta para

html e fornecer quaisquer comandos


iniciados pelo usurio.
As funes Matlab deve ser compilado em
arquivo jar e
tambm adicionado ao sistema Tomcat
servlet.
O servlet JSP pode iniciar as funes
Matlab.
Estas funes so interpretados
por componentes Matlab
Tempo de execuo (MCR) Biblioteca que
deve ser instalado no
servidor do sistema. A segunda forma (mais
recomendado)
instalar o programa completo Matlab no
servidor. De fato
quaisquer funes Matlab compiladas em
arquivo jar so executados
pela biblioteca Matlab. A funo Matlab
projetado (s)
pode realizar processamento de imagem
usando qualquer imagem transformao
cantar caixa de ferramentas [7] ferramentas
e conexo com a base de dados
para o armazenamento da imagem (s) com a
ajuda da base de dados
caixa de ferramentas [7]. A base de dados
pode ser usado para o armazenamento do
Descrio de dados e os resultados, e
tambm para criar o
nico nome / nmero para o nmero arquivo
de imagem / case. isto
possvel tambm utilizar quaisquer outras
ferramentas Matlab teis,
tais como redes neurais como classificadores
ou estatstica
analisadores [7]. Na soluo apresentada
Matlab pode oferecer
muitas ferramentas sem necessidade de
implementar na outra
idioma para uso remoto.
O problema muito importante na
programao de um
plataforma remota para anlise de imagem
informatizada paralelo
ing. Os dados fornecidos pelo usurio devem
ser visveis
apenas pelo proprietrio e no por outros
usurios. A prtica

soluo deste requisito pode ser realizado


por Inicializando
ing as sesses. Quaisquer dados e imagem
enviados pelo
utilizador, bem como os resultados da
anlise de imagem deve ser
armazenados somente em uma sesso
especfica iniciado somente para este
do utilizador. A configurao e recebendo
dos atributos selecionados
pode ser realizado por exemplo o cdigo
session.setAttribute ("AttribureName",
"NovoValor")
session.getAttribute ("AttribureName").
Da mesma maneira que usamos Matlab webfigura. Para HTML
gerao de cdigo no servlet JSP pode usar o
comando
<wf: web-figura name = "myFigure" scope
= "sesso"
root = "WebFigures"> </ wf: web-figure>
onde parmetro escopo controla o processo
de obteno de
o web-figura a partir da sesso do usurio. O
esquema do
Figura 2 O exemplo da figura teia Matlab.
Markiewicz diagnstico de patologia
de 2011, 6 (Suppl 1): S18
http://www.diagnosticpathology.org/content/
6/S1/S18
Pgina 4 de 7
Page 5

computao paralela na plataforma remoto


prtantes na fig. 3.
O ltimo problema o de proporcionar a
sincronizao de
a ligao para a base de dados, quando
necessrio. este
caso aparece quando a sesso do usurio de
adicionar o novo
caso para o banco de dados, solicitando o
nmero exclusivo para
isto. Em qualquer momento, apenas um
canal de conexo pode ser
aberto e ainda ser fechado qualquer
operao deve ser
thread-safe usando o comando sincronizado.

Resultados
A ferramenta proposta para anlise de
imagem remoto foi
testado usando a anlise computadorizada de
Medicina
Imagens de software (CAMI), desenvolvido
pelo autor. o
usurio fornece imagem e caso a informao
(diagnstico,
colorao, parmetros da imagem, etc.) e
quando a anlise
inicializado, os dados de entrada e de
imagem so enviados para servlet
no Tomcat. Existem dois casos de ligao
com
servlet. O primeiro fornecido para upload
de imagem e
visto em Matlab web-figura. A segunda
para
upload da imagem (se no foi fazer upload
anteriormente), bem
como executar a anlise de imagem. Quando
a anlise feita,
cliente obtm os resultados sob a forma de
anotada
imagem com clulas reconhecidas marcados
e quantitativa
medidas. Alm disso, os resultados so
armazenados no servidor
banco de dados.
Um dos a questo prtica como armazenar
imagens
na base de dados. Na realizao CAMI o
arquivo de imagem
salvo no diretrio fixo no servidor. Quando a
imagem
carregado apenas para v-lo, a funo geMatlab
erados 10 dgitos nmero aleatrio usado
como um nome de arquivo e
retorna para a sesso do usurio. Quando a
anlise executado, o
funo de processamento de imagem recebe
este nome de imagem como bem
como dados de descrio caso. O programa
executa imagem
anlise e quando foi feito com sucesso o
caso ser

ser adicionado base de dados. A funo


inicia a
conexo com a base de dados, acrescenta
este novo caso
em conjunto com os resultados da anlise e
obtm o novo
etiqueta original para a imagem
processada. Subsequentemente,
a conexo for perdida, 10 dgitos nome do
arquivo de imagem
alterado para o novo nome exclusivo e,
finalmente, na Web
Resultados A Figura numricos e so
devolvidos ao adesesso do usurio caso disso. Depois de
terminar a anlise, o
servlet gera um cdigo HTML com os
resultados. Este cdigo
transmitidos para o navegador do usurio da
web e os resultados da
anlise de imagem so mostradas.
A plataforma de internet foi testado em PC
Intel Core2
Duo T9600 servidor RAM 4GB 2.8GHz
com 768x576
tamanho do pixel, 1.28Mb imagens em
formato TIFF com meningioma
tumor (x400, Ki-67 / MIB-1). O tempo de
consumo
foi como segue: para anlise por CAMI
localmente no servidor 3,5 segundos, para anlise remota - 26
segundos, o que
Figura 3 O esquema da computao paralela
na plataforma remota.
Markiewicz diagnstico de patologia
de 2011, 6 (Suppl 1): S18
http://www.diagnosticpathology.org/content/
6/S1/S18
Pgina 5 de 7
Page 6

abrange 22 segundos para transferncia de


dados via internet ligao
o. Imagem do formato jpg para (768x576
tamanho do pixel, 102 Kb)
o tempo de consumo foi reduzido para 14
segundos. o

sistema pode analisar qualquer formato de


imagem reconhecidos pelo
Funo Matlab imread. A velocidade de
conexo do usurio foi
2 Mb / s para download e 0,5 Mb / s para
upload.
Discusso
A anlise de imagem patolgico um um
dos possveis
direo especfica de processamento de
imagens mdicas. O conimagens siderada representar a diversidade
praticamente infinito
em relao aos tipos de um tecido ou do
mesmo modo tipos de inoxi- dvel
ing. Estas diferenas so a razo de
desenvolver muitas
mtodos e abordagens para a imagem
computadorizada
anlise.
Atualmente, podemos encontrar muitos
algoritmos e linguagens
utilizado para anlise das imagens. Um dos
mais
ferramentas avanadas de anlise de imagem
com Matlab
Caixa de ferramentas de processamento de
imagem. Este programa oferece muitos
realizando operaes funes muito teis,
formando o
ferramentas matemticas avanadas. Para os
cientistas envolvidos na
pesquisa de processamento de imagem
uma linguagem muito popular
permitindo a implementao e
desenvolvimento de muitos
avanado abordagens para a anlise de
imagens. No entanto, o
processamento de imagem remoto baseado
em funes Matlab via
Internet est ainda em fase inicial de
desenvolvimento. Um exemple de anlise de imagem por Matlab com o
web browser pode ser
encontrada no papel [12]. Infelizmente, este
exemplo
funciona apenas com os arquivos de imagem
armazenados no servidor, no com

as imagens fornecidas pelo usurio do


computador remoto.
Esta soluo no proporciona ferramentas
para o armazenamento de dados em dados
base e computao paralela.
Neste trabalho a abordagem baseada em
servidor Tomcat,
JSP servlet e ligao base de dados
directamente a partir de
a funo Matlab proposto. A realizaprtico
o desta abordagem exige encontrar muitas
chaves e
resoluo de alguns problemas para a prtica
e oferecendo
ferramenta til. A realizao apresentada
permite o upload
o arquivo de imagem do computador remoto
para Servlet e
Plataforma Matlab, a ligao para a base de
dados para dados
armazenamento e mecanismo de
computao paralela. Oferecer
a plataforma para muitos usurios em
conjunto, a sesso, como um
contentor de dados do utilizador, foi
aplicado.
A outra caracterstica significativa da
soluo proposta
que os processos de anlise de imagem e
os dados armazenados
no so visveis para usurios remotos. Isto
proporciona alta securdade do sistema proposto e torna o sistema
de escalabilidade
capaz. A base de dados pode ser escondido
no local LAN
rede e um nico processo de anlise de
imagem pode ser
tambm mudou-se para os outros
computadores / ncleos.
Concluses
Os resultados confirmaram que projetou
plataforma remota
formulrio pode ser til na anlise de
imagem patologia. o
plataforma fcil de ser implementado com
a ajuda de

Programas de Matlab e gratuitos, tais como


Java e Tomcat.
A base de dados pode tambm ser construda
usando qualquer outro populares
software por exemplo, Oracle, MS Access,
SQL, etc e executado em
o protocolo de ODBC em MS Windows.
O consumo de tempo depende
principalmente da imagem
tamanho e velocidade das conexes de
internet. O apresentadas
aplicao pode ser usado para muitos tipos
de anlise
(colorao diferente, tecido, abordagens
morfometria
etc). A questo importante a
implementao da
JSP pgina na forma de mltiplas sesses,
que pode ser usado parALLEL por muitos usurios. A plataforma
apresentada por imagem
anlise em patologia pode ser especialmente
til para ratrio
tory no ter nenhum sistema de anlise de
imagem.

Você também pode gostar