![智能圖像處理:Python和OpenCV實(shí)現(xiàn)-課件 第一章 數(shù)字圖像處理課件-opencv簡(jiǎn)介_(kāi)第1頁(yè)](http://file4.renrendoc.com/view2/M03/04/04/wKhkFmYV9LqAOGx1AACuFpiN4jY228.jpg)
![智能圖像處理:Python和OpenCV實(shí)現(xiàn)-課件 第一章 數(shù)字圖像處理課件-opencv簡(jiǎn)介_(kāi)第2頁(yè)](http://file4.renrendoc.com/view2/M03/04/04/wKhkFmYV9LqAOGx1AACuFpiN4jY2282.jpg)
![智能圖像處理:Python和OpenCV實(shí)現(xiàn)-課件 第一章 數(shù)字圖像處理課件-opencv簡(jiǎn)介_(kāi)第3頁(yè)](http://file4.renrendoc.com/view2/M03/04/04/wKhkFmYV9LqAOGx1AACuFpiN4jY2283.jpg)
![智能圖像處理:Python和OpenCV實(shí)現(xiàn)-課件 第一章 數(shù)字圖像處理課件-opencv簡(jiǎn)介_(kāi)第4頁(yè)](http://file4.renrendoc.com/view2/M03/04/04/wKhkFmYV9LqAOGx1AACuFpiN4jY2284.jpg)
![智能圖像處理:Python和OpenCV實(shí)現(xiàn)-課件 第一章 數(shù)字圖像處理課件-opencv簡(jiǎn)介_(kāi)第5頁(yè)](http://file4.renrendoc.com/view2/M03/04/04/wKhkFmYV9LqAOGx1AACuFpiN4jY2285.jpg)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
數(shù)字圖像處理一、OpenCV安裝教程DIRECTORY目錄二、OpenCV簡(jiǎn)單使用三、Matplotlib庫(kù)簡(jiǎn)單使用四、Numpy庫(kù)簡(jiǎn)單使用一、OpenCV安裝教程2.1opencv及常用庫(kù)的安裝教程在完成PyCharm的初始化配置后,接下來(lái)配置OpenCV和一些常用庫(kù)。首先,單機(jī)操作界面左上角的“File”,之后單機(jī)“setting”,會(huì)出現(xiàn)如下的配置界面。2.1opencv及常用庫(kù)的安裝教程在完成opencv庫(kù)的安裝后,可以使用相同的方法完成Numpy庫(kù)的安裝。同樣,也可以使用相同的方法完成matplotlib庫(kù)的安裝。。二、OpenCV簡(jiǎn)單使用2.1opencv圖像基礎(chǔ)在學(xué)習(xí)處理圖像的操作之前,首先要了解圖像的表示方法。圖像是由像素構(gòu)成的,同等面積下,像素越多則圖像越清晰。圖像主要分為三類:二值圖像:圖像只有
黑、白
兩種顏色(像素點(diǎn)
0或1)灰度圖像:圖像只有
黑、白、灰
三種顏色(像素點(diǎn)
0-255,其中
0
為黑色,255
為白色,1-254
之間均為灰色)RGB圖像:彩色圖像其中,二值和灰度圖像
均為
單通道,RGB圖像
為
三通道。、彩色圖像(RGB):由
紅、綠、藍(lán)
三色按照某種比例混合而成的。彩色圖像(BGR):opencv庫(kù)專用,順序?yàn)樗{(lán)、綠、紅。2.2opencv圖像的加載顯示和保存1、return=cv2.imread(filename,
flags):讀取加載圖片,return是返回值,其值是讀取到的圖像filename是要讀取圖像的完整文件名flags是讀取標(biāo)記用于控制讀取文件的類型2、cv2.imshow(winname,image):顯示圖片winname是窗口的名稱image是要顯示的圖像3、cv2.waitKey(delay):等待圖片的關(guān)閉delay表示等待鍵盤(pán)觸發(fā)時(shí)間,單位是ms。當(dāng)該值為負(fù)數(shù)或0時(shí)表示無(wú)限等待,默認(rèn)值為0.cv2.imwrite(filename,img):保存圖片filename是要保持圖片的完整路徑img是要保存圖像的名字2.3圖像顯示窗口創(chuàng)建與銷毀1、dWindow(winname):創(chuàng)建一個(gè)窗口。winname指窗口的名字2、cv2.destroyWindow(winname):銷毀某個(gè)窗口。winname指窗口的名字3、cv2.destroyAllWindows():銷毀所有窗口
2.4圖像常用屬性的獲取img.shape:打印圖片的高、寬和通道數(shù)(當(dāng)圖片為灰度圖像時(shí),顏色通道數(shù)為1,不顯示)img.size:打印圖片的像素?cái)?shù)目img.dtype:打印圖片的格式2.4圖像常用屬性的獲取img.shape:打印圖片的高、寬和通道數(shù)(當(dāng)圖片為灰度圖像時(shí),顏色通道數(shù)為1,不顯示)img.size:打印圖片的像素?cái)?shù)目img.dtype:打印圖片的格式運(yùn)行結(jié)果:2.5生產(chǎn)指定大小的矩形區(qū)域1、一個(gè)圖片img,它的某個(gè)像素點(diǎn)可以用img[x,y,c]表示(x,y為坐標(biāo),c為通道數(shù))2、同理,這個(gè)圖片的某個(gè)矩形區(qū)域可以表示為:img[x1:x2,y1:y2,c](相當(dāng)于截下一塊矩形,左上角坐標(biāo)為(x1,y1),右下角坐標(biāo)為(x2,y2))3、其中c一般取值為0,1,2(BGR)代表第幾個(gè)顏色通道,可以省略不寫(xiě)img[x,y]代表所有通道。實(shí)例1、生成一個(gè)大小為(200,300)顏色通道為3的紅色圖片
實(shí)例2、從一張圖片上截取一個(gè)矩形區(qū)域2.6圖片顏色通道的分離與合并在圖像處理過(guò)程中,有時(shí)會(huì)根據(jù)需要對(duì)通道進(jìn)行拆分與合并。OpenCV中提供了split()和merge()函數(shù)對(duì)圖像進(jìn)行拆分與合并。cv2.split(m):將圖片m分離為三個(gè)顏色通道2.6圖片顏色通道的分離與合并在圖像處理過(guò)程中,有時(shí)會(huì)根據(jù)需要對(duì)通道進(jìn)行拆分與合并。OpenCV中提供了split()和merge()函數(shù)對(duì)圖像進(jìn)行拆分與合并。cv2.split(m):將圖片m分離為三個(gè)顏色通道cv2.merge(mv):將三個(gè)顏色通道合并為一張圖片mv是需要合并的通道的圖像信息cv2.merge(mv):將三個(gè)顏色通道合并為一張圖片mv是需要合并的通道的圖像信息三、Matplotlib庫(kù)簡(jiǎn)單使用matplotlib庫(kù)函數(shù)基本用法(繪圖)Matplotlib庫(kù)是python優(yōu)秀的數(shù)據(jù)可視化第三方庫(kù),有超過(guò)100種數(shù)據(jù)可視化顯示效果。只需幾行代碼就可以生成圖表,直方圖,功率譜,條形圖,誤差圖,散點(diǎn)圖等。Matplotlib由各種可視化類構(gòu)成Matplotlib.pyplot是繪制各類可視化圖形的命令子庫(kù),相當(dāng)于快捷方式
(用戶可以僅通過(guò)調(diào)用pyplot就可以使用Matplotlib中所有可視化的類)引用:importmatplotlib.pyplotasplt,簡(jiǎn)寫(xiě)為plt已成為一個(gè)不成文的規(guī)定matplotlib庫(kù)函數(shù)基本用法(繪圖)3.1plt.figure()用來(lái)畫(huà)圖,能自定義畫(huà)布大小figure(num=None,figsize=None,dpi=None,facecolor=None,edgecolor=None,frameon=True)num:圖像編號(hào)或名稱,數(shù)字為編號(hào)
,字符串為名稱figsize:指定figure的寬和高,單位為英寸;dpi參數(shù)指定繪圖對(duì)象的分辨率,即每英寸多少個(gè)像素,缺省值為801英寸等于2.5cm,A4紙是21*30cm的紙張facecolor:背景顏色edgecolor:邊框顏色frameon:是否顯示邊框?qū)嵗?.2plt.plot(x,y,format_string,**kwargs)x:x軸數(shù)據(jù),列表或數(shù)組,可選y:y軸數(shù)據(jù),列表或數(shù)組format_string:控制曲線的格式字符串,可選**kwargs:第二組或更多,(x,y,format_string)3.3plt.subplot()plt.subplot()函數(shù)用于直接指定劃分方式和位置進(jìn)行繪圖。#使用plt.subplot來(lái)創(chuàng)建小圖.plt.subplot(221)表示將整個(gè)圖像窗口分為2行2列,當(dāng)前位置為1.plt.subplot(221)#plt.subplot(222)表示將整個(gè)圖像窗口分為2行2列,當(dāng)前位置為2.plt.subplot(222)#第一行的右圖#plt.subplot(223)表示將整個(gè)圖像窗口分為2行2列,當(dāng)前位置為3.plt.subplot(223)#plt.subplot(224)表示將整個(gè)圖像窗口分為2行2列,當(dāng)前位置為4.plt.subplot(224)3.4plt.imshow()Matplotlib中的imshow函數(shù)用于繪制熱圖。(熱圖:時(shí)數(shù)據(jù)分析常用的方法。通過(guò)色差、亮度來(lái)展示數(shù)據(jù)的差異,容易理解)imshow(X,cmap=None,norm=None,aspect=None,interpolation=None,alpha=None,vmin=None,vmax=None,origin=None,extent=None,shape=None,filternorm=1,filterrad=4.0,imlim=None,resample=None,url=None,hold=None,data=None,**kwargs)主要參數(shù):1.X:array_like對(duì)象/數(shù)列類對(duì)象,shape(n,m)X可以是數(shù)列類格式、或者PIL圖片。2.cmap:cmap是colormap的簡(jiǎn)稱,用于指定漸變色,默認(rèn)的值為viridis。3.aspect:aspect用于指定熱圖的單元格的大小,默認(rèn)值為equal,此時(shí)單元格用于是一個(gè)方塊,當(dāng)設(shè)置為auto時(shí),會(huì)根據(jù)畫(huà)布的大小動(dòng)態(tài)調(diào)整單元格的大小。4.alpha:alpha參數(shù)用于指定透明度。5.orign:orign參數(shù)指定繪制熱圖時(shí)的方向,默認(rèn)值為upper此時(shí)熱圖的右上角為(0,0),當(dāng)設(shè)置為lower時(shí),熱圖的左下角為(0,0)。6.vmin和vmax:用于限定數(shù)值的范圍,只將vmin和vmax之間的值進(jìn)行映射。7.interpolation:參數(shù)控制熱圖的顯示形式。8.extent:extent參數(shù)指定熱圖x軸和y軸的極值。3.5plt.show()在使用matplotlib庫(kù)的過(guò)程中,僅僅使用plt.imshow()函數(shù)無(wú)法將圖片顯示出來(lái),必須在后面添加plt.show()函數(shù)才能完成圖片的顯示。原理:plt.imshow()函數(shù)負(fù)責(zé)對(duì)圖像進(jìn)行處理,并顯示其格式,而plt.show()則是將plt.imshow()處理后的函數(shù)顯示出來(lái)。3.6繪制折線圖3.7繪制直方圖直方圖概述:從統(tǒng)計(jì)的角度講,直方圖是圖像內(nèi)灰度值的統(tǒng)計(jì)特性與圖像灰度值之間的函數(shù),直方圖統(tǒng)計(jì)圖像內(nèi)各個(gè)灰度級(jí)出現(xiàn)的次數(shù)。其表示方法為:第一,確定圖像像元的灰度值范圍;第二,以適當(dāng)?shù)幕叶乳g隔為單位將其劃分為若干等級(jí);第三,以橫軸表示灰度級(jí),以縱軸表示每一灰度級(jí)具有的像元數(shù)或該像元數(shù)占總像元數(shù)的比例值,做出的條形統(tǒng)計(jì)圖就是灰度直方圖。直方圖的繪制:OpenCV中提供了cv2.calcHist()函數(shù)用于計(jì)算統(tǒng)計(jì)直方圖,可使用matplotlib庫(kù)中的plot()函數(shù)繪制直方圖。hist=cv2.calcHist(image,channel,mask,histSize,range,accumulate)主要參數(shù):hist表示返回的統(tǒng)計(jì)直方圖,數(shù)組內(nèi)是各個(gè)灰度級(jí)的像素個(gè)數(shù)。image表示原始圖像,該圖像需要用“[]”括起來(lái)。channel
表示指定通道編號(hào)。通道編號(hào)需要用“[]”
括起來(lái)。mask表示掩模圖像。當(dāng)統(tǒng)計(jì)整幅圖像的直方圖時(shí),將這個(gè)值設(shè)為None.當(dāng)統(tǒng)計(jì)圖
像某一部分的直方圖時(shí),需要用到掩模圖像。histSize表示BINS的值,該值需要用“[]”括起來(lái)。range表示像素值范圍。accumulate表示累計(jì)標(biāo)識(shí),默認(rèn)值為False如果被設(shè)置為T(mén)rue,則直方圖在開(kāi)始計(jì)算時(shí)不會(huì)被清零,計(jì)算的是多個(gè)直方圖的累積結(jié)果,用于對(duì)一組圖像計(jì)算直方圖。該參數(shù)是可選擇的,一般情況下不需要設(shè)置。可見(jiàn),輸出的hist為一維數(shù)組。使用calchHist()函數(shù)計(jì)算圖像的統(tǒng)計(jì)直方圖。使用plot()函數(shù)繪制灰度直方圖。使用pyplot.hist()函數(shù)繪制灰度直方圖matplotlib.pyplot.hist(image,BINS)BINS表示灰度級(jí)的分組情況Image表示原始圖像數(shù)據(jù),必須將其轉(zhuǎn)換為一維數(shù)組。四、Numpy簡(jiǎn)單使用Numpy庫(kù)的簡(jiǎn)單介紹NumPy是Python語(yǔ)言的一個(gè)第三方庫(kù),其支持大量高維度數(shù)組與矩陣運(yùn)算。此外,NumPy也針對(duì)數(shù)組運(yùn)算提供大量的數(shù)學(xué)函數(shù)。機(jī)器學(xué)習(xí)涉及到大量對(duì)數(shù)組的變換和運(yùn)算,NumPy就成了必不可少的工具之一。Numpy庫(kù)的功能:ndarray,一個(gè)多維數(shù)組結(jié)構(gòu),高效且節(jié)省空間無(wú)需循環(huán),對(duì)整組數(shù)據(jù)進(jìn)行快速運(yùn)算的數(shù)學(xué)函數(shù)讀寫(xiě)磁盤(pán)數(shù)據(jù)的工具以及用于操作內(nèi)存映射文件的工具線性代數(shù)、隨機(jī)數(shù)生成和傅里葉變換功能用于集成C、C++等代碼的工具使用numpy創(chuàng)建一維數(shù)組numpy.array(object,
dtype=None,
copy=True,
order='K',
subok=False,
ndmin=0)object:數(shù)組公開(kāi)數(shù)組接口的任何對(duì)象,返回?cái)?shù)組的對(duì)象,或任何(嵌套)序列。dtype:數(shù)據(jù)類型,可選使用numpy創(chuàng)建二維數(shù)組使用numpy創(chuàng)建全為0的二維數(shù)組np.zeros(shape,dtype=None,older=‘C’)shape是一個(gè)int或一個(gè)int元組,用于定義數(shù)組的大小。如果我們僅指定一個(gè)int變量,則將返回一維數(shù)組。對(duì)于一個(gè)整數(shù)元組,將返回給定形狀的數(shù)組。dtype是一個(gè)可選參數(shù),默認(rèn)值為float。它用于指定數(shù)組的數(shù)據(jù)類型,例如int
older:C表示行優(yōu)先,F(xiàn)表示列優(yōu)先(可選參數(shù))使用numpy創(chuàng)建全為1的二維數(shù)組numpy.ones(shape,dtype=None,order=‘C’)參數(shù):shape是一個(gè)int或一個(gè)int元組,用于定義數(shù)組的大小。如果我們僅指定一個(gè)int變量,則將返回一維數(shù)組。對(duì)于一個(gè)整數(shù)元組,將返回給定形狀的數(shù)組。dtype是一個(gè)可選參數(shù),默認(rèn)值為float。它用于指定數(shù)組的數(shù)據(jù)類型,例如intolder:C表示行優(yōu)先,F(xiàn)表示列優(yōu)先(可選參數(shù))使用numpy創(chuàng)建任意大小的數(shù)組并填充任意數(shù)字numpy.full(shape,
fill_value,
dtype=None,
order='C')返回一個(gè)根據(jù)指定shape和type,并用fill_value填充的新數(shù)組。參數(shù):shape:整數(shù)或整數(shù)序列新數(shù)組的形態(tài),單個(gè)值代表一維,參數(shù)傳元組,元組中元素個(gè)數(shù)就代表是幾維,例如,
(2,
3)
or
2.fill_value:
標(biāo)量(無(wú)向量)填充數(shù)組的值dtype:數(shù)據(jù)類型,可選默認(rèn)值為None查看要填充數(shù)組的值數(shù)據(jù)類型:np.array(fill_value).dtype。order:{‘C’,‘F’},可選是否在內(nèi)存中以行為主(C風(fēng)格)或列為主(Fortran風(fēng)格)連續(xù)(行或列)順序存儲(chǔ)多維數(shù)據(jù)。使用numpy創(chuàng)建任意大小的數(shù)組并填充任意數(shù)字使用numpy創(chuàng)建一維等差數(shù)組numpy.arange(start,stop,step,dtype=None)參數(shù):start:開(kāi)始位置,數(shù)字,可選項(xiàng),默認(rèn)起始值為0stop:停止位置,數(shù)字step:步長(zhǎng),數(shù)字,可選項(xiàng),默認(rèn)步長(zhǎng)為1,如果指定了step,則還必須給出start。dtype:輸出數(shù)組的類型。如果未給出dtype,則從其他輸入?yún)?shù)推斷數(shù)據(jù)類型。返回:均勻間隔值的數(shù)組。使用numpy創(chuàng)建一維等差數(shù)組使用numpy創(chuàng)建二維等差數(shù)組numpy.reshape(a,newshape,order=‘C’)參數(shù):a:array_like要重塑的數(shù)組。newshape:int或int的元組新形狀應(yīng)與原始形狀兼容。如果是整數(shù),則結(jié)果將是該長(zhǎng)度的一維數(shù)組。order:{'C','F','A'},可選使用此索引順序讀取a的元素,然后使用此索
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年臨時(shí)電梯使用協(xié)議范本
- 2025年施工合同修改協(xié)議
- 2025年創(chuàng)業(yè)園區(qū)租賃協(xié)議
- 2025年交通工程安全事故補(bǔ)償協(xié)議
- 2025年三人合資企業(yè)合同范本
- 2025年離異家庭撫養(yǎng)權(quán)策劃安排合同
- 2025年住房及其周邊設(shè)施購(gòu)買合同
- 2025年代理服務(wù)合同范文協(xié)議書(shū)
- 2025年策劃社團(tuán)聯(lián)合共創(chuàng)協(xié)議書(shū)
- 2025年交通項(xiàng)目合作實(shí)施協(xié)議書(shū)模板
- DB32-T 4319-2022 中藥藥渣處理規(guī)程
- 學(xué)前兒童保育學(xué)(學(xué)前教育專業(yè))全套教學(xué)課件
- 人工智能行業(yè)數(shù)據(jù)安全與隱私保護(hù)
- GB/T 9439-2023灰鑄鐵件
- (完整word版)Word信紙(A4橫條直接打印版)模板
- 向高層銷售:與決策者有效打交道
- DB32/T 4443-2023 罐區(qū)內(nèi)在役危險(xiǎn)化學(xué)品(常低壓)儲(chǔ)罐管理規(guī)范
- 尼泊爾簡(jiǎn)介課件
- 嬰幼兒托育機(jī)構(gòu)管理與運(yùn)營(yíng)實(shí)務(wù)高職PPT完整全套教學(xué)課件
- 新能源汽車電池石墨類負(fù)極材料一體化項(xiàng)目環(huán)境影響評(píng)價(jià)報(bào)告書(shū)
- IT服務(wù)連續(xù)性實(shí)現(xiàn)指南
評(píng)論
0/150
提交評(píng)論