国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

opencv檢測直線方法之形態學方法

2020-05-23 13:21:50
字體:
來源:轉載
供稿:網友

在閱讀文獻中,偶然發現使用使用形態學方法也可以檢測直線,故做實驗并記錄。

使用該方法,需要定義一個長度為L的結構元素element,其大小應足夠大以保留圖像中的字符筆劃,然而又恰好能檢測出圖像中最短的表格線。

定義如下兩個結構element用以檢測圖中水平、豎直的表格線:

Mat element1 = getStructuringElement(MORPH_RECT, Size(70, 1));// size的width應大于圖像中的橫向筆劃

Mat element3 = getStructuringElement(MORPH_RECT, Size(1, 55));//size的height應大于圖像中的豎直筆劃

之后分別用以上結構元素對圖像的水平以及豎直方向做閉運算以抹去水平或豎直表格線以外的細節:

morphologyEx(image, imageF1, MORPH_CLOSE, element1);

morphologyEx(image, imageF4, MORPH_CLOSE, element3);

下面附上整體代碼:

#include "core/core.hpp" #include "highgui/highgui.hpp" #include "imgproc/imgproc.hpp" #include <iostream>  using namespace std;using namespace cv; int main(){ Mat image = imread("E://x.jpg", 1); Mat imageF1, imageF2, imageF3, imageF4, imageF5, imageF6, imageF7; cvtColor(image, image, CV_RGB2GRAY); namedWindow("原圖"); imshow("原圖", image);  Mat element1 = getStructuringElement(MORPH_RECT, Size(73, 1));  Mat element3 = getStructuringElement(MORPH_RECT, Size(1, 80));   morphologyEx(image, imageF1, MORPH_CLOSE, element1); threshold(imageF1, imageF2, 200, 255, CV_THRESH_OTSU | CV_THRESH_BINARY_INV);//自適應閾值  morphologyEx(image, imageF4, MORPH_CLOSE, element3); threshold(imageF4, imageF5, 200, 255, CV_THRESH_OTSU | CV_THRESH_BINARY_INV);  bitwise_or(imageF2, imageF5, imageF7);   namedWindow("F1"); imshow("F1", imageF1); namedWindow("F2"); imshow("F2", imageF2);  namedWindow("F4"); imshow("F4", imageF4); namedWindow("F7"); imshow("F7", imageF7); namedWindow("F5"); imshow("F5", imageF5);   waitKey(0);  return 0;}

實驗結果如下:

opencv,檢測直線,形態學方法

記錄內容如有不妥之處,望指正!

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 揭东县| 新河县| 普兰店市| 普宁市| 彭州市| 浙江省| 庆阳市| 鸡东县| 西城区| 南乐县| 怀来县| 河池市| 清徐县| 当阳市| 沂源县| 昌乐县| 包头市| 德钦县| 辉县市| 张北县| 古交市| 察雅县| 松原市| 安乡县| 大名县| 五台县| 嵊州市| 永春县| 通州市| 乐陵市| 舞钢市| 长春市| 佛山市| 嘉禾县| 彩票| 郎溪县| 株洲县| 白银市| 辽源市| 昌江| 江达县|