3.5 CIRCUITO ELETRÔNICO
3.5.1 Alimentação
Quando começamos a testar o circuito proposto no início do projeto nos deparamos com uma peculiaridade do regulador linear da família LM78XX, a diferença de potencial entre a entrada e a saída nele não pode ser muito elevada. Na verdade, o recomendado de
sua aplicação é que a diferença da tensão seja em média de 2V. Chegamos a esta conclusão depois de analisar o circuito com a ajuda de alguns professores do departamento da elétrica e assim nos foi indicado a utilização dos CI’s da família LM2575 que são chaveados e aceitam elevada diferença de potência na entrada.
Como o projeto é composto dos mais variados componentes, procuramos selecionar os modelos mais compatíveis entre si e foi possível encontrar componentes com faixas de tensão padrão, porém, não a mesma tensão para todos.
Sintetizando, a Raspberry Pi tem consumo especificado pelo fabricante de 5V e 700mA, já o conjunto motor e driver , 5V e até 500 mA e o circuito do cartucho consome micro-pulsos de 350 mA à 24V. Visto que precisaríamos configurar algo que suprisse os itens acima e também garantir a mobilidade do sistema, assim como a viabilidade de se projetar este produto para fornecer a alimentação primária, escolhemos uma fonte regulada de notebook compatível com DELL INSPIRON que fornece 19,3V e 3,3A para nossa placa de circuito impresso. O motivo de escolher uma fonte de notebook para realizar a alimentação geral é porque isto é algo que pode ser encontrado em qualquer ambiente aplicável ao Robô Plotter.
Sendo assim, planejamos um circuito que se divide em dois módulos, um de 5V/1A e o segundo de 24V/1A, como mostra a Figura 49.
Figura 49: Diagrama de blocos do circuito de alimentação Fonte: Felipe G. Rosa, 2015
Escolhemos o conversor DC/DC, pois, segundo o Professor MSc. Pedro Luiz Benko (2015) [27], apresenta um ótimo rendimento e melhor sinal de saída em relação ao regulador linear, além de admitir maior variação de potencial na entrada (Informação verbal)2.
Projetamos a placa de circuito impresso com a configuração básica do CI conversor abaixador ou conversor Buck de 5V, como representado pela Figura 50, e incluímos a distribuição do sinal de saída para a Raspberry Pi e os drives dos motores.
Figura 50: Configuração do circuito abaixador de tensão Fonte: [22]
Para o conversor aumentador de tensão, também conhecido como conversor Boost, foi comprado o circuito completo na PCI, pois acompanha um regulador de tensão (Figura 51) na saída, o que fornece a regulagem da energia enviada ao cartucho.
2 Informação verbal concedida por Professor MSc. Pedro Luiz Benko, no dia 02 de junho de 2015 em entrevista.
Figura 51: Regulador de tensão ajustável Fonte: [28]
Com os componentes selecionados e sabendo que a FEI possui uma máquina plotter LPKF Protomat S63 de confecção de placa de circuito impresso à disposição. Com o auxílio do software EAGLE, construímos o esquema elétrico e o layout para geração dos arquivos Gerber.
EAGLE é um dos softwares de desenvolvimento de placa de circuito impresso mais completos do mercado, de interação simples e vasta biblioteca de componentes, uma ótima ferramenta para grandes projetos. Arquivos Gerber são usados nas fresas de PCI dos fabricantes industriais, neles estão informações de coordenadas das trilhas furos e os demais processos para confecção da placa [29].
Neste programa as páginas de circuito e do layout trabalham de forma sincronizada para que a alteração de qualquer componente em um deles seja atualizada na outra. Na página de circuito definimos as conexões de cada componente, na de layout definimos a disposição deles com o encapsulamento real, trilhas, informações e tudo que há no produto final. Desta forma o software minimiza ao máximo as chances de erros e fornece dimensões em escala real para um melhor planejamento do projeto. O circuito esquemático e o layout, ambos gerados no software EAGLE, podem ser visualizados nas Figuras 52 e 53.
Figura 52: Circuito esquemático gerado no EAGLE Fonte: Felipe G. Rosa, 2015
Figura 53: Layout da PCI projetado no EAGLE Fonte: Felipe G. Rosa, 2015
A placa de circuito impresso é o método mais atual em questão de conexão entre componentes eletrônicos. Ela é composta por uma camada fina de cobre sobre uma placa de material isolante, no nosso caso, de fenolite [30].
Entre os dois tipos de montagem de componente na placa, por furo ou superfície, escolhemos a montagem por furo para melhor manipulação e testes do protótipo. A face das trilhas na camada de cobre e a placa de circuito impresso com componentes soldados, podem ser visualizados nas Figuras 54 e 55.
Figura 54: Face das trilhas na camada de cobre Fonte: Felipe G. Rosa, 2015
Figura 55: Placa de circuito impresso com componentes soldados Fonte: Felipe G. Rosa, 2015
Raspberry Pi é capaz de fornecer, o que pode ocasionar um funcionamento não adequado do circuito, bem como possíveis falhas de componentes da placa.
O motor de passo adquirido já vem com um driver compatível ao seu modelo e tensões de alimentação e é composto essencialmente de um ULN 2003 (Figura 56). Além disso, a conexão entre este circuito e a Raspberry Pi pode ser facilmente feita através de cabos fêmea-fêmea.
Figura 56: Circuito do motor com ULN 2003 Fonte: Davi A. Dal Fabbro, 2015
3.6 DESEMPENHO DA IMPRESSÃO
Para um cartucho de 12 bicos, podemos calcular quantas passadas o cartucho irá realizar através da seguinte fórmula:
𝑁𝑝 = 𝐻 ∗ 𝑑𝑝𝑖 25.4 ∗ 𝑛
Onde:
H: Altura da impressão (mm);
dpi: Resolução do cartucho (pontos/pol.);
n: Número de bicos.
Como o cartucho escolhido possui n = 12 e dpi = 96, o número de passadas que o cartucho precisa para completar a impressão depende exclusivamente da altura da impressão.
Por fim, uma das métricas para se quantificar o desempenho da impressão é pelo tempo gasto com ela. Este tempo pode ser calculado pela fórmula abaixo:
𝑇𝑖 =𝑁𝑝∗ 𝑡𝑝
60 [𝑚𝑖𝑛]
Onde:
𝑁𝑝: Número de passadas;
𝑡𝑝: Tempo de uma passada (s).
Figura 57: Montagem final do Robô Plotter Fonte: Davi A. Dal Fabbro, 2015
Figura 58: Vista Superior Fonte: Cainã G. Fernandes, 2015
Para testar os bicos, foi criada uma imagem com um texto simples. Na Figura 59, verificamos que não havia nenhum bico invertido, dispensando alterações na programação.
Figura 59: Primeiro teste com o cartucho Fonte: Davi A. Dal Fabbro, 2015
Ao ordenar para que o robô fizesse a impressão de uma imagem completa, comprovamos que o algoritmo utilizado para transformar a imagem para formato de impressão estava correto. A Figura 60 mostra em detalhe o cartucho realizando a impressão de uma imagem, já a Figura 61, mostra um comparativo entre a imagem original e o resultado obtido.
Figura 60: Detalhes do cartucho em operação Fonte: Davi A. Dal Fabbro, 2015
Figura 61: Comparativo entre imagem original e impressão Fonte: Davi A. Dal Fabbro, 2015
4.1 PROBLEMAS ENCONTRADOS
Quando iniciamos o nosso projeto tínhamos em mente projetar um robô o qual realizaria a captura de uma imagem e a partir desta fazer um processamento para prepara-la para impressão. A câmera que optamos, foi a própria câmera da Raspberry Pi, mencionada anteriormente. Nos testes durante o projeto percebemos que a câmera não produzia uma imagem apta a ser impressa pelo robô projetado, pois a resolução da imagem capturada pela câmera prejudicou a impressão da mesma. Por isso, optamos por descartar a câmera do nosso projeto. Vale ressaltar que esta seria a única câmera compatível para se utilizar na Raspberry Pi.
Outra dificuldade que tivemos foi a instalação do display touch screen de 2.8” da Robopeak. Seguindo os passos propostos pelo fabricante da câmera (Robopeak), deveríamos instalar no cartão de memória da Raspberry Pi um “prebuilt image system”
fornecido [35]. Com isto, o Kernel, responsável por realizar a interface entre o software e o hardware da Raspberry Pi, seria alterado. Realizando este procedimento percebemos que o Kernel teria sido corrompido. Tentamos ainda contatar o fabricante do display para relatar
o problema e encontrar uma outra solução para instalação da mesma. Uma outra tentativa que realizamos foi um tutorial fornecido em um fórum de eletrônicos [36]. Neste método, os comandos seriam realizados na própria Raspberry Pi para a instalação do display, ou seja, não seria necessária a instalação de um “prebuilt image system” no cartão de memória. Ao realizar esta segunda tentativa, obtivemos sucesso no funcionamento do display, no entanto, percebemos que para o funcionamento do display por este método, todos os GPIOs disponíveis foram sendo redirecionados para a porta USB para o funcionamento do display. Portanto, este método foi descartado já que se necessita de um número razoavelmente alto de GPIOs para o funcionamento do robô. No fim, a solução encontrada foi fornecida pelo próprio fabricante, que desenvolveu um novo Kernel específico para nossa situação.
Já na parte mecânica, a maior dificuldade foi garantir o alinhamento e estabilidade de todos os elementos. Como as rodas dentadas foram fabricadas em materiais de qualidade inferior, tivemos grande dificuldade em garantir uma engrenagem que fornecesse uma transmissão uniforme e controlada. As rodas também foram uma grande limitação, pois existiam momentos em que a movimentação ficava comprometida devido ao acoplamento entre as rodas e o eixo, contribuindo para a não uniformidade de movimentação e desalinhamento das passadas do cartucho.
Além disso, tivemos algumas dificuldades na seleção de alguns componentes eletrônicos pelo simples fato da falta de experiência com os mesmos. Na escolha do regulador de tensão não percebemos a limitação de potência. Para a especificação dos motores de passo, faltaram conhecimento e suporte técnico. Apesar de muita procura não encontramos professor nem vendedor que pudesse validar nossa decisão e por isso, o modelo escolhido não possuía a precisão que esperávamos, principalmente quanto à linearidade, pois percebemos que a relação de transmissão do motor escolhido era diferente para cada sentido de rotação (horário e anti-horário). Por fim, com o novo circuito de alimentação tivemos que importar o indutor de saída do conversor porque não foi encontrado produto no mercado brasileiro para suprir 1A.
conhecimentos de circuitos elétricos e eletrônica para desenvolver a energização do robô, programação e processamento digital de sinais foram úteis para formatar a imagem e transformá-la em sinal elétrico, elementos de máquinas juntamente com processos mecânicos de fabricação foram essenciais na elaboração da estrutura e do conjunto de movimentação dele.
Também comprovamos que é possível controlar um cartucho de impressora com a Raspberry Pi, que foi considerado ao longo do projeto como nosso maior desafio, pois nos comprometemos em utilizar a filosofia de arquitetura aberta, ou seja, todos os componentes do projeto foram escolhidos e montados explicitamente pelo próprio grupo. A aplicação desta filosofia foi muito importante para nós, pois mostramos de forma didática toda tecnologia envolvida em uma impressora e, por mais simples que este cartucho seja, este trabalho foi capaz de desenvolver e aplicar a teoria por trás destes dispositivos, possibilitando que futuros trabalhos sobre impressoras sejam desenvolvidos a partir deste.
A ideologia do Robô Plotter é oferecer independência ao usuário, considerando as dimensões do equipamento, custo, robustez e facilidade de aplicação. Mesmo que sem ter uma precisão satisfatória para aplicar no mercado, obtivemos sucesso com o resultado em relação à proposta, pois todos os pontos mencionados no início foram alcançados. Alguns ajustes finos tornam-se necessários para que este protótipo seja um produto realmente atrativo para consumo.
REFERÊNCIAS
[1] COPIGRAF. Tabela de preços. Bahia, 2015. Disponível em:
<http://www.copigraf.com.br/documents/27.html>. Acesso em: 13 abr. 2015.
[2] BMPINFOGEO. Preços de plotagem. [S.I.], 2015. Disponível em:
<http://www.bmpinfogeo.com.br/atuacao/plotagem.pdf> Acesso em: 13 abr. 2015.
[3] PLOTT SERVIÇOS. Tabela de preços. Ceará, 2015. Disponível em:
<http://plott.com.br/page_5.html>. Acesso em: 13 abr. 2015.
[4] COPYSERV. Tabela de preços. Rio Grande do Sul, 2015. Disponível em:
<http://www.copyserv.com.br/tpreco.php>. Acesso em: 13 abr. 2015.
[5] BUSCAPE. Plotters. São Paulo, 2015. Disponível em:
<http://www.buscape.com.br/impressora--plotter.html>. Acesso em: 13 de abril de 2015.
[6] LIMA, T. Raspberry Pi. Ituiutaba, 2014. Disponível em:
<http://www.embarcados.com.br/raspberry-pi/>. Acesso em: 03 mar. 2015.
[7] FILIPEFLOP COMPONENTES ELETRÔNICOS EIRELI. Primeiros passos com o Raspberry Pi. Florianópolis, 2014. Disponível em:
< http://blog.filipeflop.com/embarcados/tutorial-raspberry-pi-linux.html>. Acesso em: 03 mar. 2015.
[8] RASPBERRY PI FOUNDATION. Camera Module. Reino Unido, 2015. Disponível em:
<https://www.raspberrypi.org/documentation/usage/camera/README.md> Acesso em: 08 mar. 2015.
[9] OMNIVISION TECNOLOGIES, INC. OV5647 Datasheet. Santa Clara, CA, 2015.
Disponível em:
<http://pdf1.alldatasheet.com/datasheet-pdf/view/587045/OMNIVISION/OV5647.html>
Acesso em: 08 mar. 2015.
[10] SPARKFUN ELECTRONICS. Raspberry Pi Camera Module. Niwot, CO, 2015.
Disponível em:
<https://www.sparkfun.com/products/11868> Acesso em: 19 abr. 2015.
[11] DFROBOT. 2.8” USB TFT Touch Display Screen for Raspberry Pi. Shanghai, 2015. Disponível em:
<http://www.dfrobot.com/index.php?route=product/product&product_id=1062>. Acesso em: 19 abr. 2015.
[12] WOODFORD, C. Inkjet Printers. Reino Unido, 2015. Disponível em:
<http://www.explainthatstuff.com/inkjetprinters.html>. Acesso em: 23 fev. 2015.
[13] SUPPLIES OUTLET. Different Types of Inkjet Printing. Reno, NV, 2015.
Disponível em:
[16] GILLILAND, M., Inkjet Applications. Estados Unidos: Woodglen Press, 2005.
[17] ANNY STUDIO. The price of smooth looks: Anti-aliased fonts hurt eyes and damage eyesight. Australia, 2012. Disponível em:
<http://annystudio.com/misc/anti-aliased-fonts-hurt/>. Acesso em: 23 fev. 2015.
[18] HANNAN, P. et al. DIY Inkjet Printer. Universidade de Washington, 2011.
[19] LEYBA, R. The Last 25 Years and the Evolution of the Printer. Disponível em:
<http://ronleyba.com/the-last-25-years-and-the-evolution-of-the-printer/>. Acesso em: 23 fev. 2015.
[20] ERWAN’S BLOG. Arduino : use a shift register (74HC595) and a transistor array (ULN2803). França, 2015. Disponível em:
<http://labalec.fr/erwan/?p=1288>. Acesso em: 07 mar. 2015.
[21] Informação verbal concedida por Professor Dr. Flávio Tonidandel, no dia 08 de abril de 2015 em entrevista.
[22] NATIONAL SEMICONDUCTOR. LM2575T-5 Datasheet. Estados Unidos, 2015.
Disponível em:
< http://www.alldatasheet.com/datasheet-pdf/pdf/203235/NSC/LM2575.html>. Acesso em: 01 abr. 2015.
[23] WORLD OF ENGINEERING. Boost converter XL6009E1 Review XLSEMI Output Waveform. 2014. Disponível em:
<https://www.youtube.com/watch?v=d7oAMtjCWl0>. Acesso em: 02 de mai. 2015.
[24] KORNYLAK CORPORATION. Rotacaster: a revolution in motion. Hamilton, OH, 2015. Disponível em:
<http://www.kornylak.com/wheels/rotacaster.html>. Acesso em abr. 2015.
[25] ROBOT MESH. VEX 2.75" Omni Directional Wheel - Double Roller (2-pack).
Kirkland, WA, 2015. Disponível em:
<http://www.robotmesh.com/vex-robotics/wheels/vex-2-75-omni-wheel>. Acesso em 17 out. 2015.
[26] INK OASIS. Original HP C6602A Black Ink Cartridge. Lambertville, MI, 2015.
Disponível em:
<http://www.inkoasis.com/Original-HP-C6602A-Black-Ink-Cartridge.html>. Acesso em:
17 out. 2015.
[27]Informação verbal concedida por Professor MSc. Pedro Luiz Benko, no dia 02 de junho de 2015 em entrevista.
[28] LOJAARDUINO. Módulo. Santa Catarina 2015. Disponível
em:<http://www.lojaarduino.com.br/pd-d0337-regulador-de-tensao-xl6009e1-dc-dc-step- up-5v-35v-ajustavel-1005.html>. Acesso em: 28 abr. 2015.
[29] CAD SOFT. Learn more. Estados Unidos, 2015. Disponível em:
<http://www.cadsoftusa.com/>. Acesso em: 02 dez. 2015.
[30] 4PCB. The history of PCB. Estados Unidos. Disponível em:
<http://www.4pcb.com/pcb/>. Acesso em: 02 dez. 2015.
[31] CARVALHO, A. D. Aula 06: Processamento de Imagens. Centro Universitário da FEI, São Bernardo do Campo, 2015.
[32] THOMAZ, C. E. Aula 11: Visão Computacional. Centro Universitário da FEI, São Bernardo do Campo, 2015.
[33] BUENO, M. L. Detecção de Bordas através de Algoritmo Canny. [S.I.], 2015.
Disponível em: <http://www.inf.ufsc.br/~visao/2000/Bordas/>. Acesso em: 29 nov. 2015.
[34] SEARA, D. M. Algoritmos para detecção de bordas. Florianópolis, 1998.
Disponível em: <http://www.inf.ufsc.br/~visao/1998/seara/index.html#2.1>. Acesso em:
29 nov. 2015.
[35] ANGELO. Robopeak 2.8″ USB Touch Screen with Raspberry Pi. Shanghai, 2015.
Disponível em:
<http://www.dfrobot.com/index.php?route=DFblog/blog&id=60&search=2.8%22+USB+T ouch+screen&description=true>. Acesso em: 01 dez. 2015
[36] GADGETOID. DFRobot 2.8 USB TFT Pi 2 Raspbian Setup Guide (Advanced).
[S.I.], 2015. Disponível em:
<http://forums.pimoroni.com/t/dfrobot-2-8-usb-tft-pi-2-raspbian-setup-guide- advanced/594>. Acesso em: 01 dez. 2015
APÊNDICE A – Escalas de cores
Diferente do som que varia no tempo, uma imagem digital pode ser descrita como uma informação que varia no espaço. Esta imagem é composta por um conjunto de amostras que tem sua tonalidade e posição definidas numericamente. Estas amostras, conhecidas como pixels, quando colocadas suficientemente próximas umas das outras, formam uma imagem contínua quando vista pelos olhos humanos [31].
Desta forma podemos entender uma imagem como sendo uma matriz bidimensional com seus elementos representados por números que armazenam a indexação de uma cor.
A.1 ESCALA DE CINZA
Para representar uma tonalidade de cinza, precisamos apenas de 8 bits (1 byte) que são capazes de armazenar valores numéricos em um intervalo de 0 a 255. Portanto, uma imagem em escala de cinza terá seus valores numéricos variando neste intervalo, sendo que 0 representa o preto, 255 o branco e qualquer valor entre uma tonalidade de cinza.
A matriz G[9][9] representa uma imagem em escala de cinza com 9 pixels na horizontal e 9 pixels na vertical, totalizando 81 pixels, que é a resolução da imagem:
𝐺 =
[
𝑔11 𝑔12 𝑔13 𝑔14 𝑔15 𝑔16 𝑔17 𝑔18 𝑔19 𝑔21 𝑔22 𝑔23 𝑔24 𝑔25 𝑔26 𝑔27 𝑔28 𝑔29 𝑔31 𝑔32 𝑔33 𝑔34 𝑔35 𝑔36 𝑔37 𝑔38 𝑔39 𝑔41 𝑔42 𝑔43 𝑔44 𝑔45 𝑔46 𝑔47 𝑔48 𝑔49 𝑔51 𝑔52 𝑔53 𝑔54 𝑔55 𝑔56 𝑔57 𝑔58 𝑔59 𝑔61 𝑔62 𝑔63 𝑔64 𝑔65 𝑔66 𝑔67 𝑔68 𝑔69 𝑔71 𝑔72 𝑔73 𝑔74 𝑔75 𝑔76 𝑔77 𝑔78 𝑔79 𝑔81 𝑔82 𝑔83 𝑔84 𝑔85 𝑔86 𝑔87 𝑔88 𝑔89 𝑔91 𝑔92 𝑔93 𝑔94 𝑔95 𝑔96 𝑔97 𝑔98 𝑔99]
A.2 ESCALA RGB
Para representar cores além da escala de cinza, utiliza-se a escala RGB. Esta escala também utiliza 8 bits para representar a tonalidade da cor, mas ao invés de representar o cinza, esta escala representa as intensidades do vermelho, verde e azul; cores que juntas podem formar qualquer cor no monitor que seja perceptível pelo olho humano. Portanto, cada pixel na escala RGB tem 3 x 8 = 24 bits (3 bytes) de informação, pois agora o pixel irá variar de 0 a 255 tanto o vermelho quanto o verde e o azul.
[
[𝑟71 𝑔71 𝑏71] [𝑟72 𝑔72 𝑏72] [𝑟73 𝑔73 𝑏73] [𝑟74 𝑔74 𝑏74] [𝑟81 𝑔81 𝑏81] [𝑟82 𝑔82 𝑏82] [𝑟83 𝑔83 𝑏83] [𝑟84 𝑔84 𝑏84] [𝑟91 𝑔91 𝑏91] [𝑟92 𝑔92 𝑏92] [𝑟93 𝑔93 𝑏93] [𝑟94 𝑔94 𝑏94]]
Vale ressaltar que a escala de cinza continua acessível na escala RGB, para tanto, basta igualar o valor de vermelho, verde e azul. Por exemplo: [0,0,0] é o preto, [255,255,255] é o branco, [127,127,127] é o cinza, etc.
A.3 ESCALA BINÁRIA
Outra escala pouco convencional quando se trata de visualização de imagens é a escala binária. Esta escala geralmente é usada quando se deseja atribuir valores lógicos aos pixels das imagens para em seguida analisá-la e processá-la, que é justamente um dos objetivos deste trabalho. Da mesma forma que a escala de cinza, a escala binária também é indexada por um único valor numérico, porém ao invés do número ser de 8 bits, este número agora é apenas 1 bit (0 ou 1).
A partir de uma imagem em escala de cinza é bastante simples de transformá-la para binária, basta converter os valores originais para 0 ou 1. Geralmente utiliza-se um threshold que é o limiar entre o preto e o branco, ou seja, valores de pixels superiores ao threshold são convertidos para branco e valores inferiores para o preto.
Como nos formatos de imagens encontradas nos computadores (.BMP, .JPG, .PNG) não suportam a escala binária, para se enxergar estas alterações, é necessário que os valores sejam transformados para 0 e 255 ao invés de 0 e 1. Lembrando que para visualização de imagens a escala binária possui baixíssima qualidade, portanto, não é recomendada para estes fins.
APÊNDICE B – Algoritmo de detecção de borda
Existem alguns algoritmos que podem ser utilizados para detecção de borda em uma imagem. Entre eles estão: Roberts, Sobel, Robison, Canny, Maar-Hildreth. Estes métodos utilizam operadores de derivadas e suas devidas mascaras para a determinação das bordas.
B.1 OPERADORES DE DERIVADAS
É utilizado um operador que identifica as mudanças abruptas de intensidade dos pixels. Este operador pode ser o operador de derivada que tem exatamente esta função. Se analisarmos os valores de intensidade de uma imagem e encontrarmos os pontos onde a derivada é um ponto de máximo, encontraremos as bordas. Por isso, derivadas parciais são utilizadas em direções x e y, afinal, deve-se analisar as mudanças abruptas dos pixels em ambas as direções. O operador de gradiente é definido como sendo:
∇𝐴(𝑥, 𝑦) =𝜕𝐴
𝜕𝑥,𝜕𝐴
𝜕𝑦
B.2 MÁSCARAS DOS ALGORITMOS
Cada pixel e seus pixels vizinhos tem um valor multiplicado por uma constante. A soma destes valores representa a máscara de resposta do mesmo. Exemplo de uma máscara de resposta:
[𝑚1 𝑚2 𝑚3 𝑚4 𝑚5 𝑚6 𝑚7 𝑚8 𝑚9
] ∙ [
𝑝1 𝑝2 𝑝3 𝑝4 𝑝5 𝑝6 𝑝7 𝑝8 𝑝9]
𝑅 = ∑ 𝑚𝑖
9
𝑖=1
∙ 𝑝𝑖
Onde:
𝑚𝑖: valor para um pixel;
𝑝𝑖: valor do nível de cinza para o pixel;
R: máscara de resposta para o pixel central p5;
Um novo vetor é criado através desta máscara. O vetor conterá os valores de máscara de resposta ao invés dos pixels. Estes valores de máscara de respostas serão comparados com um threshold para determinar quais pixels serão considerados bordas.
Supondo um threshold de valor 10, analisemos o exemplo abaixo:
M=[−1 −1 −1
−1 8 −1
−1 −1 −1 ]
P= [2 2 2 2 4 2 2 2 2 ]
𝑚𝑖∙ 𝑝𝑖=[−2 −2 −2
−2 32 −2
−2 −2 −2 ]
R= [𝑋 𝑋 𝑋
𝑋 16 𝑋
𝑋 𝑋 𝑋
]
A soma de todos os pixels (na matriz de 𝑚𝑖 ∙ 𝑝𝑖) fornece um valor igual a 16 que é maior que o threshold de valor 10. Considera-se então o valor central como sendo um ponto de descontinuidade, ou seja, um pixel de borda.
Abaixo serão explicados dois tipos de Algoritmos de detecção de borda: Roberts e Sobel.