最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于OpenMV的圖像識(shí)別之?dāng)?shù)字識(shí)別功能

 更新時(shí)間:2021年11月05日 11:30:01   作者:酷酷的小婷  
OpenMV是一個(gè)開(kāi)源,低成本,功能強(qiáng)大的機(jī)器視覺(jué)模塊。以STM32F427CPU為核心,集成了OV7725攝像頭芯片,在小巧的硬件模塊上,用C語(yǔ)言高效地實(shí)現(xiàn)了核心機(jī)器視覺(jué)算法,提供Python編程接口,對(duì)OpenMV的圖像識(shí)別之?dāng)?shù)字識(shí)別相關(guān)知識(shí)感興趣的朋友一起看看吧

基于OpenMV的圖像識(shí)別

OpenMV簡(jiǎn)介

什么是OpenMV

OpenMV是由美國(guó)克里斯團(tuán)隊(duì)基于MicroPython發(fā)起的開(kāi)源機(jī)器視覺(jué)項(xiàng)目,目的是創(chuàng)建低成本,可擴(kuò)展,使用python驅(qū)動(dòng)的機(jī)器視覺(jué)模塊。OpenMV搭載了MicroPython解釋器,使其可以在嵌入式端進(jìn)行python開(kāi)發(fā),關(guān)于MicroPython可以參照我之前的博客專(zhuān)欄:MicroPython. OpenMV基于32位,ARM Cortex-M7內(nèi)核的OpenMV-H7, 并結(jié)合各種攝像頭,可以進(jìn)行多種機(jī)器視覺(jué)應(yīng)用的實(shí)現(xiàn),比如人臉檢測(cè),物體分類(lèi)等。

OpenMV是一個(gè)開(kāi)源,低成本,功能強(qiáng)大的機(jī)器視覺(jué)模塊,以STM32F427CPU為核心,集成了OV7725攝像頭芯片,在小巧的硬件模塊上,用C語(yǔ)言高效地實(shí)現(xiàn)了核心機(jī)器視覺(jué)算法,提供Python編程接口 。同時(shí) OpenMV也是一個(gè)可編程的攝像頭,通過(guò)Python語(yǔ)言可實(shí)現(xiàn)你想要的邏輯。而且攝像頭本身也內(nèi)置了一些圖像處理的算法,使用起來(lái)也更加的方便,僅需要寫(xiě)一些簡(jiǎn)單的Python代碼,即可輕松的完成各種機(jī)器視覺(jué)相關(guān)的任務(wù)。在此,我們通過(guò)OpenMV實(shí)現(xiàn)了數(shù)字識(shí)別。

在打開(kāi)OpenMV攝像頭鏈接電腦時(shí),會(huì)彈出讓你升級(jí)的窗口

這時(shí)切忌一定要選擇Cancel鍵,

不能選擇升級(jí)!?。?/strong>

不能選擇升級(jí)?。?!

不能選擇升級(jí)?。?!

在這里插入圖片描述

然后在進(jìn)行下一步的操作

OpenMV中文入門(mén)視頻教程

一、數(shù)字識(shí)別

數(shù)字識(shí)別的基礎(chǔ)是需要配置使用NCC模板匹配。通過(guò)NCC模板的匹配可把

需要識(shí)別的數(shù)字模板圖片保存到SD卡中,然后可進(jìn)行下一步的識(shí)別。

1、可以通過(guò)打開(kāi)模板匹配的歷程來(lái)直接打開(kāi)代碼進(jìn)行使用

在這里插入圖片描述

在這里插入圖片描述

2、如果運(yùn)行出現(xiàn)這個(gè)窗口就說(shuō)明沒(méi)有保存模板圖片

所以這時(shí)就需要?jiǎng)?chuàng)建一個(gè)模板圖片:創(chuàng)建模板圖片的詳細(xì)視頻教程

創(chuàng)建一個(gè)模板圖片首先要打開(kāi)一個(gè)helloworld歷程文件

在這里插入圖片描述

在這里插入圖片描述

然后在helloworld歷程文件中進(jìn)行匹配0~9這樣的基本數(shù)字,對(duì)這些數(shù)字進(jìn)

行一一截取,用它們來(lái)作為我們的模板圖片。

