Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

Sipeed Maix Bitで遊ぶ その2:最初のアプリ(長方形の検出)

shuzo-kino.hateblo.jpの続きです。

最初はWindowsでやろうかとも思いましたが……結局VirtualBox上のUbuntu18系に構築しました。

実際のところ

長方形を検出するアプリ

さて、本題です。
大本のスクリプトではM1をベースにしてることもあって、SDカードをつかって動画をとってました。
私のつかってるBitではSDカードのスロットがデフォではないので、そこの部分を消しています。

#find rects
import sensor, image, lcd, time

lcd.init()
sensor.reset()
sensor.set_contrast(1)
sensor.set_gainceiling(16)
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QVGA)
sensor.run(1)
sensor.skip_frames(30)
tim = time.ticks_ms()

while(time.ticks_diff(time.ticks_ms(), tim)<30000):
    img = sensor.snapshot()
    for r in img.find_rects(threshold = 18000,roi=(80,60,160,120)):
        img.draw_rectangle(r.rect(), color = (255, 0, 0))
        for p in r.corners(): img.draw_circle(p[0], p[1], 5, color = (0, 255, 0))
    img.draw_rectangle(80,60,160,120)
    lcd.display(img)
print("finish")
lcd.clear()

動きはこんな塩梅。
焦点の調整とゲインの詰めがあまく、チラチラしてますが形状を認識しています。
f:id:shuzo_kino:20200520214802p:plain
ミニ画面の方も動的に更新されております。

まともに動いている動画はこちら。
youtu.be