이전 글에 이어서 작성하는 글이다.
이번엔 Brainflow를 Python에 설치하는 방법에 대한 얘기다!
일단 Brainflow는 Python, C++, Java, C#, Julia, Matlab, R, Typescript, Rust 언어를 지원하고 있는데..
여기에서 내가 연구원에서 할 때 쓴 언어가 C++과 Python이여서.. C++은 저번에 썼고.. 이번엔 Python을 써볼 것이다..!
C++ 설치 방법은 아래를 참고하면 될 것 같다.
https://cheongpark.tistory.com/66
BrainFlow C++ 설치방법 (Muse 2, Muse S 지원 설치 | CMake 사용)
학생 연구원에서 연구과제로 Muse 2를 받게 되었다.그런데 기존에 다른 분이 조사하신건 Python으로 Muse LSL를 설치해서 하는 방법인데, 이 방법은 Python으로만 할 수 있는걸로 알고 있는데 프로젝트
cheongpark.tistory.com
Muse 2 연결 방식에 대한 것
위에 C++ 설치 방법에도 올렸었던 내용이다.
Muse 2의 경우 이전 글에서 말했듯이 일반 블루투스가 아닌 저전력 블루투스인 BLE를 사용하고 있다.
하지만 이 BLE의 경우 Muse 2를 처음 지원할 때 Brainflow에서는 추가적인 BLE 동글이 필요했었다.
https://brainflow.org/2021-06-22-muse-bled/
BrainFlow 4.3.0
Muse devices added to BrainFlow
brainflow.org
저 글을 살펴보면 BLED112라는 동글이 추가적으로 필요하다고 나와있다.. 이 동글을 컴퓨터에 꽃아서 Muse 2랑 Brainflow랑 연결할 수 있었는데.. 처음에 Muse 2를 검색하면서 저 글을 보았을 때.. 진짜 동글이 필요한가라고 생각했었다.. 그런데 2차 회의가 며칠 안 남아서 동글을 살 시간도 없고.. 구매하기도 어려웠어서.. 조금만 더 찾아봤었다.. 당시에는 C++를 먼저 사용해서 연결해 보려고 했기 때문에 BLE 옵션이 있다는 것도 이후에 알았었다..
그러다가 https://brainflow.org/2021-11-01-new-release/
BrainFlow 4.7.0
Built-in BLE library, Muse devices wo dongles
brainflow.org
여기에 적힌 대로 이후에는 BLED112라는 동글 없이.. Simple BLE 라이브러리를 사용하여 컴퓨터에서 일반 블루투스 기기도 연결할 수 있다면 연결이 가능하도록 지원이 추가된 걸 발견했다!!
그래서 이후에는 이거를 어떻게든 설치를 시도했던 게.. C++ 설치 방법에 나온 글이다.. 뭐 그걸 쓴 후에는 툴을 만들러 갔었지만..
암튼 당시에는 C++로 처음 해보려다 보니.. 설치가 어렵고 BLE도 제대로 지원하는지도 몰랐었다..
Brainflow Python 설치
C++과 다르게 Brainflow Python 버전은 설치가 매우 매우 쉽다.
이미 C++로 빌드한 것을 Python에 이식하는 것뿐이니 당연한 거긴 하겠지만;;
Python 이외의 언어들을 설치하는 방법에 대해 보려면 아래 사이트에 가서 선택해 보면 된다..!
https://brainflow.org/get_started/
Get Started
Supported Boards Indicate your device. Then, check supported OSes and Platforms for your board. Manufacturer BrainFlow BrainFlow AntNeuro BrainAlive EmotiBit Enophone G.Tec Mentalab Muse NeuroMD Neurosity OpenBCI OYMotion PiEEG Board Playback Board Streami
brainflow.org
참고로 Python의 경우 이 옵션을 사용하면 된다.
Get Started
Supported Boards Indicate your device. Then, check supported OSes and Platforms for your board. Manufacturer BrainFlow BrainFlow AntNeuro BrainAlive EmotiBit Enophone G.Tec Mentalab Muse NeuroMD Neurosity OpenBCI OYMotion PiEEG Board Playback Board Streami
brainflow.org
아무튼 저거를 봐도 되고.. 이걸 봐도 된다..!
일단 기본적으로 Brainflow는 Python 3.5.6 이상 버전부터 지원하고 있다.
굉장히 범위가 높아서 여러 프로젝트에서 이용하기가 쉽다..!
암튼 설치 방법!
일단 나는 관리가 편하도록 Anaconda로 가상환경을 만들 것이다..! 참고로 윈도우에서 진행한다. 다른 운영체제도 비슷하긴 하다.
conda create -n blogEEG python=3.10 -y
conda activate blogEEG
뭐 가상환경 만드는 건 쉬우니 넘어가지만.. 일단 내가 Python 3.10을 선택한 건 내가 프로젝트를 만들 때 3.10을 가장 많이 써서이다..
그리고 blogEEG라는 이름은 그냥 블로그 용으로 쓰는 거라서 그렇게 이름을 지었다.
참고로 conda activate는 사용하는 커맨드 창에서 가상환경 활성화 시키는 거다..
암튼 Brainflow를 설치를 한다!
pip install brainflow
이게 끝이다..
C++ 보다 훨씬 간단하다..
사용방법
이후 글부터는 연결 방법이나 테스트 코드들을 작성할 건데
뭐.. 공식 문서는 아래 링크를 보면 된다.
https://brainflow.readthedocs.io/en/stable/UserAPI.html#python-api-reference
https://brainflow.readthedocs.io/en/stable/Examples.html#python
참고로 가끔 구글 검색하다 보면..
https://brainflow.readthedocs.io/en/master/Examples.html
이런 링크가 하나씩 보일 텐데.. master 저 문서는 오래된 문서이다..
처음에는 구글에 검색하는 거 아무거나 따라 했다가.. 왜 안 되지?라고 계속 생각했었는데..
결국 링크가 다른 거였던 것..
만약 구글에 검색해서 볼 때는 링크가 stable인지 master인지 살펴보는 게 좋을 것 같다..
가끔 테스트 코드들이 작동하지 않거나 이상하게 작동할 때가 많다..
'개발 > Muse 2' 카테고리의 다른 글
[Muse 2] BrainFlow ML로 집중도 구하기!! (0) | 2025.02.21 |
---|---|
[Muse 2] BrainFlow로 집중도 구하기!! (1) | 2025.02.19 |
[Muse 2] BrainFlow에 Muse 2 연결하고 데이터 수집!! (0) | 2025.02.17 |
[Muse 2] Muse 2 알아보기!! (0) | 2025.02.16 |
BrainFlow C++ 설치방법 (Muse 2, Muse S 지원 설치 | CMake 사용) (0) | 2024.05.22 |