Maix Bit 및 6+1 마이크 어레이의 오디오 시각화

1. 지루한 오프닝
최근에 나는 아주 좋은 음원 포지셔닝과 시각화 시스템을 보았다.
[소리의 가시화 실례] 방음판에서 효과 가시화https://t.co/ic1ktrUiXB@YouTube - AIRPOCKET@rastamanvibration(@AirpocketRobot)December 18, 2020


예전부터 마이크 어레이에서 음원 위치추적과 시각화(예전에 본 것이런 녀석)를 할 줄 알았는데, 언제부터 스마트 스피커음성 인식 정밀도를 높이기 위한 음성 빔 성형를 실용화하기 시작했는지 모르겠다.
스마트 스피커에는 관심이 없지만 음원 포지셔닝과 시각화에 관심이 있다br/>
공장 안을 걸어가면 고압 공기의 누설 소리를 들을 수 있다.누설인 건 알지만 어디서 누출됐는지 찾기도 힘들다.이럴 때 음원이 가시화되면 누기된 곳을 쉽게 확인하고 복구할 수 있다p>


일본 음향공학주식회사 사운드그라파이 제품으로 작고 사용하기 쉬우며 외관도 귀여워서 (외관이 중요) 어느새 갖고 싶었는데 가격이 안 귀여워서 포기했어풍통정가 275만 엔br/>
설비 보전의 작은 지식φ한 구멍에서 공기가 새면 1년에 9000엔의 손실을 본다은 31개의 구멍을 막으면 1년에 원가로 받을 수 있다는 것이다.그렇긴 한데, 이 기계가 없어도 구멍을 뚫어 막으려고 노력해야 하니 효과가 좋지 않다φ구멍 뚫는 시간만 단축된다.이렇게 되면 청원도 통과되지 않을 것 같다.원래 설비 관리 담당자가 아니기 때문에 구매권도 없습니다.


그래서 소중히 간직하고 있는Maix Bit를 끄집어낼 때, 사도 잊어버린 마이크 진열을 발견하게 된다.p>

이 문장저번은 계속 Seeed UG Advent Calendar 2020에 신청합니다.



2 하고 싶은 일과 쓰는 것



2-1하고 싶은 일


Maix Bit 및 6+1 마이크 어레이를 사용한 시각적 음원p>


2-2.사용한 아이템




는 kendryteK210을 탑재한 개발판으로 지금까지 설명할 필요가 없는 기계의 시각과 기계의 청력을 가볍게 즐길 수 있다br/>
지난번에는 확실히 영상 처리에 썼는데, 이번에는 음성 처리에 써 보았다br/>
사진은 지난번 에 회사 에 자백 했다 이후에 새로 샀어요.br/>


맥스비트는 맥스 형제 중 몸집이 왜소한 바둑판으로, 끌어낸 핀 수도 많았고, 풀 사이즈 OV2640은 검은 빛을 내면서 화를 내는 멋진 형태였다.약점은 아날로그 입력이 없고 무선 입력이 없다는 것이다. 그러나 기술이 적용되지 않은 미크로 SD 슬롯에서 가리키는 ESP 32 모듈도 판매되고 거기에 삽입되면 ADC도 사용할 수 있지 않겠는가.비록 기술은 좋지 않지만.



·6+1 마이크 어레이


6+1 하면 마이크 어레이의 수입니다.육각형의 각 정점과 중심을 합쳐 7개의mems마이크를 탑재했다.이 마이크에 들어가는 소리를 분석하고 시간차에 따라 음원의 방향을 정한다br/>
또한 RGBLED는 일주일 동안 12개 구성되어 음원 방향의 표시기로 사용할 수 있다br/>
베이스보드 중앙에는 0.5mm 간격으로 10PIN의 플랫 케이블과 후면이 분리된 IO 플래그가 있습니다.10PIN 태블릿 케이블은 어디에서 사용합니까?Maix Bit, M1N, dock에는 커넥터가 없습니다...이번 QI 커넥터 사용br/>


후면: 2×길이는 5개의 QI2550 모 커넥터이지만 PIN 번호 등의 태그가 없습니다.나는 PIN의 라벨은 연결기가 없는 표가 아니라 뒷면에 인쇄해야 한다고 생각한다br/>
또한 커넥터가 기판에 수직으로 뻗으면 부피가 크고 가능하면 사진 아래에서 90° 굽히기를 원한다황동의 예비 나사를 끼고 연결기를 꽂으면 아무리 생각해도 길지 않아(길이가 충분하여 맞출 수 없음)



3.빠른 인코딩



3-1.이전 케이블 연결


케이블을 연결하고 싶지만 조작 매뉴얼이 적어 좌우로 움직인다.회로도도 쓸모없다고 말하지는 않지만, 나는 프로그램 라이브러리의 문서를 더욱 원한다br/>
드디어 발견데모 같은 거.,접속 참조


