訂閱
糾錯
加入自媒體

使用Python+OpenCV實現(xiàn)圖像數(shù)據(jù)采集

通常,數(shù)據(jù)科學(xué)家會建立一個圖像識別模型,觀察其準(zhǔn)確性,如果足夠高,就表示工作完成了。

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

下一步,輸入pip install opencv-python

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

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

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

發(fā)表評論

0條評論,0人參與

請輸入評論內(nèi)容...

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

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

暫無評論

暫無評論

    掃碼關(guān)注公眾號
    OFweek人工智能網(wǎng)
    獲取更多精彩內(nèi)容
    文章糾錯
    x
    *文字標(biāo)題:
    *糾錯內(nèi)容:
    聯(lián)系郵箱:
    *驗 證 碼:

    粵公網(wǎng)安備 44030502002758號