Sobre Intro e Metodologia Histogramas Histogram Matching Thresholding Conclusão

Introdução

O sistema imunológico humano compreende diversos tipos de células que exercem as mais variadas funções de defesa do organismo. Dentre elas existem os macrófagos, os neutrófilos, os monocitos, os linfócitos T, os linfócitos B, entre outras. Neste trabalho, focou-se nas nas células B, devido à sua importância por fabricar anticorpos, proteínas que atuam como defensores do organismo ao interagir com os antígenos dos invasores. Essas células passam por diferenciação, assim, a interação entre o antígeno estimulador do linfócito e do anticorpo produzido é maior.

Porém, como funciona essa diferenciação? O corpo humano produz milhões de diferentes tipos de células B que apresentam um receptor de célula B (conhecido como BCR), responsável por fazer a ligação entre a membrana celular e a imunoglobulina. Este receptor encontra-se na superfície de cada célula. Após receber um sinal da célula T auxiliar, os leucócitos B podem se diferenciar em tipos distintos, como os plasmócitos e as células de memória B. Deste modo, a interpretação da estrutura celular dos mais diferentes tipos e relacioná-la com sua função específica é algo que a computação gráfica pode contribuir de forma significativa.

O primeiro passo é obter as imagens. Todavia, a forma natural de fotografar com a luz não é viável para objetos de estudo na ordem de tamanho das células ou vírus. Deste modo, precisa-se do uso da ferramenta microscópio eletrônico de transmissão, que emite um feixe de elétrons na direção de uma amostra fina e a interação entre os elétrons e a amostra é ampliada e focada em uma tela fluorescente ou detectada por algum sensor. A resolução da imagem é significantemente maior, pois o comprimento de onda é pequeno. Desta maneira, é extremamente eficiente para as células, que desejamos estudar.

Por fim, antes de qualquer análise minunciosa de algum banco de dados à procura de relações com outras áreas da biologia e matemática, como bioquímica, machine learning ou modelagem, necessita de uma limpeza de dados. Essa limpeza pode ser feita de várias maneiras, entretanto, a análise de histograma é considerada bastante relevante, para equalizar imagens e poder compará-las. Os histogramas de coloração proveem bastante informação sobre a imagem, como contraste e problemas de obtenção de imagem. Assim, o escopo do trabalho fica configurado.

Metodologia

Este trabalho foi desenvolvido através de estudos teóricos na bibliográfica e simulações computacionais. As referências estão todas citadas ao final do texto e vieram como agregador de conhecimento, quanto para referência de modelos já existentes. As simulações computacionais incluíram o banco de dados utilizado, que mostro abaixo, e a apresentação de resultados através de HTML. Para realizá-las, as linguagens de programação utilizadas foram Javascript, linguagem natural da Web, e Python, para programação em escala. Nesse site, todas as simulações de histograma são feitas em Javascript. Os resultados de histogramas são apresentados utilizando a bilbioteca do javascript Plotly.js, que é citada nas referências. Observo que o Javascript apresenta problemas de leitura. Ele processa algumas funções não na ordem especificada pelo código, e às vezes faz confusão com alguns histogramas, necessitando a atualização do site algumas vezes. Para isso, a necessidade de Python.

Banco de Dados utilizado

Foi utilizado um banco de imagens de domínio público, a fim de contribuir para a pesquisa na área de matemática e computação gráfica. Para encontrá-lo basta clicar no seguinte link: Clique aqui . Esse banco de imagens contém 122 imagens em tons de cinza com resolução \(1024 \times 1024\) e a intesidade de bits é 8. O formato das imagens é TIFF. Entretanto, esse formato não é lido nos principais navegadores de internet. Com essa problerma em vista, o primeiro processo que teve que ser feito foi o de converter as imagens do banco de dados para o formato PNG. Esse formato foi escolhido por sua flexibilidade quanto à escolha do browser e por ser de código aberto. Observei também, juntamente a professora Asla de Sá, que não ocorreria nenhum tipo de truncamento de imagem na conversão, visto que a intensidade de bits foi mantida.

Ilustração Matemática

Neste trabalho, também foi desenvolvida a ilusatração matemática dos algoritmos utilizados. Os dois algoritmos principais, que serão após desenvolvidos, são o Histogram Matching e o Thresholding. A ilustração matemática tem cada vez mais ganhado mais espaço com canais no youtube e representação das abstrações matemáticas. Um exemplo que vem se destacando por sua qualidade é o 3Blue1Brown.

Educadores destacam que a visualização de imagens auxiliam para a explicação de conceitos. Na matemática, área com nível alto de abstração, tem-se destaque para essa área. A programação entrou como grande apoio, visto que nem sempre um matemático tem habilidades artísticas. Deste modo, a computação gráfica entra como fator determinante para a qualidade da visualização.

Neste site, utilizo a ferramenta p5.js , uma versão do processing para javascript. Ele é extremamente acessível, inclusive para iniciantes na programação. Além de ser open-source e de fácil utilização, já que basta um editor de texto e um browser.