openmvsensor调节
https://docs.singtown.com/micropython/zh/latest/openmvcam/library/omv.sensor.html
所有有关sensor的调节都在文档里,对比度,亮度,饱和度,曝光等。
openmv无法同时保存灰度和彩色图像该如何解决?
在OpenMV4 Plus上是可以的。
import sensor, image, time
sensor.reset()
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QVGA)
sensor.skip_frames(time = 2000)
clock = time.clock()
while(True):
clock.tick()
color = sensor.snapshot()
grayscale = cplor.copy().to_grayscale()
print(clock.fps())
sensor Timeout怎么办
你看看是不是sensor模块没安装稳定,螺丝是不是没装。如果不是的话,就寄回维修。
openmv的库函数怎么在电脑上打开查看?比如image,sensor库等
image库,sensor库,函数不是python语言写的,是c语言写的。编译成二进制烧录在电路板里。
选择兴趣区然后大概率会报错 是什么原因啊报错内容如下
我使用官方的板子,OpenMV4 H7 Plus,sensor OV5640,不是你这个报错。你确定你用的是官方的板子?
我写的程序想把转换出的整形输出,但不知道哪里错了😣
import sensor, image
from pyb import UART
uart = UART(3, 115200)
uart.init(115200,bits=8,parity=None,stop=1)
sensor.reset()
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QQVGA) # can be QVGA on M7...sensor.skip_frames(30) # 修改sensor配置之后, 跳过30帧
sensor.set_auto_gain(False)
while(True):
img = sensor.snapshot()
img.lens_corr(1.8)
lit=[0]
ti="0"
pats="0"
sui=[0,0,0]
for code in img.find_qrcodes():
for i in lit:
for i in code.payload():
lit=[i]
ti=lit[0]
pats=int(ti)
sui=pats
print(sui)
uart.write(sui)/***就是这里错了,其他的都对
二维码识别
主要想解决二维码提取信息的时候 提取出 payload对应的信息
AttributeError: 'qrcode' object has no attribute 'get' 报错
代码
import sensor, image
sensor.reset()
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QQVGA) # can be QVGA on M7...
sensor.skip_frames(30) # 修改sensor配置之后, 跳过30帧
sensor.set_auto_gain(False) # must turn this off to prevent image washout...
while(True):
img = sensor.snapshot()
img.lens_corr(1.8) # strength of 1.8 is good for the 2.8mm lens.
for code in img.find_qrcodes():
print(code.get("payload"))
向串口发送列表
import sensor, image, time
from pyb import UART
sensor.reset() # Reset and initialize the sensor.
sensor.set_pixformat(sensor.RGB565) # Set pixel format to RGB565 (or GRAYSCALE)
sensor.set_framesize(sensor.QVGA) # Set frame size to QVGA (320x240)
sensor.skip_frames(time = 2000) # Wait for settings take effect.
clock = time.clock()
uart=UART(3,9600)# Create a clock object to track the FPS.
uart.init(9600,bits=8,parity=None,stop=1)
list=[1,1,2]
while(True):
clock.tick()
uart.write(list)
我现在这样写他会出现 需要具有缓冲协议的对象,该怎么改。
使用image.save()保存图片大概需要1s,请问有没有什么更快的保存办法?
测试代码
import sensor, image, time
import utime
sensor.reset() # Reset and initialize the sensor.
sensor.set_pixformat(sensor.RGB565) # Set pixel format to RGB565 (or GRAYSCALE)
sensor.set_framesize(sensor.QVGA) # Set frame size to QVGA (320x240)
sensor.skip_frames(time = 2000) # Wait for settings take effect.
while(True):
img = sensor.snapshot() # Take a picture and return the image.
start = utime.ticks_ms()
img.save('example.bmp')
delta = utime.ticks_diff(utime.ticks_ms(), start)
print(delta)
测试结果:250ms
250
244
244
244
241
240
245
240
240
图像大小:QVGA
SD卡:白色 闪迪 8G C10
用openmv对图像进行均值滤波算法处理,处理之后的像素点的值和处理前怎么是一样的呢,代码和截图如下
import sensor, image, time
sensor.reset() # 初始化sensor
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QQVGA)
sensor.skip_frames(time = 2000)
clock = time.clock()
while(True):
clock.tick()
img = sensor.snapshot() # 拍一张照片,返回图像
img1 = img.mean(2)#均值滤波后的图像
for i in range(0,img.width()):
for j in range(0,img.height()):
tuple1 = img.get_pixel(i,j)
tuple2 = img1.get_pixel(i,j)
tuple3 = (tuple1[0]-tuple2[0],tuple1[1]-tuple2[1],tuple1[2]-tuple2[2])
print(tuple1)
print(tuple2)
print(tuple3)
print(clock.fps())