소연의_개발일지
[Python] python에서 바이너리 형식의 파일 인코딩,디코딩하기
개발공부/Python 2023. 9. 14. 20:35

바이너리 디코딩이란? 바이너리 디코딩은 이진 데이터를 사람이 읽을 수 있는 형식으로 변환하는 프로세스를 의미한다. Python에서 디코딩하는 방법은 여러가지가 있는데, 그 중 3가지를 소개해 보려고 한다. 소켓통신할 때 이미지를 수신, 전송할 때 base64모듈을 사용해본적은 있지만 아직도 조금 생소한 감이 있다. struct 모듈 사용 struct 모듈은 Python에서 이진 데이터를 특정 형식에 따라 인코딩하는 데 사용되는 모듈이다. 이 모듈을 사용하여 바이너리 데이터를 인코딩하려면 struct.pack()함수를 사용한다. struct.pack()을 사용한 인코딩 struct.pack() 함수는 지정된 형식 문자열을 기반으로 바이너리 데이터를 패킹하여 인코딩한다. 형식 문자열은 인코딩하려는 데이터의 ..

[Error] Python mediapipe 사용 중 오류: FileNotFoundError: The path does not exist 해결방법
개발공부/Python 2023. 9. 9. 18:00

개발환경 운영체제: 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드라이브에 프로젝트를 생성..

article thumbnail
[Pytube] python 모듈 Pytube로 Youtube 비디오 다운로드하기
개발공부/Python 2023. 9. 8. 20:50

이런 모듈이 있다니 역시 파이썬이다. 없는게 없다..! 모듈에 대해 간단히 설명하자면, 유튜브 비디오를 다운로드 할 수 있는 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..

article thumbnail
[Python CNN모듈 save()메서드 사용 중 Error]UserWarning: You are saving your model as an HDF5 file via `model.save()`. This file format is considered legacy. We recommend using instead the native Keras format, e.g. `model.save('my_model.keras')`...
개발공부/Python 2023. 8. 27. 12:18

