“MicroMV 获取图像”的版本间的差异
第19行: | 第19行: | ||
img.draw_cross(50,50,size=10,color=(0,0,255)) #画蓝色十字,用来定位颜色识别点 | img.draw_cross(50,50,size=10,color=(0,0,255)) #画蓝色十字,用来定位颜色识别点 | ||
</source> | </source> | ||
− | :: | + | |
+ | ::示例结果如下图,从图中可见蓝色光标置在了红色物体上,图左下方串口监视窗口内打印了其RGB数值 | ||
+ | |||
::[[File:MicroMV_getPixel.jpg|800px|MicroMV getPixel]]<br> | ::[[File:MicroMV_getPixel.jpg|800px|MicroMV getPixel]]<br> | ||
第26行: | 第28行: | ||
**'''image.width()''' 返回图像的宽度(像素) | **'''image.width()''' 返回图像的宽度(像素) | ||
**'''image.height()''' 返回图像的高度(像素) | **'''image.height()''' 返回图像的高度(像素) | ||
− | **'''image.format()''' 灰度图会返回 sensor. | + | **'''image.format()''' 灰度图会返回 sensor.GRAYSCALE,数值为3,彩色图会返回 sensor.RGB565,数值为1 |
**'''image.size()''' 返回图像的大小(byte) | **'''image.size()''' 返回图像的大小(byte) | ||
+ | |||
::示例代码如下: | ::示例代码如下: | ||
第44行: | 第47行: | ||
print(img.width(),img.height(),img.format(),img.size()) | print(img.width(),img.height(),img.format(),img.size()) | ||
</source> | </source> | ||
− | :: | + | ::示例结果如下图,左下角串口监视窗口打印出获取的信息 |
− | ::[[File:MicroMV_getWidth.png|MicroMV getWidth]]<br> | + | ::[[File:MicroMV_getWidth.png|800px|MicroMV getWidth]]<br> |
2017年10月27日 (五) 09:23的版本
MicroMV图像基本信息的获取与设置
获取像素点值
- image.get_pixel(x, y)
- 对于灰度图: 返回(x,y)坐标的灰度值.
- 对于彩色图: 返回(x,y)坐标的(r,g,b)的tuple.
- 以下示例为获取坐标点(50,50)的色彩值并打印出来的示例,蓝色十字标的中心为像素定位点,具体代码如下:
import sensor sensor.reset() sensor.set_pixformat(sensor.RGB565) sensor.set_framesize(sensor.QQVGA) sensor.skip_frames() while(True): img = sensor.snapshot() print(img.get_pixel(50,50)) #获取坐标点(50,50)的色彩值并打印出来 img.draw_cross(50,50,size=10,color=(0,0,255)) #画蓝色十字,用来定位颜色识别点
- 示例结果如下图,从图中可见蓝色光标置在了红色物体上,图左下方串口监视窗口内打印了其RGB数值
获取图像的宽度和高度
- image.width() 返回图像的宽度(像素)
- image.height() 返回图像的高度(像素)
- image.format() 灰度图会返回 sensor.GRAYSCALE,数值为3,彩色图会返回 sensor.RGB565,数值为1
- image.size() 返回图像的大小(byte)
- 示例代码如下:
import sensor sensor.reset() sensor.set_pixformat(sensor.RGB565) sensor.set_framesize(sensor.QQVGA) sensor.skip_frames() while(True): img = sensor.snapshot() #串口依次打印图像宽度、图像高度、图像格式、图像大小 print(img.width(),img.height(),img.format(),img.size())
- 示例结果如下图,左下角串口监视窗口打印出获取的信息
- MicroMV getWidth
设置像素点
- image.set_pixel(x, y, pixel)
- 对于灰度图: 设置(x,y)坐标的灰度值.
- 对于彩色图: 设置(x,y)坐标的(r,g,b)的值.
- 以下示例为在图像上连续设置50个像素点颜色为红色的代码,显示出来的效果为一条红色直线
import sensor sensor.reset() sensor.set_pixformat(sensor.RGB565) sensor.set_framesize(sensor.QVGA) sensor.skip_frames() while(True): img = sensor.snapshot() for i in range(50): img.set_pixel(10+i,40,(255,0,0))