MicroMV 统计信息
图像的统计信息
如果想知道一个区域内的平均颜色或者占面积最大的颜色,可以使用统计信息
统计信息Statistics
- image.get_statistics(roi=Auto)
- 其中roi是目标区域。注意,这里的'roi='必须要标明出来,roi参数的格式是(x, y, w, h)的tupple.
- x:ROI区域中左上角的x坐标
- y:ROI区域中左上角的y坐标
- w:ROI的宽度
- h:ROI的高度
- 例如:img.get_statistics(roi=(0,0,10,20))
- 其中roi是目标区域。注意,这里的'roi='必须要标明出来,roi参数的格式是(x, y, w, h)的tupple.
- 获取灰度的参数值
- statistics.mean() 返回灰度的平均数(0-255) (int)。你也可以通过statistics[0]获得。
- statistics.median() 返回灰度的中位数(0-255) (int)。你也可以通过statistics[1]获得。
- statistics.mode() 返回灰度的众数(0-255) (int)。你也可以通过statistics[2]获得。
- statistics.stdev() 返回灰度的标准差(0-255) (int)。你也可以通过statistics[3]获得。
- statistics.min() 返回灰度的最小值(0-255) (int)。你也可以通过statistics[4]获得。
- statistics.max() 返回灰度的最大值(0-255) (int)。你也可以通过statistics[5]获得。
- statistics.lq() 返回灰度的第一四分数(0-255) (int)。你也可以通过statistics[6]获得。
- statistics.uq() 返回灰度的第三四分数(0-255) (int)。你也可以通过statistics[7]获得。
- 获取LAB三个通道的平均数,中位数,众数,标准差,最小值,最大值,第一四分数,第三四分数如下:
- l_mean,l_median,l_mode,l_stdev,l_min,l_max,l_lq,l_uq,
- a_mean,a_median,a_mode,a_stdev,a_min,a_max,a_lq,a_uq,
- b_mean,b_median,b_mode,b_stdev,b_min,b_max,b_lq,b_uq,
示例:
import sensor, image, time sensor.reset() # 初始化摄像头 sensor.set_pixformat(sensor.RGB565) # 格式为 RGB565. sensor.set_framesize(sensor.QVGA) sensor.skip_frames(10) # 跳过10帧,使新设置生效 sensor.set_auto_whitebal(False) ROI=(120,100,20,20) #设置感兴趣区域 while(True): img = sensor.snapshot() #获取图像 statistics=img.get_statistics(roi=ROI) #获取感兴趣区域的统计信息 color_l=statistics.l_mode() #取感兴趣区域内的LAB的L通道的众数 color_a=statistics.a_mode() #取感兴趣区域内的LAB的A通道的众数 color_b=statistics.b_mode() #取感兴趣区域内的LAB的B通道的众数 print(color_l,color_a,color_b)#将获取到的值打印出来 img.draw_rectangle(ROI) #在感兴趣区域上画边框