CNN 알고리즘을 적용시켜 모델을 학습시키고 .save() 메서드를 사용하여 모델을 저장하는 과정 오류가 생겼다. 이 부분에서 오류가 생겼다. 오류 내용 UserWarning: You are saving your model as an HDF5 file via `model.save()`. This file format is considered legacy. We recommend using instead the native Keras format, e.g. `model.save('my_model.keras')`. saving_api.save_model( 이 경고 메세지는 Keras에서 모델을 저장할 때 HDF5 형식을 사용하는 것에 대한 경고이다. 이 경고의 주요 내용은 model.save() 메서드를 사..

article thumbnail
[Python] open cv 설치 오류 ERROR: Could not find a version that satisfies the requirement cv2 (from versions: none)
개발공부/Python 2023. 8. 23. 17:06

open cv를 설치하려고 하는 중 오류가 생겼다. ERROR: Could not find a version that satisfies the requirement cv2 (from versions: none) ERROR: No matching distribution found for cv2 해결방법 cv2는 OpenCV의 Python 바인딩을 위한 모듈 이름이다. 이 오류가 발생한 주된 이유는 cv2라는 패키지 이름으로 직접 pip에서 검색했기 때문이다. OpenCV를 Python에서 설치하기 위해서는 opencv-python이라는 패키지를 설치해야 합니다. 다음 명령을 사용하여 설치할 수 있다: pip install opencv-python 성공적으로 설치됨 또한, OpenCV의 추가 기능들(예: S..

article thumbnail
[Python] Pandas를 이용한 레고 데이터셋 분석
개발공부/Python 2023. 8. 20. 21:27

학습 내용 출처: 유데미 안젤라 파이썬 강의 배울 내용 판다스 데이터프레임에 파이썬 목록 슬라이싱 기술 적용 .agg() 함수를 사용하여 데이터를 집계하는 법 맷플롯립에서 두 개의 축이 있는 산점도, 막대 차트, 꺾은선형 차트를 만드는 법 기본키와 외래키로 구성된 데이터베이스 스키마를 이해 공통의 키를 공유하는 데이터프레임을 병합하는 법 개발환경 운영체제: Window OS, Window 10 개발언어: Python 3.11 개발 툴: Google Colab 추가 패키지: Matplotlib, pandas 사용 자료 데이터 분석 구글 콜랩에서 이미지 추가하는 방법 더보기 주피터에서 추가하는 방법 폴더에 있는 파일을 불러오면 판다스 가져오기 import pandas as pd matplotlib 글씨체 한..

article thumbnail
[Python] matplotlib로 시간 흐름에 따른 개발 언어 인기도 분석하기
개발공부/Python 2023. 8. 20. 15:54

오늘날 여전히 사용되는 가장 오래된 개발 언어는 1957년에 개발된 포트란이다. 이후로 그 외 많은 개발 언어가 발전 해왔다. 그런데 가장 인기있는 개발 언어는 무었일까? 이 질문에 대한 답은 스택오버플로우(Stack Overflow)에서 찾을 수 있다. 스택 오버플로우의 각 게시물은 태그가 함께 제시된다. 그리고 개발 언어 이름이 태그될 수 있다. 공부 소스 출처: 유데미 안젤라 Python 강의 개발환경 운영체제: Window OS, Window 10 개발언어: Python 3.11 개발 툴: Google Colab 추가 패키지: Matplotlib, pandas 사용 자료 데이터 분석 데이터 임포트 import pandas as pd 자료 가져오기 헤더 행을 0으로 설정하면 열 자체의 이름으로 대체..

article thumbnail
[Python] 구글 코랩(colab) seaborn, matplotlib 한글 깨짐 현상 해결방법
개발공부/Python 2023. 8. 20. 13:21

오늘은 구글 코랩을 사용하여 보스턴 집값을 예측해보는 시간을 가졌다. 구글 코랩에서 씨본 한국어 적용이 안되는 문제가 생김. 해결방법 1. 폰트 설치 코드 맨 위쪽에 다음과 같은 코드를 입력하고 실행한다. (나눔 폰트 설치) !sudo apt-get install -y fonts-nanum !sudo fc-cache -fv !rm ~/.cache/matplotlib -rf 설치가 진행된다. 2. 폰트 설정 matplotlib 라이브러리 임포트 하는 부분에서 다음과 같이 폰트를 설정해준다. import matplotlib.pyplot as plt plt.rc('font', family='NanumBarunGothic') plt.rcParams['axes.unicode_minus'] =False 나눔바름 고..

article thumbnail
[Python] 100명의 죄수 문제 matplotlib 그래프로 시각화하기
개발공부/Python 2023. 8. 18. 14:06

문제 상황 100명의 죄수가 있습니다. 각 죄수에게 0부터 99까지의 번호가 부여됩니다. 100개의 박스가 있으며, 각 박스 안에는 0부터 99까지의 번호 중 하나가 들어 있습니다. 각 번호는 한 번만 나옵니다. 각 죄수는 박스를 최대 50개까지 열 수 있습니다. 죄수가 자신의 번호를 찾으면 다음 죄수가 시도합니다. 만약 죄수가 50개의 박스를 열어도 자신의 번호를 찾지 못하면 실패로 간주됩니다. 전체 코드 # 랜덤 모듈 임포트 import random # 초기 변수 설정 n_prisoners = 100 # 죄수의 수 prisoners = list(range(n_prisoners)) # 0부터 99까지의 죄수 번호 리스트 boxes = [] # 박스의 내용 (초기화) failures = 0 # 실패한 횟..

article thumbnail
[Python] 소상공인시장진흥공단 광주 상가 정보 시각화해보기
개발공부/Python 2023. 8. 8. 20:48

개발환경 주피터, python 목적 광주광역시 올리브영 입점 추천 프로그램을 만들던 중 seaborn과 matplotlib로 화장품 매장들을 시각화 해보기 위함 자료 출처 공공데이터포탈 - 소상공인시장진흥공단_상가(상권)정보 이 자료 중 소상공인시장진흥공단_상가(상권)정보_광주_202306.csv 를 사용하였다. https://www.data.go.kr/dataset/15012005/fileData.do 자료 import import pandas as pd import seaborn as sns import matplotlib as plt df = pd.read_csv('소상공인시장진흥공단_상가(상권)정보_광주_202306.csv', low_memory=False) # DtypeWarning: Colum..