이 코드는Maixduino를 대상으로 하지만 fpio로 function을 마음대로 다시 진작시킬 수 있기 때문에 김으로 연결합니다.아래 표에 따라 연결하십시오.Maix Bit 측면은 베이스보드의 PIN 번호를 나타냅니다.나머지 8병은 LED를 막론하고.CK 및 LEDDA는 코드에서도 캐릭터의 뜻을 모르지만, 1/2 확률이기 때문에 "ヤ"로 받는 것이 정답입니다.



















































Maix Bit6+1 mic
PIN23MIC_D0
PIN22MIC_D1
PIN21MIC_D2
PIN20MIC_D3
PIN19MIC_WS
PIN18MIC_BCK
PIN17LED_CK
PIN15LED_DA
3V3VIN
GNDGND


3-2.Maix Bit용 코드


작업은 펌웨어 버전에 따라 다릅니다.

이번 행사는 2020년 12월 17일까지 최신maixpy_v0.6_9_g88bfd0177.bin 모델로 진행된다.br/>
kflash로 쓰세요.


from Maix import MIC_ARRAY as mic  #MIC_ARRAYのライブラリ、enにもzhにもdocが無いよー(TT)
from Maix import FPIOA
from fpioa_manager import fm       #相変わらず理解しきれていないfpioa
import lcd

from Maix import utils       #heap mem使用量確認及び設定用
utils.gc_heap_size(1000000)  #heap mem確保量の設定、絶賛増量中。3000000まではいけた。
                             #4000000ではアウトらしい、文鎮化したら復旧が面倒くさそうなので要注意。

lcd.init()
mic.init()
Fpioa = FPIOA()

# reconfigure pins after mic.init() to match your wiring
Fpioa.set_function(23, fm.fpioa.I2S0_IN_D0);
Fpioa.set_function(22, fm.fpioa.I2S0_IN_D1);
Fpioa.set_function(21, fm.fpioa.I2S0_IN_D2);
Fpioa.set_function(20, fm.fpioa.I2S0_IN_D3);
Fpioa.set_function(19, fm.fpioa.I2S0_WS);
Fpioa.set_function(18, fm.fpioa.I2S0_SCLK);
Fpioa.set_function(17, fm.fpioa.GPIOHS28);
Fpioa.set_function(15, fm.fpioa.GPIOHS27);

while True:
    imga = mic.get_map()         #mic arrayから16x16pixelの音源マップを取得してるらしい
    dir = mic.get_dir(imga)      #音源マップから音の方向を計算してるんだろう
    mic.set_led(dir,(50,50,50))  #音源方向のLEDを点灯。まぶしいので(0,0,0)でLEDオフしよう。
    imgb = imga.resize(240,240)  #16×16のマップをLCDサイズに合わせて 240×240に拡大。
    imgc = imgb.to_rainbow(1)    #グレースケールだと寂しいのでそれっぽいレインボーカラーに変換

    lcd.display(imgc)

mic.deinit()

발생 조건은 아직 정해지지 않았지만, heap memory가 부족한 경우가 있어 증가하고 있습니다.



4.동작 확인


어쨌든 먼저 움직이면 팽이가 완성됩니다.

의외로 느낌이 좋아요.br/>


어둡고 잘 보이지 않지만 이런 구성입니다





4-1.남은 과제




괜찮을 것 같아요. 카메라의 이미지와 음원 위치를 겹치기 위해서는 시각, 마이크와 카메라의 중심축을 한데 모아야 해요.

마이크 어레이의 중심에도 마이크가 있기 때문에 중심축이 멀어지면 피할 수 없다.가까이서 보면 위치 편차가 심하죠.

또 음원도 시각이 넓은 편이어서 카메라 쪽에도 광각 렌즈를 설치해야 한다.또한 미세 조정을 위해 음원 도면 측면의 표시 위치 계산을 조정해야 하는데 좀 까다롭나요?




상당히 작은 소리에서 주운 동적 범위가 상당히 작은 인상.이것도 이득을 보고 한도값을 조절하고 싶지만, 라이브러리가 없는 문서는 기능이 있는지도 모른다.농장을 보면 알겠지만, 이것도 좀 귀찮아 짐이 무거워p>



K210은 FFT를 굉장히 잘 할 것 같아서 주파수 분해 후 주파수 인식을 토대로 음원을 확정할 수 없을 것 같아요.



5.요약


지난번에 Maixpy를 처음 만났기 때문에 특별히 열중하지 않았고 심지어 동작까지 잘해서 즐거웠어요

조금 더 완성도를 높이면 일에도 도움이 될 거야...그렇게 지도 모른다, 아마, 아마...br/>
가능성이 크다고 생각하지만 수학과 코딩 기술이 부족해서 정말 아쉽네요br/>
어쨌든 카메라 이미지와 겹쳐 보십시오.


추기:完成版はこちら



뱀발


올해가 K510년이래요. 연말에 나올 거라고 들었는데 아직 안 나왔죠.br/>
업그레이드는 좋지만 너무 비싸지 않았으면 좋겠어요.어려워졌어


좋은 웹페이지 즐겨찾기