Artigo_Final

4

Click here to load reader

Transcript of Artigo_Final

Page 1: Artigo_Final

ANÁLISE DA VIABILIDADE DE UM SISTEMA DE PREVISÃO DE

COLHEITA DE COGUMELOS

João Martins

Universidade de Trás-os-Montes e Alto Douro

Quinta de Prados, 5000 Vila Real, Portugal

José Silva

Universidade de Trás-os-Montes e Alto Douro

Quinta de Prados, 5000 Vila Real, Portugal

ABSTRACT

With this study we aim to assess if we are able to detect

and measure mushrooms Agaricus bisporus using computer

vision on a previously taken picture in a controlled

environment with the help of an algorithm that runs in a

computer program so that in the future is possible to make

an automatic prediction of harvest and with this replace the

traditional way of prediction that is human based. The

results showed that indeed is possible to detect and measure

the mushrooms from a previously taken picture with a high

rate of success and that is relevant enough to proceed with

the development of a more complex software structure in

order to get more information.

Palavras-Chave

Cogumelos; Agaricus bisporus; Visão por computador;

Previsão de colheita; MatLab.

1. ESTADO DA ARTE

Após a uma pesquisa profunda das atividades já realizadas

no âmbito da previsão de colheita utilizando visão artificial,

descobrimos alguns exemplos enquadrados na produção

agrícola, como o da empresa Vision Studio [1] e da

Advanced Mushroom Research Corporation (AMR) [2].

A primeira oferece soluções baseadas em visão artificial,

uma delas enquadra-se na área da agricultura, a Agro

Vision. A solução Agro Vision consiste num sistema

preditivo que é capaz de “estimar o potencial frutícola de

uma forma não destrutiva, rápida, objetiva e confiável”. O

sistema destaca-se por através de um smartphone, tablet,

drone ou câmara em tripé, um utilizador tirar uma

fotografia. De seguida, essa fotografia é enviada para os

servidores da empresa que por sua vez têm um sistema que

analisa a imagem e distingue folhagem de fruto, permitindo

contar, medir e construir um mapa espacial com rigor

vegetativo. Após este tratamento são gerados relatórios que

oferecem um erro de previsão inferior a 5%. Os exemplos

que são demonstrados enquadram-se na colheita da

azeitona e na cultura de vide.

Por outro lado, a AMR é um exemplo claro que este projeto

é possível. Como o nome indica, está ligado diretamente

aos cogumelos e oferece uma solução de colheita

inteligente de cogumelos chamada AMR Smart Harvest.

Através da recolha de fotografias com alta resolução ao

tabuleiro onde os cogumelos se encontram, é possível

detetá-los, medi-los, estudar a textura e até a perceber a sua

cor. Depois, através da comparação da fotografia da atual

com uma anterior, é possível determinar o crescimento de

cada cogumelo e registá-lo. Para além disto o sistema

implementado pela AMR inclui um sistema de apoio à

colheita através da utilização de um projeto por cima do

tabuleiro de modo a projetar uma luz por cima dos

cogumelos que estão em condições de ser colhidos.

Infelizmente, em nenhum destes exemplos são

grandemente desmitificados os componentes de software e

hardware utilizados.

Page 2: Artigo_Final

2. CASO DE ESTUDO

2.1 Método

Para testarmos a viabilidade do nosso estudo decidimos que

a melhor estratégia seria, começar a testar um algoritmo

numa imagem com boa definição e pouco ruído, seguindo

depois a experiência nas imagens obtidas diretamente dos

tabuleiros onde estavam a ser desenvolvidos os cogumelos.

Consequentemente conseguiremos determinar o centro de

cada cogumelo e saber qual a área do mesmo, permitindo

assim calcular no futuro o número de cogumelos por

tamanho. Os testes foram realizados em MatLab, versão

2015, escolhido com influência da sugestão do professor

António Sousa, docente de unidade curricular

“Processamento de Imagem”. O método adotado tratou-se

de uma tentativa de diminuir ao máximo as nossas

limitações em processamento de imagem, pois este tema

não é abordado na Licenciatura em Tecnologias da

Informação e Comunicação, a nossa formação de base.

Desta forma tanto o método utilizado como o software

foram bastante importantes para o resultado final do estudo.

2.2 Atividades

O respetivo estudo foi além de um teste em Matlab, pois

