바이너리 디코딩이란? 바이너리 디코딩은 이진 데이터를 사람이 읽을 수 있는 형식으로 변환하는 프로세스를 의미한다. Python에서 디코딩하는 방법은 여러가지가 있는데, 그 중 3가지를 소개해 보려고 한다. 소켓통신할 때 이미지를 수신, 전송할 때 base64모듈을 사용해본적은 있지만 아직도 조금 생소한 감이 있다. struct 모듈 사용 struct 모듈은 Python에서 이진 데이터를 특정 형식에 따라 인코딩하는 데 사용되는 모듈이다. 이 모듈을 사용하여 바이너리 데이터를 인코딩하려면 struct.pack()함수를 사용한다. struct.pack()을 사용한 인코딩 struct.pack() 함수는 지정된 형식 문자열을 기반으로 바이너리 데이터를 패킹하여 인코딩한다. 형식 문자열은 인코딩하려는 데이터의 ..
오류 내용 System.InvalidOperationException: '많은 UI 구성 요소에서 호출 스레드가 필요하므로 해당 스레드는 STA여야 합니다.' 오류 이유 WPF나 실버라이트에서 타이머는 다른 쓰래드기때문에 UI쓰래드를 접근할때 에러가 난다고 한다. 이럴때는 윈폼과 마찬가지로 인보크를 사용하여 작업을 해야 한다. 해결 방법 // 다른 쓰레드에서 UI 쓰레드 접근하기 => 윈폼과 마찬가지로 인보크를 사용하여 작업 Dispatcher.Invoke(DispatcherPriority.Normal, new Action(delegate { // 실행 할 부분 넣기 })); 이렇게 처리하니 해결되었다. invoke는 동기적으로 실행된다고 한다. 아직 c#이 어렵다.. 참고 링크 https://learn..
개발환경 운영체제: Window 10 64 bit 개발언어: Python 3.11 개발 툴: Pycharm 추가 패키지: mediapipe, Sklearn, Tensorflow, opencv-python 오류 내용 line 264, in __init__ validated_graph.initialize( FileNotFoundError: The path does not exist. 미디어파이프로 졸음인식 코드를 병합하던 과정 중 이런 오류가 생겼다. 스택오버플로우 검색 후 해결 오류 원인 프로젝트의 경로에 유니코드가 아닌 문자가 있을 때 발생: 한국어, 프로젝트의 경로에 "ç" 같이 유니코드가 아닌 문자가 있을 때 발생한다. 해결 방법 파일 경로 순서를 줄인다: 예) 바탕화면, C드라이브에 프로젝트를 생성..
이런 모듈이 있다니 역시 파이썬이다. 없는게 없다..! 모듈에 대해 간단히 설명하자면, 유튜브 비디오를 다운로드 할 수 있는 python 모듈이다. 무료이며 가볍고 라이브러리로 제공하기 때문에 누구나 이 모듈을 사용하여 영상을 다운로드 할 수 있다. 하지만 파이썬 자체에는 깔려있지 않기 때문에 직접 설치해야 한다. Pytube 모듈 설치 pip install pytube 콘솔에 작성하여 설치한다. 인터프리터에 검색하여 설치해도 된다. 전체 코드 from pytube import YouTube import os def downloadYouTube(videourl, path): yt = YouTube(videourl) yt = yt.streams.filter(progressive=True, file_exte..
데이터베이스 삭제에 대해 알아보겠습니다. 데이터베이스 삭제 명령문 DROP DATABASE ; 예시 MYSQL 8.0 Command LIne Client을 열어서, 이전에 생성한 MY_DATA를 삭제해 보겠습니다. DROP DATABASE MY_DATA; show database;를 통해 조회하니 mydata가 삭제된 모습을 확인할 수 있습니다. MySQL workbench에서도 동일한 명령어를 통해 삭제할 수 있습니다. 또한 우클릭으로 간편하게 삭제할 수 있습니다. 임의로 데이터베이스 my_databse를 생성하고 삭제해 보겠습니다. 문구를 실행하고 번개모양 버튼을 눌러 테이블을 생성합니다. 새로고침을 누르면 my_database가 생성된 모습을 확인할 수 있습니다. 이제 삭제해 보겠습니다. 테이블 우..
MySQL 내용을 처음부터 정리해서 써보려고 합니다. PostgreSQL과 SQLite를 써보아서 쿼리문은 익숙하지만, 환경이 다르기 때문에 처음부터 정리하며 복습해보겠습니다. 그럼 시작~~!! MySQL 설치는 이전 글을 참고하세요 https://giveme-happyending.tistory.com/203 [SQL] MySQL 설치 방법과 설치 확인하기 MySQL 설치 방법은 혼공 사이트에서 참고한 내용입니다. 개인공부 및 기록용으로 블로그에 따로 작성하였습니다. 출처: https://hongong.hanbit.co.kr/mysql-%EB%8B%A4%EC%9A%B4%EB%A1%9C%EB%93%9C-%EB%B0%8F-%EC%84%A4%EC%B9%9 giveme-happyending.tistory.com..
MySQL 설치 방법은 혼공 사이트에서 참고한 내용입니다. 개인공부 및 기록용으로 블로그에 따로 작성하였습니다. 출처: https://hongong.hanbit.co.kr/mysql-%EB%8B%A4%EC%9A%B4%EB%A1%9C%EB%93%9C-%EB%B0%8F-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0mysql-community-8-0/ 🛠 MySQL 설치를 위한 컴퓨터 환경 1. 바탕화면에서 좌측의 [시작]버튼을 마우스 오른쪽 버튼으로 클릭한 후 [시스템]을 선택한다. 2. 정보창에서 프로세서, 설치된 RAM을 확인할 수 있다. 중요한건 [에디션]과 [시스템종류]이다. Windows 10(또는 11)에 64bit운영 체제면 설치가 가능한 환경이다. 💻 MySQL 다운로드 및..
공부에 참고한 링크 https://youtu.be/06TE_U21FK4 개발환경 운영체제: Window 10 64 bit 개발언어: Python 3.11 개발 툴: Jupyter Lab 추가 패키지: mediapipe, opencv-python 라이브러리 & 모듈 설치 MediaPipe, opencv-python 설치 !pip install mediapipe opencv-python MediaPipe란? MediaPipe는 Google에서 개발한 오픈 소스 플랫폼 프레임워크로, 개발자들이 머신러닝을 기반으로 한 모바일 및 웹 애플리케이션에서 사용할 수 있는 다양한 미리 만들아진 솔루션을 제공한다. 특징은 다음과 같다. 사용하기 편리하다. 매우 빠르다. MediaPipe는 GPU 가속을 통해 빠른 처리 성..
개발환경: 운영체제: Window 10 64 bit 개발언어: Python 3.11 개발 툴: Jupiter Notebook 추가 패키지: Numpy, Pandas Matplotlib, Sklearn, Tensorflow, keras, Open CV 공부한 사이트: https://www.kaggle.com/code/adinishad/driver-drowsiness-using-keras driver drowsiness using keras Explore and run machine learning code with Kaggle Notebooks | Using data from multiple data sources www.kaggle.com 데이터 1. 사진 데이터 사진 출처: https://www.kag..