Estou tentando implementar uma versão modificada do algoritmo de binarização otsu. Estou tentando binarizar imagens de documentos. Mas, no procedimento de binarização, desejo que o objeto (neste caso, o texto) retenha seu valor original em escala de cinza enquanto o plano de fundo assume o valor 255; isto é, branco. Estou postando uma versão de imagem de amostra que encontrei em um artigo.
Esta é a imagem original:
Esta é a imagem resultante que eu quero obter:
Alguém poderia me dizer como fazer isso no Matlab?
Respostas:
Eu não tenho o Matlab à mão, mas aqui está como você faz isso no OpenCV . O exemplo abaixo usa a interface python via Python (x, y) :
Isso resulta em sua saída necessária:
Edição: Eu não tenho uma cópia do Matlab, mas acho que é assim que você faria (supondo que você tenha a Image Processing Toolbox):
Use greythresh para obter o nível Otsu e defina qualquer coisa acima desse nível para branco (ou 255).
Espero que ajude!
fonte
Você pode fazer isso facilmente com o Mathematica:
O negócio de negação e multiplicação é garantir a preservação do valor original da escala de cinza. Você pode traduzir isso facilmente para qualquer idioma, eu acho.
fonte