tudo começou com uma visita às instalações da empresa

SousaCamp Cogumelos – Varanda de Sousa, SA. que nos

possibilitou não só retirar fotografias num contexto real,

como também perceber as fases de desenvolvimento do

cogumelo. Logo no momento da visita percebemos que o

composto onde os cogumelos de desenvolviam continham

muito “ruído” que iria complicar um pouco a deteção dos

cogumelos a partir de uma fotografia, pois continha

imensos pontos brancos que não deveriam ser

contabilizados, mas que poderiam vir a ser confundidos

com cogumelos pequenos. O outro problema detetado foi a

realização clusters com vários cogumelos que poderiam

tornar mais difícil a deteção e calculo com precisão do

tamanho dos cogumelos. Neste sentido e devido à fácil

inicial deste projeto, obter imagens com qualidade e com o

menor “ruido” possível para possibilitar testar o nosso

algoritmo. Sendo assim podemos dividir o a nossa

atividade em duas fases, a 1ª Teste em fotografia em

contexto diferente e a 2ª Teste em contexto real.

Azul – “Ruído”, podem induzir em erro.

Vermelho – Cluster de cogumelos.

Atividades:

1ª Teste em fotografia em contexto diferente:

- Obter uma fotografia para realizar o teste com o nosso

algoritmo;

- Verificar a percentagem de assertividade do nosso teste.

2ª Teste em contexto real:

- Obter as fotografias em contexto real de desenvolvimento

do cogumelo;

- Verificar a percentagem de assertividade do nosso teste;

- Comparar os resultados.

2.3 Equipamento

O teste realizado foi efetuado em Matlab versão R2015b,

que se trata de um software trata-se de

um software interativo de alta performance voltado para

o cálculo numérico. Contém um ambiente intuitivo e de

fácil adaptação, permitindo-nos uma a adaptação mais

rápida. Computador usado trata-se de um HP i7 modelo 15-

n005sp. Assim como as fotografias testadas foram obtidas

com o smartphone Wiko Highway 4G.

Page 3: Artigo_Final

2.4 Procedimento

Inicialmente procuramos uma imagem cujo fundo tivesse

um bom contraste de forma a ser mais simples o teste do

algoritmo. A imagem escolhida foi uma com base branca e

que continha oito moedas de vários tamanhos, inicialmente

fizemos a leitura da imagem para duas variáveis:

Img = imread('moedas.jpg');

Img2 = imread('moedas.jpg');

Transformamos a imagem em preto e branco,

possibilitando assim um processamento mais rápido da

imagem:

Img=im2bw(Img(:,:,1));

Definimos os raios através de um mínimo e de um máximo:

Rmin=24;

Rmax=150;

Após a definiçãos dos raios utilizamos o seguinte

algoritmos para detetar as moedas existentes na imagem e

os respetivos raios:

[centersDark, radiiDark] = imfindcircles(Img, [Rmin

Rmax], ...

'ObjectPolarity','bright','sensitivity',0.90)

Por fim través do seguinte algoritmo apresentamos a

imagem com as respetivas moedas sinalizadas com uma

linha vermelha e tracejada, tanto a imagem tratada, como a

imagem original:

imagesc(Img2);

hold on

viscircles(centersDark, radiiDark,'LineStyle','--');

hold off

figure;

imshow(Img);

hold on

viscircles(centersDark, radiiDark,'LineStyle','--');

hold off

Por fim para além de sinalizar os círculos, também localiza

o centro e determina o raio de cada um deles.

2.5 Resultados e discussões

Durante a primeira atividade conseguimos detetar as oito

moedas com uma margem de erro muito baixa no que toca

aos limites selecionada em comparação com a imagem,

conforme o exemplo da seguinte imagem:

Raio e Centro

Raio Centro

35.2192 248.4099 156.4326

36.7052 247.6047 47.4388

35.9138 48.8135 48.8798

36.7223 49.8992 156.1268

37.5660 146.9177 154.0864

35.9161 349.9602 48.4480

34.9817 146.7736 50.9326

34.7734 347.9710 156.6924

2ª Atividade, visava fazer o mesmo teste que na 1ª

atividade, no entanto usando a foto obtida em contexto real,

cujo objetivo foi atingido com sucesso e pouca margem de

erro. Detetando 37 cogumelos de cerca de 40, conforme se

