2019年2月14日 星期四

Dependency Walker

最近寫 CUDA 程式, 做Wrapper給C#呼叫,在自己電腦上可以執行的程式, 整包複製到其他電腦上, 卻無法執行, 原來是牽涉到DLL的相依性,自己寫的DLL還會呼叫其他DLL, 以及版本問題,  發現這個 Dependency Walker 好用工具, 可以找出缺了甚麼檔案, 才把問題解決.


2019年1月27日 星期日

2018年12月12日 星期三

keras-yolo3 連接 ipcam 進行物件辨識


接續前一篇 keras-yolo3 測試 ,這篇說明如何連接具有 onvif 協定之 ipcam.

要連接 ipcam 首先要找到連接的 uri,如果手冊沒有,可以先下載 ONVIF Device Manager,先用瀏覽器登入 ipcam 後找到 port 設定,然後手動方式將 ipcam 網址加入 ONVIF Device Manager 的裝置列表,輸入帳號密碼,然後手動連線,點選中間欄位的 Live Video, 影像串流就會顯示在右方窗格,下方即可看到 uri, 例如:

2018年12月9日 星期日

keras-yolo3 測試

YOLO (You Only Look Once) 是關於物件偵測的類神經網路演算法,作者 Joseph Redmon 以 darknet 架構實作,輕量、依賴少、演算法高效率,在工業應用領域很有價值,例如行人偵測、工業影像偵測等等。官網寫的非常詳盡,照著操作便能完成 Yolo 初步的 detection 和 training這裡只測試另一款使用 keras 架構實作的 keras-yolo3 的操作步驟。

2018年11月19日 星期一

[AI] ILSVRC12 數據集轉成適用於 AlexNet 的 TFRecord 格式

ILSVRC12 數據集包含 1000 個種類, 共約140GB. 剛開始實驗時, 選10種就好, 之後再依照硬體能力增加. 進行 AI 辨識前, 先將其轉成 tensor-flow 的資料格式,  實作步驟如下:
(1) 下載資料集
(2) 將 Trainning Set 全部解開, 放在 All 目錄
(3) 將要使用的類別複製到 Train 目錄下
(4) 將 Train 目錄的圖檔轉成 TFRecord 格式
(5) 將 TFRecord 格式恢復為圖型, 檢查是否有誤
(6) 辨識前將圖型縮放至適當大小

2018年9月1日 星期六

[OpenCV] 連接 ONVIF 之 IPCam


ONVIF(Open Network Video Interface Forum,開放式網路視訊介面論壇)是目前監控產業的重要國際標準,採用統一開放的標準作為網路攝影機、影像伺服器、門禁設備及中央管理系統之溝通協定。 OpenCV 的 VideoCapture 可支援 rtsp 協定的讀取, url 格式為:

    rtsp://username:password@ip:port/profile
 
程式 main.cpp 將讀取的影像放入 Mat, 可另做影像處理, 程式碼如下: