写在前面:本人非专业人员,仅为此类爱好者。分享一下新手在体验K210的过程。入门踩坑(各种跳坑),希望大佬帮忙填上一二~。(所选设备都是K210。都想体验一下。欢迎大佬指点。)因为之前有些硬件使用基础所以K210只使用视觉相关功能。
图像模块用于机器视觉。移植于 openmv, 与 openmv 功能相同[OPENMV]
构造函数
image 图像模块。导入image模块
import image
img=sensor.snapshot()
#创建图像,通过拍摄或者读取文件路径获取。
img=image.Image(path, copy_to_fb=False)
#创建图像,通过拍摄或者读取文件路径获取。
copy_to_fb=True:#可以加载大图片;
copy_to_fb=False:#不可以加载大图片。
函数 | 说明 |
---|---|
image.draw_line(x0, y0, x1, y1, color, thickness=1) | 画线段。(x0,y0):起始坐标;(x1,y1):终点坐标;color:颜色,如(255,0,0)表示红色;thickness:粗细。 |
image.draw_rectangle(x, y, w, h, color, thickness=1, fill=False) | 画矩形。(x,y):起始坐标;w:宽度;h:长度;color:颜色;thickness:边框粗细;fill:是否填充。 |
image.draw_circle(x, y, radius, color, thickness=1, fill=False) | 画圆。(x,y):圆心; radius:半径; color:颜色;thickness:线条粗细;fill:是否填充。 |
image.draw_arrow(x0, y0, x1, y1, color, size,thickness=1) | 画箭头。(x0,y0):起始坐标;(x1,y1):终点坐标;color:颜色;size:箭头位置大小。thickness:线粗细。 |
image.draw_cross(x, y, color, size=5, thickness=1) | 画十字交叉。(x,y): 交叉坐标;color:颜色;size:尺寸;thickness:线粗细。 |
image.draw_string(x, y, text, color, scale=1,mono_space=True) | 写字符。(x,y): 起始坐标;text:字符内容;color:颜色;scale:字体大小;mono_space:强制间距。 |
示例代码
'''
名字:画图
日期:2020.3.18
作者:咸鱼梦工坊
说明:在LCD上绘制简单图形
思路说明:
1.导入相关模块
2.绘制简单图形,后下角写上自己名字
'''
import sensor, image, lcd
lcd.init(freq=15000000)
sensor.reset() #复位摄像头
sensor.set_pixformat(sensor.RGB565) # 设置像素格式 RGB565 (or GRAYSCALE)
sensor.set_framesize(sensor.QVGA) # 设置帧尺寸 QVGA (320x240)
sensor.skip_frames(time = 2000) # 灯带设置响应.
while(True):
img = sensor.snapshot()
#画矩形:起始坐标15,15 宽100 高30 绿色 粗细2 不填充
img.draw_rectangle(15, 15, 100, 30, color = (0, 255, 0),thickness = 2, fill = False)
#画圆:圆心坐标40,120 半径30 蓝色 粗细2 填充
img.draw_circle(40, 120, 30, color = (0, 0, 255), thickness = 2,fill = True)
#画箭头:起始坐标:150,120 终点坐标:220 ,120 白色 箭头大小
img.draw_arrow(150, 120, 200, 120, color = (255, 255, 255), size =20, thickness = 4)
#画十字交叉。交叉坐标 160,160 color:黑色 size:20
img.draw_cross(160, 160, color = (255, 255, 255), size = 20,thickness = 2)
#画线段:起始点坐标270,220 终点坐标320,220,红色,粗细值1
img.draw_line(270,220,320,220,color = (255,0,0),thickness=1)
#写字符。
img.draw_string(270, 220, "xianyu", color = (255, 255,255), scale = 2,mono_space = False)
lcd.display(img) # 显示