Opencv基于文字檢測去圖片水印的實(shí)現(xiàn)示例
更新時(shí)間:2023年09月01日 09:19:24 作者:stonewu
去水印是個(gè)麻煩事,本文就來介紹一種方法Opencv基于文字檢測去圖片水印的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下
做了一個(gè)簡單的去水印功能,基于文字檢測去圖片水印。效果如下:
插件功能代碼參考如下:
using namespace cv::dnn; TextDetectionModel_DB *textDetector=0; void getTextDetector() { if(textDetector)return; String modelPath = "text_detection_DB_TD500_resnet18_2021sep.onnx"; //模型權(quán)重文件 textDetector=new TextDetectionModel_DB(modelPath); float binThresh = 0.3; //二值圖的置信度閾值 float polyThresh = 0.5 ; //文本多邊形閾值 double unclipRatio = 2.0; //檢測到的文本區(qū)域的未壓縮比率,gai比率確定輸出大小 uint maxCandidates = 200; textDetector->setBinaryThreshold(binThresh) .setPolygonThreshold(polyThresh) .setUnclipRatio(unclipRatio) .setMaxCandidates(maxCandidates); double scale = 1.0 / 255.0; int height = 736; //輸出圖片長寬 int width = 736; Size inputSize = Size(width, height); Scalar mean = Scalar(122.67891434, 116.66876762, 104.00698793); textDetector->setInputParams(scale, inputSize, mean); } void deWaterMarkTextDetection(Mat &input,Mat &output,Mat &src,string) { getTextDetector(); // 推理 std::vector<std::vector<Point>> results; textDetector->detect(input, results); Mat mask = Mat::zeros(input.size(), CV_8U); fillPoly(mask, results,Scalar::all(255)); //將掩模進(jìn)行膨脹,使其能夠覆蓋圖像更大區(qū)域 Mat kernel = getStructuringElement(MORPH_RECT, Size(5, 5)); dilate(mask, mask, kernel); //使用inpaint進(jìn)行圖像修復(fù) Mat result; inpaint(src, mask, output, 1, INPAINT_NS); }
到此這篇關(guān)于Opencv基于文字檢測去圖片水印的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)Opencv 去圖片水印內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C++模擬實(shí)現(xiàn)stack和Queue的操作示例
這篇文章主要介紹了C++模擬實(shí)現(xiàn)stack和Queue的操作示例,文中通過代碼示例給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-06-06C語言實(shí)現(xiàn)靜態(tài)順序表的實(shí)例詳解
這篇文章主要介紹了C語言實(shí)現(xiàn)靜態(tài)順序表的實(shí)例詳解的相關(guān)資料,這里提供是幫助大家學(xué)習(xí)理解這部分內(nèi)容,需要的朋友可以參考下2017-08-08C語言實(shí)現(xiàn)帶頭結(jié)點(diǎn)的鏈表的創(chuàng)建、查找、插入、刪除操作
這篇文章主要介紹了C語言實(shí)現(xiàn)帶頭結(jié)點(diǎn)的鏈表的創(chuàng)建、查找、插入、刪除操作方法,對于了解數(shù)據(jù)結(jié)構(gòu)中鏈表的各項(xiàng)操作有很好的借鑒價(jià)值,需要的朋友可以參考下2014-09-09簡單對比C語言中的fputs()函數(shù)和fputc()函數(shù)
這篇文章主要介紹了簡單對比C語言中的fputs()函數(shù)和fputc()函數(shù),注意其之間的區(qū)別,需要的朋友可以參考下2015-08-08