OpenCV中的結構元素IplConvKernel及操作
在OpenCV中,定義了一個結構用於描述形態學中的結構元素。該結構定義如下:
typedef struct _IplConvKernel
{
int nCols;
int nRows;
int anchorX;
int anchorY;
int *values;
int nShiftR;
}
IplConvKernel;
在這裡,對其中的變數定義做一簡單的描述:
nCols,nRows:結構元素的行寬與列高;
anchorX,anchorY:結構元素原點(錨點)的位置座標,水平,垂直;
nShiftR:用於表示結構元素的形狀型別,有如下幾個值:
#define CV_SHAPE_RECT 0
#define CV_SHAPE_CROSS 1
#define CV_SHAPE_ELLIPSE 2
#define CV_SHAPE_CUSTOM 100
分別表示矩形,十字,橢圓和自定義。
values:當nShiftR為自定義時,value是指向結構元素資料的指標,如果結構元素的大小定義為8*6,那麼values為48長的int陣列,值為0或1。
在OpenCV中定義了兩個關於結構元素IplConvKernel的操作,用於結構元素的建立和釋放。
cvCreateStructuringElementEx
建立結構元素
IplConvKernel* cvCreateStructuringElementEx( int cols, int rows, int anchor_x, int anchor_y,
int shape, int* values=NULL );
cols 結構元素的列數目
rows 結構元素的行數目
anchor_x 錨點的相對水平偏移量
anchor_y 錨點的相對垂直偏移量
shape 結構元素的形狀,可以是下列值:
CV_SHAPE_RECT, 長方形元素;
CV_SHAPE_CROSS, 交錯元素 a cross-shaped element;
CV_SHAPE_ELLIPSE, 橢圓元素;
CV_SHAPE_CUSTOM, 使用者自定義元素。這種情況下引數 values 定義了 mask,即象素的那個鄰域必須考慮。
values 指向結構元素的指標,它是一個平面陣列,表示對元素矩陣逐行掃描。(非零點表示該點屬於結構元)。如果指標為空,則表示平面陣列中的所有元素都是非零的,即結構元是一個長方形(該引數僅僅當shape引數是 CV_SHAPE_CUSTOM 時才予以考慮)。
函式 cv CreateStructuringElementEx 分配和填充結構 IplConvKernel, 它可作為形態操作中的結構元素。
cvReleaseStructuringElement 刪除結構元素
void cvReleaseStructuringElement( IplConvKernel** element );
element 被刪除的結構元素的指標
函式 cvReleaseStructuringElement 釋放結構 IplConvKernel 。如果 *element 為 NULL, 則函式不作用。
其他結構元素的擴充套件操作參見:
相關推薦
OpenCV中的結構元素IplConvKernel及操作
在OpenCV中,定義了一個結構用於描述形態學中的結構元素。該結構定義如下: typedef struct _IplConvKernel { int nCols; int nRows; int anchorX; int anchorY;
為什麼在foreach迴圈中進行元素remove/add操作,會拋ConcurrentModificationException 異常?
執行以下程式碼: @Test public void test() { List<String> list = new ArrayList<>(); list.add("A"); list.add("B");
Hibernate中一對多配置及操作
表的一對多對映配置 以客戶和聯絡人表為例子:客戶是一,聯絡人是多 1、建立實體類,客戶和聯絡人 2、讓兩個實體類之間互相表示 (1)在客戶實體類中要表示多個聯絡人 - 一個客戶有多個聯絡人 //在客戶實體類裡面表示多個聯絡人,一個客戶有多個聯絡人 //hibern
陣列中指定元素的刪除操作——Java
class Solution { public int removeElement(int[] nums, int val) { int number=0,exchangNumber=0; for(int i=nums
python:zip函式,對列表中的元素進行函式操作
python程式碼 a = [[123, 456, 789, 123],[124, 455, 788, 124]] width = map(lambda x:x[1] - x[3], a) # 求a中各個元素中,第2和第4的差值 list(width) 總結 pyth
Ubuntu16 下 OpenCV 的一些報錯及操作
一、檢視當前Opencv版本 在終端輸入下面的命令,即可檢視opencv版本 pkg-config --modversion opencv 二、特徵提取器與描述子提取 宣告(opencv2.x 版本與 opencv3.x對比) 當需要呼叫opencv庫中的特徵提
Opencv中新增進度條及回撥函式
#include "highgui.h"#include "iostream"using namespace std;using namespace cv;VideoCapture video1("Seq04.avi"); in
selenium_頁面元素定位及操作
【基本步驟】 1:開啟瀏覽器; 2:開啟網頁; 3:定位元素及操作; 【元素定位是自動化測試核心部分】 元素名稱 webdriver API id find_ele
Appium-Python各種元素定位及操作方法解析
元素定位方法 # /site-packages/selenium/webdriver/remote/webdriver.py 通過id定位元素 12 find_element_by_id(self, id_) # Usage: driver.find_e
數字影象處理中結構元素、腐蝕、膨脹的基本概念。(轉+源)
重建操作 重建操作分為很多種,包括重建開操作、重建頂帽操作等。其根本原理是通過腐蝕找到SE的模式,然後迭代膨脹或者迭代頂帽操作直到影象收斂。 程式碼 #include <cv.h>#include <highgui.h>#include <stdio.
CentOs中nginx的安裝及操作
博主使用的系統是centos6.x和Centos7.0,所以跟其他的系統比如說ubuntu系統有一定的差別,如果有不對的地方,歡迎指正。 Nginx的官網是http://nginx.org/,開啟後可以看到nginx的各個版本,包括版本號,版本型別,更新時間以
jquery幾種頁面元素定位及操作的方法
jQuery提供兩種方式來選擇html的elements,第一種是用CSS和Xpath選擇器聯合起來形成一個字串來傳送到jQuery的構造器(如:$("div > ul a"));第二種是用jQuery物件的幾個methods(方法)。這兩種方式還可以聯合起來混合使用。我們來試著在我們的test.htm
table中td元素,不可操作、不可編輯、獲取不到焦點、不能被選中
在要讓文字不能被選中的TD內加入onselectstart="return false" onselect="document.selection.empty()"<table><t
Opencv中Mat結構體中元素的獲取與賦值
【OpenCV3影象處理】Mat中元素的獲取與賦值 ( 對比.at<>()函式 和 .ptr<>()函式) 2017年04月12日 10:08:55 閱讀數:7542 標籤: opencvopencv3 更多 個人分類:&nbs
jquery 獲取及操作元素 (常用)
.com pre img htm color hello fun 文檔 wid jquery 獲取元素 參考:http://www.w3school.com.cn/jquery/jquery_selectors.asp 1.(1)$(document).ready()
內置數據結構 :列表及常用操作
xtend 也會 count insert 返回 所在 .so 數據 start 列表是一個序列:用於順序的存儲數據, 通常在定義的時候,使用中括號,在轉化可叠代對象為列表時用list 函數 1,訪問列表元素: List[0] 通過下標訪問
對OpenCV中3種乘法操作的理解掌握
alt 函數 opencv 如果 csdn tle 基本操作 art sca 參考了《Opencv中Mat矩陣相乘——點乘、dot、mul運算詳解 》“http://blog.csdn.net/dcrmg/article/details/52404580”的相關內容。乘法是
Java對數組的操作(三)—比較兩個數組中的元素是否同樣的最簡單方法
con data println test popu pan equal main spa 呵呵呵,實現Java比較兩個數組中的元素是否同樣的功能你是怎麽做的?看以下最簡單方法: import java.util.Arrays;
操作Frame和IFrame中頁面元素
如果 ebe 普通 ros def 當前 包含 div 內聯 HTML <iframe> 標簽 定義:iframe 元素會創建包含另外一個文檔的內聯框架(即行內框架)。 frame標簽有frameset、frame、iframe三種,frameset跟其他普通
線性表的順序存儲結構元素的獲取,插入及刪除
數據結構 線性表 順序存儲結構 對於線性表,我們可以對其元素進行簡單的獲取,插入以及刪除操作。 先來講講元素的獲取操作,完整來講,就是對,將線性表L第i個位置的元素返回,若成功,則返回1,且將第i個位置的元素的值賦給*e;若失敗,則返回0。代碼如下:int GetEl