Как убрать водяной знак фона в изображении Python - PullRequest
0 голосов
/ 11 июня 2018

У меня есть изображение, как показано ниже,

enter image description here

Я хочу удалить фоновый водяной знак.

Пока я пытался,inpainting метод в opencv.Это мне не помогло.

Я попробовал следующий скрипт:

edges = cv2.Canny(img,50,150,apertureSize = 3)
dst = cv2.inpaint(img,edges,3,cv2.INPAINT_TELEA)

Я новичок в обработке изображений и opencv.Итак, я не знаю, правильно ли я делаю или нет для выполнения рисования.Какой метод я должен сделать для удаления фоновых водяных знаков.

Я хотел бы удалить зеленый цитируемый водяной знак с моего изображения.

enter image description here

любая помощь будет более заметной.

1 Ответ

0 голосов
/ 11 июня 2018

Текст здесь отличается по интенсивности от водяного знака.Вы можете поиграть с простым преобразованием яркости / контраста, то есть увеличивая усиление / контрастность, пока водяной знак не исчезнет, ​​и уменьшите яркость для компенсации.

См. Документы OpenCV для простого учебника.

Вот быстрая попытка в Python, на самом деле не использующая OpenCV, потому что для такого простого линейного преобразования IMHO не требуется.Поиграйте с параметрами alpha (контрастность) и beta (яркость), пока не получите желаемый результат

import cv2
import numpy as np

img = cv2.imread("veidz.jpg")

alpha = 2.0
beta = -160

new = alpha * img + beta
new = np.clip(new, 0, 255).astype(np.uint8)

cv2.imwrite("cleaned.png", new)

removed watermark

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...