訂閱
糾錯
加入自媒體

使用Python+OpenCV實現圖像數據采集

2020-05-08 17:53
磐創AI
關注

通常,數據科學家會建立一個圖像識別模型,觀察其準確性,如果足夠高,就表示工作完成了。

然而,自從我13歲開始學習機器學習,我就一直不明白這一點,為什么要花費所有的時間來建立最好的模型——只是為了滿足于一個數字在本文中,將提供代碼并指導你如何通過構建與模型交互的拍照接口來真正完成項目。安裝cv2(OpenCV)我們將使用的圖像庫是cv2。因為cv2不能在Kaggle這樣的在線平臺上工作,所以它必須在你的計算機上本地完成。然而,模型的權重仍然可以在Kaggle上進行訓練,以.h5文件的形式下載(基于Keras/TensorFlow)并加載。在Anaconda或命令提示符中鍵入conda create -n opencv python=3.6這將在Python版本3.6中創建一個名為opencv的新環境,可以用正在使用的任何版本替換它。

下一步,輸入pip install opencv-python

你已經成功安裝了cv2! 現在你可以開始拍照了。用CV2拍照首先,導入庫。import cv2接下來,我們必須創建一個視頻捕獲實例。你可以測試實例是否能夠連接到你的相機(如果沒有,請檢查你的設置以確保應用程序可以訪問它)。cap = cv2.VideoCapture(0)if not (cap.isOpened()):    print("Video device not connected.")最后,是時候拍照了。如果要控制拍攝照片的時間,第一行將指定任意變量和輸入。除非輸入了某些內容(如按“回車”),然后下一行開始拍照,否則程序無法繼續。拍攝圖像時,你可能會看到網絡攝像頭指示燈很快出現。第三行關閉連接,第四行銷毀訪問相機的所有實例。arb = input('Press enter to take picture.')ret, frame = cap.read()cap.release()cv2.destroyAllWindows()圖像中的數據存儲在frame中。可以使用以下代碼將其轉換為數組:cv2_im = cv2.cvtColor(frame,cv2.COLOR_BGR2RGB)調用cv2_im.shape時,輸出為(480640,3)。因此,圖像(對于我的相機)是480×640像素(3表示“深度”, 每個像素中有三個值說明創建最終像素顏色需要包含紅色、綠色和藍色)。

現在圖像已轉換為數組,matplotlib的imshow()可以顯示它。import matplotlib.pyplot as pltplt.imshow(cv2_im)plt.show()

1  2  下一頁>  
聲明: 本文由入駐維科號的作者撰寫,觀點僅代表作者本人,不代表OFweek立場。如有侵權或其他問題,請聯系舉報。

發表評論

0條評論,0人參與

請輸入評論內容...

請輸入評論/評論長度6~500個字

您提交的評論過于頻繁,請輸入驗證碼繼續

暫無評論

暫無評論

文章糾錯
x
*文字標題:
*糾錯內容:
聯系郵箱:
*驗 證 碼:

粵公網安備 44030502002758號

电竞投注竞彩app