概述
前言
来了,K210的声源定位。
[2022电赛] 声源定位跟踪系统(E题)k210 麦克风阵列效果实测!
sipeed官方做的,效果还不错。
一、模块
sipeed家的声源定位模块,K210常用的都可以用
将麦克风阵列模块与 pyAI-K210 使用 FPC 10P 排线进行连接,接口在开发板背部(排线金手指下接)。
麦克风阵列扩展模块由 7 个数字麦克风组成,其中 6 个分布在四周不同方向,1 个在模块正中央,便于识别各个方向声源。另外 12 个 LED 指示灯,方便指示声源位置。
二、使用说明
1.相关函数
2.代码
#导入MIC_ARRAY和LCD模块
from Maix import MIC_ARRAY as mic
import lcd
#初始化模块
lcd.init()
mic.init()
while True:
#获取原始的声源黑白位图,尺寸 16*16
imga = mic.get_map()
#获取声源方向并设置LED显示
b = mic.get_dir(imga)
a = mic.set_led(b,(0,0,255))
#将声源地图重置成正方形,彩虹色
imgb = imga.resize(160,160)
imgc = imgb.to_rainbow(1)
#显示声源图
lcd.display(imgc)
mic.deinit()
现象展示
有个问题,没有坐标,没有坐标就没法定位
这是一个大佬写的代码,可以去参考看一下,附上原文链接
for i in range(len(b)):
if b[i]>=2:
AngleX+= b[i] * math.sin(i * math.pi/6)
AngleY+= b[i] * math.cos(i * math.pi/6)
AngleX=round(AngleX,6) #计算坐标转换值
AngleY=round(AngleY,6)
if AngleY<0:AngleAddPi=180
if AngleX<0 and AngleY > 0:AngleAddPi=360
if AngleX!=0 or AngleY!=0: #参数修正
if AngleY==0:
Angle=90 if AngleX>0 else 270 #填补X轴角度
else:
Angle=AngleAddPi+round(math.degrees(math.atan(AngleX/AngleY)),4) #计算角度
AngleR=round(math.sqrt(AngleY*AngleY+AngleX*AngleX),4) #计算强度
mic_list.append(AngleX)
mic_list.append(AngleY)
mic_list.append(AngleR)
mic_list.append(Angle)
a = mic.set_led(b,(0,0,255))# 配置 RGB LED 颜色值
return mic_list #返回列表,X坐标,Y坐标,强度,角度
while True:
print(get_mic_dir())
time.sleep_ms(100)
最后
以上就是寒冷高山为你收集整理的K210——声源定位、声音识别前言一、模块二、使用说明的全部内容,希望文章能够帮你解决K210——声源定位、声音识别前言一、模块二、使用说明所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复