【OpenMV小车——第1.2篇】OpenMV主控板的简介与入门使用

前言: 视觉小车最重要的是视觉功能,其实现方式主要有:

  • Opencv+外置计算机摄像头。需要计算机作为上位机。
  • Stm32+OV7670。较难,大师级。
  • OpenMV摄像头。较简单,入门级。

博主刚开始为了准备项目,了解尝试过前两种方式,最后才终于接触到OpenMV这种主控板,因为其开发简单、结构简单、非常适合用于智能小车,入门虽然简单,功能却十分强大。

OpenMV简介:

OpenMV的目标是成为“机器视觉世界的Arduino ",有自己的IDE,采用Python二次开发简单易用,可扩展,开源,详细教程和技术手册。

OpenMV3是主要以STM32F427CPU为核心,集成了OV7725摄像头的模块。

OpenMV的功能:
颜色追踪、路线识别、形状识别、二维码识别、人脸识别、瞳孔追踪等。
12上图来源

入手准备:
  • OpenMV3 M7摄像头实物。(博主入手的OpenMV主控板来自于星瞳科技, 手边有实物更容易开发)
  • 官网下载安装的IDE。(集成开发环境,是集成了代码编写、分析、编译、调试功能的软件)

OpenMV采用 Python 给用户开发,而Python简单易学,简洁强大,在视觉开发方面十分突出。下文是初步学习使用 OpenMV 模块和入门到拓展学习Python语法

初步使用 OpenMV:

其实初步学习使用的话,官网的十分钟上手教程已经非常详细,推荐大家去看。(其实博主不是懒,是怕不专业误导你们~)
其中需要注意的是LAB颜色空间

LAB:L亮度。 范围: 0-100, 0白,L=50时,就相当于50%的黑
A表示从洋红色至绿色的范围。范围:-128至+127, -128绿色 ,+127就是红色
B表示从黄色至蓝色的范围。 范围:-128至+127,-128 b是蓝色。+127 b是黄色

这里写图片描述

学习Python语法:

推荐学习Python的网站:


博主的Python学习笔记:

主要克隆之前的文章:【OpenMv】学习笔记之初入江湖

语句 Print

我们的魔教口号是什么?

print('hello, world')

print()函数也可以接受多个字符串,用逗号“,”隔开,print()会依次打印每个字符串,遇到逗号“,”会输出一个空格,就可以连成一串输出:

print('I am a', 'handsome', 'boy')
print(300)#直接打印整数300
print('100 + 200 =', 100 + 200)#‘字符串’
注释符号:#
模块 py:

以屁眼.py结尾的就是一个模块
import 语句,引入模块,需要在开始就引用,就是c语言的头文件吧

import 模块名.函数名

import sys
语句 from…import

Python 的 from 语句让你从模块中导入一个指定的部分到当前命名空间中。语法如下:

#例如,要导入模块 fib 的 fibonacci 函数,使用如下语句:

from fib import fibonacci
函数:

函数就是可以实现功能的方式,可重复调用。
类型有:

  • 无参数无返回
  • 无参数有返回
  • 有参数无返回
  • 有参数有返回

以下源代码实现功能:定义一个plus(x,y)函数,将x+y的结果输出。

def plus(x,y):
	a=x+y
	return(a)
	#输入参数x,y,求出x+y
	#有入口参数和返回值

使用截图:
这里写图片描述
以下源代码实现功能:定义一个求平方的power(x)函数,将 x 的平方输出。

#定义一个求平方的函数
def power(x):
    return x * x

以下源代码实现功能:定义一个n次方的power(x, n)函数,将 x 的 n 次方输出。

#定义一个求n次方的函数
def power(x, n):
    s = 1
    while n > 0:
        n = n - 1
        s = s * x
    return s
条件判断 if

用法:

if <条件判断1>:
    <执行1>
elif <条件判断2>:
    <执行2>
elif <条件判断3>:
    <执行3>
else:
    <执行4>

以下源代码实现功能:输入年龄,用 if 判断是 kid 还是 teenager 还是 adult 。

age = 20
#age=0;
#age=input('Input your age: ')
#input()读取用户的输入
if age >= 6 and age <18:
    print('teenager')
elif age >= 18:
    print('adult')
else:
    print('kid')
循环 whileFor x in range(y):

以下源代码实现功能:采用 for x in range(100) 计算 0+1+2+...+99 的和。

# 注意从0开始加,没有加100。
sum = 0
for x in range(100):# range()函数生成一个整数序列
    sum = sum + x
print(sum)

以下源代码实现功能:采用 while循环 计算100以内所有奇数之和。

#算100以内所有奇数之和
sum = 0
n = 99
while n > 0:
    sum = sum 
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值