跳到主要內容
 

技術論壇

主題:電腦視覺系統的建立要有哪些基本元素?

2020/02/19linda.lin

377 14 0


電腦視覺類 視覺辨識採果機器人

說到電腦視覺系統大家應該會想到採果機器人,或是辨識植物花朵名稱的APP等等,

其實就是讓機器學習如何看、辨識等是覺化的理解

但是你真的知道從0到100的辨識系統該如何建立嗎?

有哪些必備的軟體需要學習?又或者一定要哪些硬體呢?

歡迎曾經學過電腦視覺辨識的大家來分享一下吧!


14則留言

2020/02/19linda.lin

0


附上視覺辨識的示意圖

 


2020/02/20omnixri

1


電腦視覺發展至今已有數十年,近年來隨著硬體計算能力提升,產品價格下降,相關函式庫開發成熟,所以入手門檻就相對降低不少。從下面這張圖就可知道一個基本電腦視覺系統組成要有攝像頭、計算用主機、作業系統、開發工具,另外可搭配輸出入控制、通訊傳輸介面及顯示介面,如果需要運用深度學習這類較耗計算能力的算法時還可加上一些硬體加速裝置。

參考資料來源:https://omnixri.blogspot.com/2018/10/maker.html

電腦視覺系統架構_OmniXRI

 


2020/02/20omnixri

1


說到電腦視覺,以前要讀一堆數學加上學習各種程式寫作技巧才有機會實現,1990年開源電腦視覺函式庫OpenCV推出後就大大降低學習門檻,如今包含了各式各樣的應用,甚至也開始支援起深度學習這類的應用。

有興趣的朋友可以參考一下這份簡報,介紹了OpenCV的基本應用及開源深度學習工具OpenVINO。

參考資料來源:https://omnixri.blogspot.com/2019/12/20191225opencv.html

Image Processing_OmniXRI

 


2020/02/26laisan86

1


版主這麼問, 這坑很大耶! 我自己這幾年就跟著MakerPro、LASS社團裡面幾位專門做機器視覺的大大一邊玩一邊學

假如說需要的軟體、硬體, 那其實得問你的目標是甚麼以及你計畫要做到甚麼程度, 比方講我之前用來訓練辨識水果影像的, 就是我們北科大電子所的nVIDIA DGX-1! 因為我剛好有帳號~~但一般大大們恐怕沒有辦法用, 要不然的話光華商場賣有提供GPU的筆電其實也不錯, 像我的筆電還沒GPU, 也是可以跑訓練, 只是天荒地老而已...

所以, 得看你是要否自己訓練你要的標的物影像, 假設沒有而你都是使用已經訓練好的模型去跑, Intel NCS2神經棒對大多數應用來說就很夠了!

至於軟體方面, 我是自己都用Python3加上Inetl OpenVINO工具組, 另外我也用Google的Colab跑過好幾個, 看你要玩甚麼囉!

 

假如像我來說, 我平時主要就用Windows 10筆電, 至於Linux平台下目前機器視覺的方案比較多, 所以Windows 10下可以裝一些虛擬機器像是VMWare那種的軟體, 跑Linux然後掛那些方案看看

那像我是有人會給我免費單板玩的, 那就單板的SD掛Ubuntu最快! 不過要小心RAM夠不夠大就是, 假如是我建議, 64 bits的ARM系列微處理機加上至少2GB RAM, 當應用端可能很OK吧!

laisan86 2020/02/26 0



2020/02/27allen chen

0


雖然我沒有實際建立或是使用的經驗,不過還蠻常在網路上滑到相關的資訊,就有人說到其實2012年是電腦視覺的一大突破年,因為有了深度學習的出現以及相關應用。因此衍伸出人臉辨識、物件偵測、車輛追蹤和街景分析等等。

 


2020/02/27junwei01

0


就我的認知,電腦視覺其實就是許多領域的結合,像是有AI、數學計算、模型辨識、圖像辨識等,當然還有重要的深度學習以及機器學習拉~如果説到軟硬體方面,就有MATLAB、Python、Intel OpenVINO等。

 


2020/02/27zhoujieren8

0


哇噻!版主的這個問題也太廣了吧!

有點難回答,不過我超推Jack大大所整理的資料

之前在台北有參加過大大分享的課程,覺得很受用

好像就是這一場的內容:https://omnixri.blogspot.com/search/label/OpenVINO

