計算機視覺演算法

2021-07-24 21:57:58 字數 2702 閱讀 9970

講了乙個最小二乘法問題(存在四個不在一條直線上點,擬合一條直線,使這條直線能夠

誤差最小的穿過這四個點)雖然還不知道具體怎麼解。

引申到矩陣的最小二乘法(有三個矩陣a,b,c,a為4 * 2,c為4 * 1,a * b = c.求b矩陣)

求b,a矩陣是乙個非奇異矩陣,不可逆,所以讓a轉置左乘a構成滿秩矩陣c,可得b等於c逆乘上a轉置再乘c

影象是由波組成的

介紹了矩陣的求導(雅可比矩陣)

cvtcolor("imggray,imggray,cv_rgb2gray");//轉換顏色為灰色

cout << (int)imggray.at(1,1) /讀取畫素值

imshow("123",1);

waitkey(0);//讀周一幀,無需延時

注:

灰度圖為單通道影象;

彩圖分為3通道和4通道兩種:rgb為3通道;

rgba為4通道,a代表透明度(0,255);

在opencv巨集定義中:

cv_8uci ——char

cv_32sc1——int

cv_32fc1——float

cv_64fc1——double

顯示時常用char型別

具體操作計算時用double型別。

mat image = mat::eye(5,5,cv_64fc1);//定義5*5單位陣

mat image = mat::ones(5,5,cv_64fc1);//元素全為1

mat image = mat::zeros(5,5,cv_64fc1);//元素全為0

mat image = mat::eye(5,5cv_64fc1);

image copyto()//拷貝矩陣

image inv()//對矩陣求逆

對影象進行求導是對畫素值組成的二維矩陣進行的求導運算,求得的導數就是高斯雜訊;

對矩陣求導在高等數學中有具體的定義和公式;

此時引入了卷積的概念,作為乙個小白,在經過自己的親身實驗後,我現在可以體會到卷積在影象處理中的強大作用;

對影象求導可以不用理解較難的數學公式,直接使用卷積模板進行求解;

卷積其實就是加權求和,卷積模板就是權值》

目前我認為,我們可以定義許多種卷積模板,並用影象的畫素值*卷積模板達到特殊的畫素強度分配,從而達到一些效果,例如:具體講到的高斯模板就可以使影象達到模糊的效果;還有sobel模板是對影象進行邊緣處理。

我們先找一張,先用灰度圖轉換後讀出來

使用了矩陣求導公式 dx

=f(x

+1,y

)−f(

x−1,

y)

void main()

}mshow("123",dimg);

waitkey(10);//執行緒等待

system("pause");

}

效果是這樣的

下面進行卷積求導。

void main()

}dimg.at(i,j-1)=(uchar)sum;}}

imshow("123",dimg);

waitkey(10);

system("pause");

}}

和上面的求導效果是一樣的 。

高斯模糊就是用正態分佈作為權重分配方式。

正態分佈的密度函式叫做高斯函式

這是一維形式

因為影象都是二維的,我們需要推導出高斯函式的二維形式,如下

下面進行高斯模糊的卷積核建立和卷積操作

void main()

}double gssum=sum(gauss).val[0];

for (int i=-2;i<3;i++)

}//進行卷積操作

mat dimg=mat(imggray.rows-4,imggray.cols-4,cv_8uc1);

for (int i=2;i2;i++)

}dimg.at(i-2,j-2)=(uchar)sum;}}

imshow("gauss",dimg);

waitkey(0);

}

效果是這樣的

達到了模糊的效果,我們可以通過改變sigma的值來決定模糊的程度

前面說到了sobel,它用來處理邊緣效果,在opencv中只需直接呼叫即可,同樣高斯模糊也可以直接呼叫

gaussianblur(frame,frame,cvsize(5,5),10,10);高斯模糊函式
我們現在來看一下soble函式對影象處理後的效果

void main()

可以看到只保留了邊緣部分

也許這就叫濾波,這些也許都叫濾波,目前還沒有完全理解…

(計算機視覺)計算機視覺基礎

opencv cximage cimg freeimage opencv中vc庫的版本與visual studio版本的對應關係 vc8 2005 vc9 2008 vc10 2010 vc11 2012 vc12 2013 vc14 2015 vc15 2017 visual studio中的輔助...

計算機視覺

主講老師 曹洋 課程 視覺 基礎 底 層處理 影象處理 特徵提 取 中 層處理 影象分割 相機標 定 深度 估計 運 動估計 高層處 理 3d 重建 目 標識別 視 覺基 礎 底層 處理 圖 像處理 特徵提取 中層 處理 圖 像分割 相機標定 深度估 計 運動 估計 高層處理 3d重 建 目標 識別...

計算機視覺

眾所周知,計算機不認識影象,只認識數字。為了使計算機能夠 理解 影象,從而具有真正意義上的 視覺 本章我們將研究如何從影象中提取有用的資料或資訊,得到影象的 非影象 的表示或描述,如數值 向量和符號等。這一過程就是特徵提取,而提取出來的這些 非影象 的表示或描述就是特徵。有了這些數值或向量形式的特徵...