pode ver nas seguintes imagens:

Page 4: Artigo_Final

Raio Centro

35.6396 749.3630 307.8084

32.6655 497.0558 368.2409

32.2357 244.9291 508.4397

30.7410 474.9671 285.5713

36.5738 335.4763 487.4612

26.6115 931.4045 294.4523

32.2426 675.4072 239.5111

27.4107 56.0154 197.8444

27.3941 31.5785 128.3876

38.6007 100.7329 449.7635

28.9975 147.9469 220.2418

39.1136 825.6639 291.6202

29.6741 218.2955 455.5123

38.6390 76.2751 260.4056

25.8361 314.2759 258.9060

53.9493 323.4029 392.8069

38.7597 861.3708 223.5481

34.4793 427.0321 474.9057

29.6812 599.6341 125.4669

31.4017 715.5240 29.7539

47.1700 856.7919 434.3452

33.3477 176.6492 537.5535

41.4540 938.4122 222.8908

26.0407 381.2778 450.1338

55.6399 498.9833 526.0887

27.0313 44.5873 420.8223

24.9000 477.9612 181.8717

25.7252 243.3631 437.5913

26.3653 317.5711 28.1444

58.1281 225.3252 380.0511

30.9546 373.6801 39.6636

31.0421 621.3361 355.2093

31.1085 828.9020 427.6795

55.8138 789.2203 513.8321

56.5624 888.5032 43.4585

27.8007 706.5453 193.1654

35.9568 708.1503 511.6650

Após a obtenção dos resultados, verificamos que o mesmo

algoritmo utilizado nas moedas poderá ser usado também

com as fotos dos cogumelos obtidas em contexto real.

Verificando-se uma margem de erro muito reduzida.

Podemos notar que os cogumelos da extremidade da

fotografia não são detetados, mas o que não se verifica um

problema na medida em que se isso acontece os mesmos

cogumelos iriam ser contabilizados mais do que uma vez,

para isso bastava que na outra fotografia contivesse a parte

que falta dos cogumelos avaliados na fotografia. Mesmo

assim nota-se que existem cerca de 3 ou 4 cogumelos muito

pequenos que não são detetados o que poderá ser aferido

num estudo futuro, mesmo assim tratam-se de tamanhos

precoces e que só serão colhidos numa fase mais evoluída e

que aí sim o algoritmo já irá fazer a deteção devido ao seu

tamanho maior.

Relativamente aos centros e raios será muito importante na

obtenção de informação, como peso em quilogramas de

cogumelos, número de cogumelos por tamanho e fazer

previsões baseadas no processo de evolutivo do cogumelo

por espécie.

3. CONCLUSÃO E TRABALHO FUTURO

Concluímos que é possível detetar cogumelos através de

uma foto e com isto fazer uma coleta de dados relativo, ao

centro, raio e estimar a área de cogumelos por imagem.

Desta forma conseguiremos num futuro próximo recolher

informações que nos ofereçam a possibilidade de prever

quantidades de colheita em determinada data, baseada no

processo evolutivo do cogumelo. Mesmo assim poderá ser

possível desenvolver mais o algoritmo e desta forma

diminuir a margem de erro que o presente estudo ainda

tem. Diminuindo a margem de erro, aumentamos a

qualidade da análise e no futuro as previsões de colheita

serão mais eficazes.

Durante o estudo apontaria como principal limitação da

nossa parte, a falta de conhecimentos em matéria de

processamento de imagem, se tal existisse achamos que o

estudo poderia ter-se desenvolvido de uma forma mais

rápida e consequentemente seriam atingidos outros

objetivos. Mesmo assim julgamos que o resultado é

positivo e o estudo pode ser considerado de sucesso,

abrindo portas para ser desenvolvido num futuro próximo.

4. REFERÊNCIAS

[1] Website da Vision Studio . Disponível em:

http://www.visionstudio.com.ar/index.html

[Acedido em 15 março 2016].

[2] Website da Advanced Mushroom Research Corporation

Disponível em:

http://www.advancedmushroomresearch.com/

[Acedido em 20 março 2016]

[3] Detect Circles in Images Using MATLAB

Disponível em:

http://www.theengineeringprojects.com/2015/11/detect-

circles-images-using-matlab.html

[Acedido em 20 maio 2016]