是有關機器手臂配合3D感測視覺系統的介紹!

 

感謝分享,裡面解決了我在實作上遇到的一些問題!

kyriehong 2020/03/20 0



2020/03/01bioasura

0


說到電腦視覺系統大家應該會想到採果機器人,或是辨識植物花朵名稱的APP等等,

其實就是讓機器學習如何看、辨識等是覺化的理解

 

要做電腦視覺首先其實要懂一些影像基本的組成跟記錄方式, 過去會需要有許多的檔案格式讀取函示庫,

現在的時代似乎不用這些工具了, 比較有效的方法可以用OpenCV,裡面有許多已經寫好的影像檔案格式匯入函式指令.

當影像檔案匯入記憶體以後, 要懂得是RGBA影像內各個點紀錄的概念,

不同的程式語言或函式讀取完的每個點存在記憶體的顏色順序不一定相同(RGBA, BGRA... 不同函式最原始發展時候可能格式不一定相同, 

但是通常就是會回到電腦記憶體格式可以依照順序存取的每個點的狀態),

所以其實這時候就可以把所有點的某一個顏色記憶體取出來, 例如RGBA這樣的方式儲存一個點的時候, 可以就單獨讀取R(紅色顏色) 在每個點的多紅的程度,

通常R(0-255),G(0-255),B(0-255), A(0-255), 分別就是紅,綠,藍,透明度的每一個點所記錄的數值,

到這裡其實用簡單的矩陣存取的方式, 不管哪個程式語言, 只要能處理到這樣, 就可以算是完整的讀出一張影像了,

後面可以將這樣的影像資料在丟到OpenCV的各個不同的影像處理函式, 

例如各種不同的濾鏡, 就可以進行傳統的影像處理, 例如變成灰階, 或是去除雜訊的節點, 

以及找出顏色差異相鄰的點, 進行找出可能是物件邊緣區域的偵測演算法等濾鏡,

而這些濾鏡其實跟哪種語言並沒有關係,

 

只要OpenCV有提供, 去github上面找, 就會有機會找到不同程式語言轉換成呼叫OpenCV相對應API的程式開發套件,

這樣其實重點可能會回到你對那一個程式語言比較熟悉, 然後有沒有人替你寫好可以直接用那個程式語言寫好的程式呼叫開發函式,

舉例來說, NodeJS有OpenCV4NodeJS, 看起來會寫NodeJS就可以呼叫OpenCV, 其實也只是別人寫好了一個函式套件, 

讓你可以用NodeJS呼叫OpenCV4NodeJS之後, 再呼叫了OpenCV底層真正的影像處理函式.

而影像處理函式過去其實是許多的研究論文對於影像訊號分析的研究成果, 

現在OpenCV已經把常用的論文所發展好的數學矩陣的操作方式寫好變成了一套函式庫,

所以其實不用完全懂原始的影像處理的概念也可以透過OpenCV呼叫某一個指令, 

就相當於透過了某一篇論文的方法操作了一張原始儲存在記憶體裡面的影像,

 

了解了上面的概念以後, 其實我們就可以用許多OpenCV的濾鏡指令, 分別的針對同一張圖片透過幾次的濾鏡的操作, 就有機會得到一些有趣的應用.

目前比較方便的作法是使用Python去呼叫OpenCV的函式, 相對的可以透過Python其他矩陣轉換的指令, 

以及圖表輸出的工具, 會比較容易觀察在處理前的原圖與處理過後的每個指令的輸出結果所產生的變化,

以上這些過程我們一般可以稱為影像處理, 一張圖在大部份的時候會需要先進行部份的影像處理以後, 會比較容易進行後面的分析跟比較 (找出相關可用的特徵),

 

過去OpenCV 3.x發展的版本大部分圍繞在濾鏡的操作, 而在OpenCV 4.x之後, 加入了類神經網路的分析套件, 可以比較方便的進行影像資料的預測與操作, 

其實過去OpenCV 4.x之前, 大部分的人會將自行的將影像資料透過SVM, 或是自己找一個類神經網路的套件, 將影像資料自行加上類別的標示, 之後透過機器學習的方式,

開始進行資料訓練, 以及後續預測的演算法, 而前面描述的影像資料濾鏡的操作過程, 就是有效的幫助在進行影像資料進行標記之前, 可進行一些資料的雜訊處理或特徵抽取的有效方式.

 

 