在右邊的Frame Buffer框中進(jìn)行截取,注意:不要點(diǎn)Zoom,因?yàn)閆oom展示

的是放大后的效果,在識(shí)別時(shí)可能會(huì)導(dǎo)致失幀。

然后點(diǎn)擊左鍵選出一個(gè)框(如圖所示)

在這里插入圖片描述

選完框后點(diǎn)擊右鍵選擇Save Image selection to PC

在這里插入圖片描述

最后把截取的數(shù)字圖片進(jìn)行保存,一定要保存到OpenMV的SD卡中,保存的文件名可自己

定義

在這里插入圖片描述

3、把template.pgm改為你創(chuàng)建的模板圖片的名稱(chēng)

在這里插入圖片描述

(注意:模板圖片的格式一定要是pgm的格式,轉(zhuǎn)換格式可以在

https://convertio.co/zh/bmp-pgm/網(wǎng)站直接進(jìn)行轉(zhuǎn)換)

4、改完之后就可以運(yùn)行

下面展示一些 有關(guān)數(shù)字識(shí)別的代碼。

此代碼為源代碼,可根據(jù)自己的需求在上面進(jìn)行改動(dòng)。

代碼來(lái)源:數(shù)字識(shí)別代碼,可直接引用并修改

# Template Matching Example - Normalized Cross Correlation (NCC)
#
# This example shows off how to use the NCC feature of your OpenMV Cam to match
# image patches to parts of an image... expect for extremely controlled enviorments
# NCC is not all to useful.
#
# WARNING: NCC supports needs to be reworked! As of right now this feature needs
# a lot of work to be made into somethin useful. This script will reamin to show
# that the functionality exists, but, in its current state is inadequate.

import time, sensor, image
from image import SEARCH_EX, SEARCH_DS

# Reset sensor
sensor.reset()

# Set sensor settings
sensor.set_contrast(1)
sensor.set_gainceiling(16)
# Max resolution for template matching with SEARCH_EX is QQVGA
sensor.set_framesize(sensor.QQVGA)
# You can set windowing to reduce the search image.
#sensor.set_windowing(((640-80)//2, (480-60)//2, 80, 60))
sensor.set_pixformat(sensor.GRAYSCALE)

# Load template.
# Template should be a small (eg. 32x32 pixels) grayscale image.
template8 = image.Image("/8.pgm")
template9 = image.Image("/9.pgm")
clock = time.clock()

# Run template matching
while (True):
    clock.tick()
    img = sensor.snapshot()

    # find_template(template, threshold, [roi, step, search])
    # ROI: The region of interest tuple (x, y, w, h).
    # Step: The loop step used (y+=step, x+=step) use a bigger step to make it faster.
    # Search is either image.SEARCH_EX for exhaustive search or image.SEARCH_DS for diamond search
    #
    # Note1: ROI has to be smaller than the image and bigger than the template.
    # Note2: In diamond search, step and ROI are both ignored.
    r 8= img.find_template(template8, 0.70, step=4, search=SEARCH_EX) #, roi=(10, 0, 60, 60))
    if r8:
        img.draw_rectangle(r8)
   r 9= img.find_template(template9, 0.70, step=4, search=SEARCH_EX) #, roi=(10, 0, 60, 60))
    if r9:
        img.draw_rectangle(r9)

    print(clock.fps())

運(yùn)行的結(jié)果如圖所示

在這里插入圖片描述

到此這篇關(guān)于基于OpenMV的圖像識(shí)別之?dāng)?shù)字識(shí)別的文章就介紹到這了,更多相關(guān)OpenMV圖像識(shí)別內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

永仁县| 平和县| 句容市| 三亚市| 青神县| 射洪县| 临夏市| 房产| 石楼县| 棋牌| 柞水县| 宜宾市| 岱山县| 晋城| 城市| 威信县| 宁都县| 安达市| 东港市| 盐边县| 芜湖市| 平罗县| 铜山县| 永德县| 南丰县| 麟游县| 鹤岗市| 刚察县| 南京市| 香格里拉县| 南汇区| 衡东县| 麻江县| 孟村| 盐城市| 五华县| 镇宁| 东乌珠穆沁旗| 怀柔区| 扬中市| 遂昌县|