Tesseract OCR + ASP.NET Core
Publicado em: terça-feira, 5 de maio de 2020

Esse projeto nasceu de uma iniciativa de combate a SPAM. Spammers no telegram usam novas táticas todos os dias e corrida de gato-e-rato nos faz usar tecnologia para sanar e bloquear as iniciativas desses spammers.

Eu particularmente sou extremamente ativo no telegram, e lidero alguns vários grupos. Nesses grupos temos problemas com SPAM. São em geral bots que querem falar dos mesmos assuntos: Bitcoin, Ethereum, Elon Musk… enfim SPAM. Poderia ser dinheiro grátis, mas em um grupo de tecnologia, é bobagem por estar fora do contexto do grupo.

Nessa corrida contra a nova tática, descobrimos palavras-chave a serem bloqueadas. URL’s, e muito mais. Agora eles estão usando novas táticas e nós precisamos reagir. Agora a moda é enviar imagens e links do Youtube. E é sobre imagens que vamos falar hoje.

Tesseract

Tesseract é um software de reconhecimento ótico de caracteres de código aberto (Licença Apache 2.0)[1], originalmente desenvolvido pela Hewlett-Packard e foi por um tempo mantido pelo Google; atualmente o projeto está hospedado no GitHub (fonte Wikipedia).

API .NET Core

Tesseract é utilizado via linha de comando. Você envia 2 parâmetros: O path de uma imagem e um path de output e ele faz a mágica dele.

Nós precisávamos transformar em uma Web API. Isso é útil para poder reaproveitar essa API em outros contextos.

Docker

A mágica dos containers faz com que só precisemos de 1 linha de código para instalar o binário em nossa imagem. Uma vez feito isso, estamos prontos para realizar sua chamada via linha de comando (dinamicamente pela aplicação web).

Antes

...
EXPOSE 80


FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster AS build
WORKDIR /src
...

Depois

...
EXPOSE 80
RUN apt update && apt install tesseract-ocr libtesseract-dev -y

FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster AS build
WORKDIR /src
...

https://github.com/luizcarlosfaria/OcrApi/blob/master/TesseractApi/Dockerfile#L6

O primeiro passo foi avaliar a forma de uso. Depois entender como instalar. E fiz isso em um container, live. Ao lado do que estava fazendo, fui criando o DockerFile do projeto. Uma vez ok, comecei a colocar uma API por cima e assim começamos a testar integrado ao telegram.

Embora não tenha tido muito sucesso na tarefa de lidar com o evento de envio de foto com nodered,. Subi um outro projeto de bot que estou criando e demos vida com ele. Ficou muito legal.

Confira o projeto no github https://github.com/luizcarlosfaria/OcrApi

Conclusão

Não precisa ser extremamente complexo.

Não precisa ser extremamente sofisticado.

As vezes o simples e óbvio é o caminho mais eficiente e eficaz.

Docker ajuda pois estamos falando de binários específicos, que podemos empacotar junto com nossas aplicações. A próxima demanda é obter os metadados do youtube.

Lives

Todo esse rolê foi narrado em 2 lives no mesmo dia. Eu precisei interromper a live por conta da aula da turma do Docker Definitivo.

Luiz Carlos Faria

Mensagem do Autor

Espero que goste desse post. Não deixe de comentar e falar o que achou. 

Se acha que esse post pode ajudar alguém que você conheça, compartilhe!

 

Eventos passados

outubro 2020
setembro 2020
agosto 2020
Nenhum evento encontrado!
Carregar Mais

Publicidade

Assine

0 comentários

Trackbacks/Pingbacks

  1. Azure Functions + Containers (Parte 1/2) | | gaGO.io - […] que essa function seja um OCR, Tesseract talvez, que tal? Como vimos no post Tesseract OCR + ASP.NET Core…

Enviar um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

Próximos Eventos Próximo
22 outubro 2020
  • 00

    dias

  • 00

    horas

  • 00

    minutos

  • 00

    segundos

Lives

Fique de olho nas lives

Fique de olho nas lives no meu canal do Youtube, no Canal .NET e nos Grupos do Facebook e Instagram.

Aceleradores

Existem diversas formas de viabilizar o suporte ao teu projeto. Seja com os treinamentos, consultoria, mentorias em grupo.

Agenda & Eventos

setembro

outubro 2020

novembro
DOM
SEG
TER
QUA
QUI
SEX
SAB
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
Events for 30th setembro
Events for 1st outubro
Events for 2nd outubro
Sem Eventos
Events for 3rd outubro
Sem Eventos
Events for 4th outubro
Sem Eventos
Events for 5th outubro
Sem Eventos
Events for 6th outubro
Sem Eventos
Events for 7th outubro
Sem Eventos
Events for 8th outubro
Sem Eventos
Events for 9th outubro
Sem Eventos
Events for 10th outubro
Sem Eventos
Events for 11th outubro
Sem Eventos
Events for 12th outubro
Sem Eventos
Events for 13th outubro
Sem Eventos
Events for 14th outubro
Sem Eventos
Events for 15th outubro
Sem Eventos
Events for 16th outubro
Sem Eventos
Events for 17th outubro
Sem Eventos
Events for 18th outubro
Sem Eventos
Events for 19th outubro
Sem Eventos
Events for 20th outubro
Sem Eventos
Events for 21st outubro
Sem Eventos
Events for 22nd outubro
Events for 23rd outubro
Sem Eventos
Events for 24th outubro
Sem Eventos
Events for 25th outubro
Sem Eventos
Events for 26th outubro
Sem Eventos
Events for 27th outubro
Sem Eventos
Events for 28th outubro
Sem Eventos
Events for 29th outubro
Sem Eventos
Events for 30th outubro
Sem Eventos
Events for 31st outubro
Sem Eventos
Share This