A eficiência de codificação do código 8421 é alta, a dificuldade de identificação é baixa, e cada vez mais fabricantes de transportadores de PCB utilizam o código 8421 em vez de códigos bidimensionais para rastreamento de informações.
Partilhar1). Fundo do projeto:
Requisitos de detecção:
Os produtos são divididos em códigos de 9 e 10. Os produtos capturam materiais dinâmicos e aleatórios ao entrar por meio de copos de sucção. A solução precisa se adaptar aos dois produtos e os resultados da saída dentro de 500ms são enviados via TCP para coexistir. (O objeto testado é a placa de material PCB perfurado capturada pelo copo de sucção na figura abaixo, que é identificada iluminando o fundo retroiluminado).
Pontos dolorosos e problemas:
Haverá inversão de imagem horizontal aleatória sem marca e sinal, e haverá deformação de código, desfoque de imagem, adesão de imagem dos buracos de código e tamanhos diferentes de buracos de código ocasionalmente. Condições de imagem complexas dificultam a identificação estável do algoritmo de leitura de bits de marca de correspondência convencional.
2). Arquitetura da solução:
Diagrama da solução:
Descrição da ideia da solução:
1. A posição do buraco nos jardas 8421 é identificada por correspondência de contornos
2. Use o módulo de script para identificar o espelho XY do código 8421 através do bit de bandeira do código 8421 e do bit de bandeira de coluna e obtenha os quatro vértices do quadrilátero externo do código 8421
3. Use a transformação perspectiva do OpenCV para corrigir e reparar o código 8421 deformado (a figura a seguir é o efeito da transformação perspectiva) para facilitar a decodificação subsequente do código 8421.
3). Vantagens do programa:
1. O algoritmo da solução leva cerca de 200ms e pode se adaptar a situações complexas como deformação de código, ambiguidade de imagem, adesão de imagem de buracos de código e diferentes tamanhos de buracos de código.
2. cada máquina pode reconhecer cerca de 1000 placas por dia, e a taxa de reconhecimento dos códigos 8421 atinge 100% após o ajuste.
3. Nenhum módulo de deep learning é usado para reduzir custos.
4. pode ser reutilizado para atender às necessidades de identificação de códigos 8421 na indústria de PCB.