2020/03/02shuechang886

0


在還不認識視覺辨識系統之前,我就看過用excel去做AI影像辨識的文章,在這裡(https://buzzorange.com/techorange/2018/08/13/excel-ai/),不過說實在的現在技術越來越發達,只要透過OpenVINO這個大家常常使用的開源電腦視覺推論及神經網路工具包,電腦視覺辨識就可以上手,並且進行一系列的開發與測試,真的超級方便!

 


2020/03/02hannibal34

0


python可以應用在許多領域上面,

從機器人研發、TensorFlow、人工智慧平台、網頁開發以及多媒體處理

以上這些都可以透過學習python來進一步利用

然而python也是建立電腦視覺系統強大的使用工具

你可以結合python、Arduino與OpenCV來整合以製作出視覺辨識的應用與物件!

 


2020/03/03ypei91510

0


以上各位大大分享的觀點和想法都讓小的非常受用,但是其實我覺得想要建立視覺辨識系統,首先需要先想清楚你的目的以及使用的場域和對象等等,才能從中更有效的挑選學習的資訊。

 


2020/03/04bioasura

0


當影像資料取得以後, 同時會了OpenCV部分重要的概念以後(先不要求全部都會, 可以針對某一些問題常用的部分練習), 例如erosion dilation (https://ithelp.ithome.com.tw/articles/10205488), 或者是彩色轉灰階, 或是最簡單的histogram的繪製方式, 然後了解如何將灰階轉換成二元影像的一些概念

後面其實可以直接練習用OpenVINO來做一些影像識別跟影片動態物件偵測的練習. (感覺這樣會比較有效率, 真正要做事情的話), OpenVINO的資料可以在github上面取得(教學文件與練習用的資料), https://github.com/opencv/dldt, 這裡面有程式碼, 有教學文件(pdf), 有練習用的影片資料(video), intel本身對於OpenVINO最新的版本的資料也全部都在裡面, 是持續更新的.

 

https://software.intel.com/en-us/openvino-toolkit

這一個是openvino的官方網站, 感覺透過openvino的架構來學習影像部分的應用, 會相對的比較簡單的可以知道目前有哪些已經訓練好的各種影像人工智慧模型可以使用, openvino是一個開發架構, 可以配合open model zoo來做大量更種不同影像或攝影機即時資料的練習.

 

https://github.com/opencv/open_model_zoo

這個網站的資料搭配openvino , 可以省下非常多自己找訓練資料模型的時間

 


2020/03/20kyriehong

0


之前在資策會的智慧系統整合人才養成班時曾經上過一個月有關樹莓派OpenCV影像辨識的課程,當時練習的是以攝像鏡頭辨識靜態車牌,其實辨識率已經滿不錯的,但還是對背後的原理很感興趣,謝謝上面各位大大的資訊分享!

 


2020/03/20laisan86

0


其實說起來實際開發倒也沒挺難啦~像這個就是我們LASS社團大大們去收集的彩色辣椒照片,然後用labelImg這類軟體自己一個個去標示,再透過Yolo V3訓練以後,就成了能在Windows 10 PC上執行的彩色辣椒影像辨識程式 ==> https://www.youtube.com/watch?v=bEMSMA1HgZg

比較麻煩是訓練的時候,剛好我是有我們台北科大電子所的nVIDIA DGX-1帳號可以用,所以訓練起來還好,不然要是有興趣的大大們可以找台有GPU的自己訓練起來看看

 


最新發表
google map的單車模式,是如何挑選屬於腳踏車的路線?
Google 前陣子宣布正式在台推出地圖單車模式,為單車族提供更多更便利的交通導引,宣稱不再需要交叉參考機車或步行模式,好奇系統是如何挑選只適合腳踏車行走的安全路線?
流行語彙
請問是否有機會先了解這個題目之“流行語彙”呢?
AI能夠如何降低交通事故發生率?
馬路如虎口!國內常會看到行人或騎士因位於駕駛的視線死角進而釀成悲劇的新聞,如今AI不斷進步,有沒有辦法用來避免交通事故的發生呢?
Google Map預測到達時間的功能原理和資料庫從哪來?
越來越多開車族使用Google Map來取代汽車內建的導航系統,除了操作介面熟悉之外,更多人使用Google Map的原因是因為Google Map能避開塞車路段,提供最佳路徑的建議,並準備的預估開車的到達時間,這是怎麼辦到的呢?
自駕車的發展看來是會一直持續下去,那還有甚麼交通工具可以變成AI自動化呢?
第一次知道自駕能實現在現實生活中是看了太陽的後裔,裡面男二用的那招讓我暗自決定以後買車要偷用一下,anyway 最近剛好看到新竹工研院自駕車要上路測試,甚至還拿到交通部發布的車牌,覺得實在太厲害了吧!新聞連結(https://www.cna.com.tw/news/ahel/201909050306.aspx?fbclid=IwAR1fuQIkR-Qdh34gbRGfgZmRqvG1U_G_cpml2HE36D9oO2IawCBILz0rE30&fbclid=IwAR2j1fMnZfxgOg5OP0FbzSqHcmScp0xc5JV8rtnfboD6Jkn0N-zR4iMPiFY) 由此看來自駕車上路是很可以期待的未來,但除了自駕車外大家有想過還有什麼交通工具可以自動化嗎?還是有什麼自駕車補充內容嗎?交流一下吧

熱門發表
如果提供影像辨識的訓練資料不足,AI電腦視覺技術是不是就派不上用場了?
目前深度學習很火,從醫療、零售、倉儲、工業到監控等,好像各種影像辨識都能用到,但往往在一個地方卡關,那就是沒有足夠大量且有代表性的資料提供"訓練",有沒有可能用少量資料來達成好的辨識效果呢?
Time is money!如何讓製程最佳化、讓生產更簡單?
從網路時代到物聯網興起,工業 4.0 強調自動化與生產線聯網功能,而新一代的智慧工廠發展,則更仰賴邊際運算、AI 和數據分析。然而,究竟要如何讓製程最佳化,使得生產速度提升呢?
【解題建議】利用OpenPose來解決骨架(姿態、行為)分析
此次出題有很多項目和姿態(行為)分析有關(如下所示),而其根本就是要先找出人的骨架,再加上時間序列來分析骨架各特徵點的位移,進而判定使用者的動作(類型)。 【華碼數位】 體適能動作與姿勢辨識:以影像分析運動者姿態。 【宸訊科技】 利用動態影像辨識技術完成對農民於田間作業之行為分類與分析並能結合AI技術、配合專家互動,持續調整分類學習精準度:從串流影像中分析農業作業姿態(行為) 。 【集思動力】 iSEM多裂肌脊椎運動AI體況分析應用:透過影像、視頻分析人體動作姿態是否滿足特定位置、角度。 【百一電子】 AI電腦視覺辨識男生/女生的情緒與動作事件 :透過視頻分析十六種動作行為。 【良品嚴選】 客戶輪廓分析與服務人員及時輔助系統:從視頻分析客戶在店面行為以提供智能零售。 【良品嚴選】 線上連結線下新零售之AI分析:從視頻中分析行銷手段是否改變消費者行為。 【艾爾塔科技】 線下零售數據消費者行為洞察與全通路數據整合:透過人流資訊分析及預測消費者行為。 【卡訊電子】 智慧教室語音與影像偵測數據AI分析:建立語音、影像辨識老師、學生行為以增進學習效益。 而在開源技術中以CMU的OpenPose最為知名,包含有身體、頭(臉部)、手等部位,有興趣的朋友可以參考一下 https://github.com/CMU-Perceptual-Computing-Lab/openpose
請問,「老闆來了!」偵測器該怎麼用開源AI做到?
小弟有個問題來請教AIGO社群的大大們,我有個有點Crazy的點子,想在老闆在我的座位附近出現時,馬上在電腦前跳出警示訊息,當然,我可沒在做壞事....XD,只是想有些心理準備,你知道的~~ 當然,只辨識出老闆來了沒對各位大大應該挑戰度太低,那可否再辨識出老闆現在的心情好不好呢? 不知能否推薦開源又好上手的自架作法呢?
「魚兒魚兒水中游」,有辦法辨識魚缸中魚的種類、數量的變化,甚至是活動力嗎?
最近在搞魚菜共生,想用"聰明"的方法來觀察魚缸中魚兒的數量變化(有沒有死魚),再與水質狀況(如含氧量)做關聯,想用深度學習與影像辨識來解決這問題,甚至進一步分析出魚的個別及群體活動力,不知各位大大有沒有相關的經驗或作法可供參考呢?

主題分類