首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【连载】OpenMv学习过程

最近这两年,python还是很热门的,机器人应该也是未来的方向。

我呢,就打算走机器人软件方向吧,就是那种服务业的机器人,毕竟实力有限,总不能干些我无法企及高度的事情吧,就像机器学习这种,人工智能这种,我是没实力去接触了。但是做点机器人简单的控制应该还是可以的,

一来我对这方面还是很感兴趣并且很喜欢的(可能是收到哆啦A梦的影响,我现在还是非常非常非常喜欢哆啦A梦,喜欢它的智能的东西,更喜欢它)

下面这首主题曲还是很喜欢的哈哈哈!!!!!

最近入手了个OpenMv,

装IDE这种小事就不说了。网上一大把教程。

说说真正入门的操作吧。对python也没啥要求。我也是这样子马上上手的,当然在过程我是随便学习了python的。

先说说学习python的感觉吧,很基本的概念我就不说了,

优缺点你们百度一下也知道。

我第一感觉就是超级强大,真的强大。

会C语言的,比较好的,入门python超级简单,真的是超级简单。

只不过会一时间不适应它的编程风格,不过那么强大的语言,学习下还是不错的。

下面是正题,学习openmv的过程。

(注:下面的代码在手机上是不符合python的写法的)

1:绘制矩形

绘制矩形

函数说明

image.draw_rectangle(rect_tuple,color=White)

参数

rect_tuple

格式(x, y, w, h)

矩阵的起始坐标, (x, y),即矩形的左上角坐标

w :矩形的宽度

h :矩形的高度

x, y, w, h均为整数

color

颜色,填入灰度值(0-255),或者RGB值(r, g, b)

下面简单画个矩形

样例代码

import sensor, image, time

sensor.reset() # 初始化摄像头.

sensor.set_pixformat(sensor.RGB565) # 设置图片为 RGB565

sensor.set_framesize(sensor.QVGA) # 设置图片大小为 QVGA (320x240)

sensor.skip_frames(30) # 等待30帧图像稳定

clock = time.clock()

x = 50

y = 150

width = 100

height = 100

rect_tuple = (x, y, width, height)

rgb_white = (255, 255, 255) # (r=255,g=255, b=255) ->颜色为白色

while(True):

clock.tick() # 测试计时,转换为帧率打印出来

img = sensor.snapshot() #获取图像

#画一个,x,y为边长,颜色为白色的矩形

img.draw_string(x, y, "(%d, %d)"%(x, y), color=rgb_white)

img.draw_rectangle(rect_tuple, color=rgb_white)

print(clock.fps())

这就是简单画矩形的图像,想要改变矩形位置就改变x,y(图像左上角起点)

想要改变矩形面积就改变width,height(图像宽&高)改变线条颜色就改变rgb_white

2:绘制十字

函数说明

image.draw_cross(x,y,size = 5,color = White)

参数

X

十字中心的X坐标

y

十字中心的y坐标

size

十字的长度

颜色

颜色,填入灰度值(0-255),或者RGB值(r,g,b)

样例代码

import sensor, image, time

sensor.reset() # Reset and initializethe sensor.

sensor.set_pixformat(sensor.RGB565) # Setpixel format to RGB565 (or GRAYSCALE)

sensor.set_framesize(sensor.QVGA) # Set frame size to QVGA (320x240)

sensor.skip_frames(30) # Wait for settings take effect.

clock = time.clock() # Create a clock object totrack the FPS.

x = 150

y = 150

size = 20

rgb_white = (255, 255, 255) # (r=255, g=255,b=255) -> white color

while(True):

clock.tick() #Update the FPS clock.

img = sensor.snapshotA() #Take a picture and return the image.

img.draw_string(x, y, "(%d, %d)"%(x, y), color=rgb_white)

img.draw_cross(x, y, size=size, color=rgb_white)

print(clock.fps())

当然画图并不只是只有这点功能,上面我说了,python很强大,你想在图片中显示什么都可以。字符啊,各种秀啊,都是可以的。但是下篇的色彩追踪只用了十字与矩形,就说了这两个。

学会简单画图,就可以使用openmv来做色彩追踪了。

未完待续......下篇用openmv来做色彩追踪

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180308G1PJTW00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券