Essas duas ferramentas s˜ao utilizadas na aplica¸c˜ao da vis˜ao computacional proporci-onando a segmenta¸c˜ao dos alimentos e est˜ao instaladas no computador destinado como servidor. Apesar da aplica¸c˜ao principal trabalhar com sistema m´oveis e ser apta a re-alizar a segmenta¸c˜ao no pr´oprio aparelho, optou-se em desenvolver um m´odulo em um servidor externo para priorizar o ganho de performance que ´e exigida pela segmenta¸c˜ao, mesmo tendo a ciˆencia que atualmente os aparelhos de celular possuem um grande po-der de processamento, algumas vezes maior que um computador residencial. Al´em disso, devemos considerar o processamento de imagens coloridas que na ´ultima d´ecada obteve um crescimento elevado devido ao custo/benef´ıcio se tornando mais acess´ıvel a popula¸c˜ao mundial.
Segundo PyBrasil (1993), a linguagem de programa¸c˜ao interpretada Python ´e orien-tada a objetos, apresenta semˆantica dinˆamica e o tratamento com vari´aveis e vetores ´e diferenciado de outras linguagens de programa¸c˜ao, garantindo maior rapidez para o trata-mento das fun¸c˜oes desejadas. Apresenta duas vers˜oes: a vers˜ao 2.7, que n˜ao recebe mais atualiza¸c˜ao, no entanto ´e a que apresenta a maior estabilidade dentre todos os sistemas operacionais, e a vers˜ao 3.5, que, relacionada diretamente com esse trabalho, vem sendo trabalhada para obter o desempenho similar em todos os sistemas operacionais.
O Opencv ´e uma biblioteca que auxilia no tratamento de imagens e v´ıdeo. Inici-almente, foi desenvolvido pela empresa Intel Corporation, e, atualmente na vers˜ao 3.0, possui cerca de 500 fun¸c˜oes para as linguagens de programa¸c˜ao C++, Python e Java, podendo ser instalada em sistemas operacionais como o Microsoft Windows, Linux e OS X, conforme afirma Intel (1992).
4 O SISTEMA SACANA
O Sistema de Apoio ao Controle Alimentar e Nutricional Autom´atico (SACANA) tem o objetivo auxiliar no controle nutricional de pacientes com disfun¸c˜ao alimentar. O caso de uso ´e direcionado ao controle de pacientes com diabetes e sua sustenta¸c˜ao cient´ıfica est´a fundamentada em 4 t´ecnicas :
A) inteligˆencia artificial utilizada para indicar o risco da Hiper ou Hipoglicemia com o consumo de determinado alimento;
B) vis˜ao computacional aplicado para encontrar alimentos a partir de uma fotografia ; C) l´ogica fuzzy exercido para avaliar os conceitos n˜ao quantific´aveis como Hipo e
Hi-perglicemia;
D) desenvolvimento de aplicativos m´oveis aplicado devido a importˆancia do celular no dia a dia das pessoas;
O modelo de software sugerido est´a descrito na Figura 9 e torna vis´ıvel a integra¸c˜ao entre os agentes externos, servidor web e aplicativo m´ovel.
30
1. Cadastro de Avaliac¸˜ao
O cadastro de avalia¸c˜ao ´e um m´odulo n˜ao obrigat´orio no sistema. No entanto pode ser utilizado como fun¸c˜ao para cadastrar o paciente com suas principais ca-racter´ısticas f´ısicas, estilo de vida e hist´orico de doen¸cas.
2. Cadastro de Restric¸ ˜oes Alimentares
Assim como o m´odulo anterior, n˜ao ´e obrigat´orio no sistema, por´em quanto ao uso,
´
e submetido em registrar quais os limites de cada composto alimentar.
3. Convers˜ao de Dados
A partir da utiliza¸c˜ao de softwares adjacentes, esse m´odulo tem como objetivo atu-alizar e converter a tabela de alimentos em uma estrutura para troca de dados entre o aplicativo e servidor. Logo o resultado exposto ´e a tabela de alimentos no formato do Microsoft Excel em Nota¸c˜ao de Objetos (JSON).
4. Aplicativo
Sendo uma das principais fun¸c˜oes do sistema juntamente com o servidor WEB, ´e um aplicativo m´ovel cujas funcionalidades podem ser descritas como:
(i) Cadastro - fun¸c˜ao de identificar o utilizador do sistema;
(ii) Situa¸c˜ao tual - aplicada `a paciente que realiza medi¸c˜oes tempor´arias na indi-cativa do cen´ario atual. No caso de uso proposto, ´e aplicado para indicar o
´ındice glicˆemico do paciente;
(iii) Medica¸c˜ao - possibilita ajustar, a partir de uma medica¸c˜ao espec´ıfica o ´ındice do paciente;
(iv) Refei¸c˜ao - esse m´odulo viabiliza a inser¸c˜ao do alimento a ser ingerido atrav´es da sele¸c˜ao manual, c´odigo de barras ou por fotografia;
(v) Educativo - apresenta v´ıdeos did´aticos relacionados com a disfun¸c˜ao alimentar indicada pelo paciente.
Al´em das fun¸c˜oes apresentadas, o aplicativo apresenta o sistema de alerta na qual indica atrav´es de vibra¸c˜ao e beeps quando o ´ındice torna-se pr´oximo a zero.
5. Servidor WEB
O servidor web est´a designado a execu¸c˜ao da vis˜ao computacional atrav´es da seg-menta¸c˜ao de imagem, que recebe a fotografia do aplicativo m´ovel, , efetua os ajustes de tamanho e cor, busca por semelhan¸ca as imagens segmentadas na base de da-dos da tabela de alimenta¸c˜ao preestabelecida. Por fim, ao encontrar o alimento, o servidor retorna ao aplicativo m´ovel, todos os compostos da refei¸c˜ao.
6. Rede Social
Essa fun¸c˜ao ´e optativa, sendo que sua finalidade ´e o compartilhamento das in-forma¸c˜oes em m´ıdias sociais.
4.1 REQUISITOS DO SISTEMA
Para que o servidor web funcione de forma a segmentar a imagens do prato de ali-menta¸c˜ao corretamente, os softwares abaixo s˜ao necess´arios:
A) Numpy em sua vers˜ao 1.10 que ´e um conjunto de opera¸c˜oes que permite trabalhar com vetores e matrizes N dimens˜oes ;
B) a linguagem de programa¸c˜ao Python na vers˜ao 3.5;
C) a linguagem de programa¸c˜ao PHP vers˜ao superior a 5.0;
D) conjunto de algoritmos denominado Imageclick ;
No caso da instala¸c˜ao do aplicativo m´ovel os requisitos sugeridos s˜ao:
Sistemas Operacionais como Android, BlackBerry, Firefox OS, iOS, Symbian, Ubuntu Touch, webOS, Windows Phone, Windows 8.
Navegadores como Internet Explorer na vers˜ao 8.0 ou superior, Firefox 8.0 ou superior, Safari na vers˜ao 3.5 ou superior,Chrome na vers˜ao 4.0 ou superior, Opera na vers˜ao 10.5.
Caso a escolha de alimentos seja realizada por cˆameras, ´e necess´ario que o aparelho m´ovel possua cˆamera com resolu¸c˜ao m´ınima de 5.0mp.