laplace
計算影象的 laplacian 變換
void cvlaplace( const cvarr* src, cvarr* dst, intaperture_size=3 );
src
輸入影象.
dst
輸出影象.
aperture_size
核大小 (與 cvsobel 中定義一樣).
函式 cvlaplace 計算輸入影象的 laplacian變換,方法是先用 sobel 運算元計算二階 x- 和 y- 差分,再求和:
對 aperture_size=1 則給出最快計算結果,相當於對影象採用如下核心做卷積:
類似於 cvsobel 函式,該函式也不作影象的尺度變換,所支援的輸入、輸出影象型別的組合和cvsobel一致。
注意:
opencv
裡面拉普拉斯變換要求輸出影象的深度比輸入影象深度要大。如輸入深度為8則輸出應該為16;如果深度不對的話會報錯。使用cvconvertscaleabs將生成的16位影象轉換為8位(說明最下邊)。
例:
#include
#include
int main(int argc, char ** argv)
結果:
cvconvertscaleabs
該函式是opencv中的函式。 函式作用:
使用線性變換轉換輸入陣列元素成8位無符號整型
函式原型:
void cvconvertscaleabs( const cvarr* src, cvarr*dst, double scale=1, double shift=0 );
#define cvcvtscaleabs cvconvertscaleabs
其中引數含義:
src : 原陣列
dst :輸出陣列 (深度為 8u).
scale :比例因子.
shift :原陣列元素按比例縮放後新增的值。
函式 cvconvertscaleabs 與前一函式是相同的,但它是存貯變換結果的絕對值:
dst(i)=abs(src(i)*scale + (shift,shift,...))
函式只支援目標數陣列的深度為 8u (8-bit 無符號) , 對於別的型別函式仿效於cvconvertscale 和 cvabs 函式的聯合 。
**:
imgproc模組 Laplace邊緣檢測運算元
1.目的 1 如何使用opencv函式laplacian實現laplacian運算元的離散模擬 2.原理 在一階導數的極值位置,二階導數為0。所以我們也可以用這個特點來作為檢測影象邊緣的方法。laplacian運算元的定義 opencv函式 laplacian 實現了laplacian運算元。實際上...
小波變換邊緣提取程式
1.小波變換邊緣提取程式 clear all load wbarb 小波變換邊緣提取程式 i ind2gray x,map 檢索圖轉成灰度圖 imshow i i1 imadjust i,stretchlim i 0,1 調整影象的畫素值,可以改變對比度和顏色 figure imshow i1 n,...
Laplace 運算元 邊界檢測
取second derivative得到 變化最大的地方,一階導數最大,二階導數為0,前者是sobel運算元所為,後者便是 laplace 運算元所為 因為影象是2d的,所以對兩個方向求二階導數 先濾波,將雜訊去掉 cvtcolor src,src gray,color bgr2gray 轉化成灰度...