使用Numpy和Opencv完成圖像的基本數(shù)據(jù)分析(Part II)
在上一節(jié)中,主要是介紹了圖像的基本知識(shí)以及OpenCV的基本操作,具體內(nèi)容參見(jiàn)“使用Numpy和Opencv完成基本圖像的數(shù)據(jù)分析(Part I)”。這部分內(nèi)容是接著上一節(jié)的內(nèi)容,主要介紹一些其它的操作。
使用邏輯操作處理像素值
可以使用邏輯運(yùn)算符創(chuàng)建相同大小的數(shù)組。但是,邏輯運(yùn)算操作并不會(huì)創(chuàng)建出任何新的數(shù)組,只是將True返回給主機(jī)變量(host variable)。例如:假設(shè)在RGB圖像中過(guò)濾掉一些像素值低的像素或像素值高的像素(以及其它任何條件),將RGB轉(zhuǎn)換為灰度圖看起來(lái)不錯(cuò),但是我們目前不會(huì)對(duì)彩色圖像進(jìn)行這樣的處理。
首先加載圖像,并將其顯示在屏幕上:


注意圖像的路徑問(wèn)題.之后需要考慮轉(zhuǎn)儲(chǔ)這個(gè)顯示的圖像。假設(shè)對(duì)于任何情況,我們都想要濾除掉低于某值的所有像素值,并假設(shè)該閾值設(shè)置為20。為此,我們將使用邏輯運(yùn)算符來(lái)執(zhí)行此任務(wù),最終結(jié)果將返回所有索引的真值。

正如之前所說(shuō),主機(jī)變量,一般并不使用這個(gè)名稱(chēng),但在本文中引用它,這是因?yàn)樗男袨橹槐A粽嬷?,而不是其他任何形式的值。所以,如果展示low_pixel和pic的形狀,我們就會(huì)發(fā)現(xiàn)它們其實(shí)具有相同的形狀。

我們使用全局比較運(yùn)算符為所有像素值小于200的像素點(diǎn)生成低值濾波器。但是,我們也可以使用此low_pixel數(shù)組作為索引將這些低值設(shè)置為某些特定值,這些值可能高于或低于先前的像素值。


掩膜
圖像掩膜是一種圖像處理技術(shù),被廣泛用于去除具有模糊邊緣、透明或毛刺部分的照片背景,看起來(lái)類(lèi)似于PS中的一項(xiàng)技術(shù)。
下面將帶領(lǐng)讀者一起創(chuàng)建一個(gè)圓盤(pán)形狀的掩膜。首先,我們測(cè)量從圖像中心到每個(gè)邊界像素值的距離,在這里采用應(yīng)用比較方便的半徑,然后使用邏輯運(yùn)算符創(chuàng)建一個(gè)圓盤(pán)。這個(gè)過(guò)程很簡(jiǎn)單,如下面的代碼所示:


衛(wèi)星圖像處理
作為edX的公開(kāi)課之一,下面將介紹一些衛(wèi)星圖像及其處理方法,這部分內(nèi)容是十分有用的,下面對(duì)其進(jìn)行一些處理,做一些分析任務(wù)。


下面看看它的一些基本信息:

從中可以發(fā)現(xiàn)一些有趣的東西,像許多其他可視化結(jié)果一樣,每個(gè)rgb層中的顏色都表示對(duì)應(yīng)的內(nèi)容。例如,紅色強(qiáng)弱表示像素中地理數(shù)據(jù)點(diǎn)的高度,藍(lán)色強(qiáng)弱表示方位的度量,而綠色表示斜率,這些顏色將有助于我們以更快、更有效的方式傳達(dá)信息,而不僅是顯示數(shù)字。
- 紅色像素表示:高度
- 藍(lán)色像素表示:方位
- 綠色像素表示:斜率
只需看一下這張彩色圖像,訓(xùn)練有素的眼睛就能分辨出海拔是多少,斜率是多少,方位在哪里,所以為這些顏色加載更多含義能夠表示更科學(xué)的東西,一個(gè)好的想法!
檢測(cè)每個(gè)通道的高像素


作者:Mohammed Innat,機(jī)器學(xué)習(xí)和數(shù)據(jù)科學(xué)研究者