大家好~今天要來開始介紹深度學習的前期階段
今天會以灰階以及輪廓作為介紹。
-
灰階:
- 灰階顧名思義就是將顏色轉為灰色地帶,彩色的RGB,轉成GRAY,就這麼單純,但是這樣是為了甚麼呢?這個利用 Google 能查到各式各樣的說法,但我的話,我的說法會是,因為灰階層就是遇上兩種顏色,一個是黑色,一個是白色,那麼這兩個顏色在程式上會表示為 0,1 那麼他就是根據這個 0 與 1 來做參數的參考,但是這個 0 跟 1 事實上是怎麼排列呢?,簡單來說他會是一堆的0以及一堆的1組成,想像成圖片就是用一格一格做成的,因為每一個就是 1X1 的 pixel 值,但是這個 pixel 值它顯示並不會說他是什麼顏色,通常會以 RGB 三原色呈現為主,例如 255.255.255 或 0.0.0 也可以直接將他表示成 0 與 1,分別為白色與黑色,電腦就是根據這樣來做參考,我們也為了跟電腦做溝通所以使用灰階來與他溝通。
-
輪廓:
-
輪廓的用意,要根據灰階的做法才能讓輪廓顯現出來,在 python 中有一套模組叫做 Opencv 這個模組是支援深度學習眾多資料的模組,其中輪廓以及灰階也是他提供的,那但是灰階其實要做的作業蠻多的也很複雜,有個東西叫做膨脹以及侵蝕,這兩種方式主要是在探討讓你的灰階圖案更加鮮明,這個在辨識上會有很大的效果,不過前置作業也是要做的很足夠不然做了膨脹跟侵蝕,都是在不斷的調整參數
-
那麼如果前面都OK 輪廓的用意就來了,因為你的白跟黑只要劃分清楚,輪廓的用意就是將你的邊邊畫出來,你如果分得很清楚的情況下,他把你繪製出來的輪廓,就會將你的東西包覆起來
cv2.erode
cv2.dilate
cv2.morphologyEx(cv2.MORPH_OPEN)
cv2.morphologyEx(cv2.MORPH_CLOSE)
- erode 是 侵蝕作用,將黑白的參數往內縮,讓圖型更加精細。
- dilate 是 膨脹作用,將黑白擴散出去,能讓抓取的目標更多。
- morphology 一個運算的用法通常搭配 MORPH_OPEN , MORPH_CLOSE 用法來做使用也就是所謂的開運算與閉運算
那初步介紹就先到這邊,下一篇會接著繼續介紹灰階以及輪廓用法。
慢慢的,漸漸的,實力更加進步。