본문 바로가기

Python141

[Python] librosa로 WAV 파일 무음 제거하기 안녕하세요 오늘은 파이썬에서 제공하는 오디오 처리 라이브러리인 librosa 를 활용해 wav 파일 앞뒤의 무음 제거를 해보도록 하겠습니다. WAV 파일이란Waveform Audio File Format 의 약자로 무손실(raw) 방식의 오디오 파일 포맷을 의미합니다. 단순한 PCM (펄스 부호 변조) 데이터로 오디오 처리에 작관적이며 원본에 가까운 소리를 보존하고 프레임 단위 접근이 가능하다는 장점이 있습니다. 단점으로는 용량이 일반적인 MP3 파일에 비해 훨씬 큽니다. WAV 파일의 사용 용도 음악 제작/편집: DAW(Logic, Cubase, Ableton 등)에서 작업 시 기본 포맷방송/미디어: 무손실 퀄리티 필요할 때AI/머신러닝:음성 인식(ASR)텍스트-음성 변환(TTS)스피커 인식/.. 2025. 8. 17.
[Python] PyTorch 활용해서 손글씨 데이터를 숫자로 분류하기 안녕하세요오늘은 PyTorch 활용해서 MNIST 손글씨 데이터를, MLP로 분류하는 간단한 예제를 해보겠습니다. 우선 터미널에서 pip install torch torchvisionpip install certificate 을 설치해줍니다. 전체 코드입니다. mnist_mlp.py"""MNIST 손글씨 숫자(0~9) 분류를 위한 '첫 PyTorch 예제'- Dataset/DataLoader 쓰는 법- nn.Module로 모델 만들기- 손실함수/옵티마이저/학습 루프/평가까지 한 번에"""from typing import Selfimport torch# macOS 의 경우 torchvision의 다운로드가 사용하는 기본 HTTPS 컨텍스트에 certifi 인증서 번들을 물려주기위해 활성화할것# import.. 2025. 8. 13.
[Python] 오디오 데이터 전처리 하기 안녕하세요 오늘은 파이썬 라이브러리를 활용하여 오디오 데이터 전처리 작업을 해보려고 합니다. 음성 AI 학습용 데이터를 만들다 보면 앞뒤 무음, 배경 잡음, 샘플레이트 불일치 같은 문제가 자주 발생합니다.특히 직접 녹음한 경우에는 버튼을 누르는 소리, 에어컨 소리, 주변 환경음이 많이 들어가는데파이썬은 이런 오디오 데이터에 대해 전처리 작업을 할 수 있는 다양한 라이브러리를 제공합니다. 오늘은 그중에서도 librosa, scipy, noisereduce, soundfile을 사용할 예정입니다. 1. preprocess_audio.pyimport argparse, csv, osfrom pathlib import Pathimport numpy as npimport soundfile as sfimport l.. 2025. 8. 12.
[Python] nn.Embedding 사용해보기 이번 포스팅에서는 PyTorch의 nn.Embedding 모듈을 사용하여 정수 인덱스를 임베딩 벡터로 변환해보도록 하겠습니다.nn.Embedding은 텍스트 처리에서 자주 사용되는 모듈입니다.앞으로 자연어처리(NLP), 감정 분석, TTS(음성 합성) 등 다양한 딥러닝 프로젝트에 활용될 수 있습니다. 우선 터미널에서 PyTorch를 다운로드 받아줍니다. > pip install torch 전체 코드입니다. embedding_example.pyimport torchimport torch.nn as nn# 임베딩 정의: 총 10개의 단어, 각 단어를 3차원 벡터로 임베딩embedding = nn.Embedding(num_embeddings=10, embedding_dim=3)# 임베딩할 입력 (정수 인덱스).. 2025. 8. 7.
[Python] 폴더 안 이미지 자동 리사이즈 하기 ( WebP 변환 후 일괄 저장) 안녕하세요.오늘은 특정 폴더 내에 있는 이미지 파일들을 원하는 사이즈로 일괄 리사이즈하고,이미지 포맷인 WebP 형식으로 자동 변환해 저장하는 방법을 소개하려고 합니다.이 작업은 블로그, 앱 썸네일, 웹 최적화 이미지 등을 준비할 때 매우 유용하게 쓰일 수 있습니다. 먼저 아래와 같은 준비물이 필요합니다. Python 3.x 이후 버전Pillow 라이브러리 (pip install pillow 로 설치 가능합니다)리사이즈하고 싶은 이미지 파일들 (예: .jpg, .png, .jfif 등) 전체 코드입니다. from PIL import Imageimport os# 현재 스크립트 실행 위치 기준 상대 경로# 원본 이미지 디렉토리 경로(inuput) 와 변환된 이미지가 저장된 디렉토리(output)경로입니다.. 2025. 7. 10.
[Python] 티스토리 웹 크롤링하기 (requests, BeautifulSoup) 안녕하세요 오늘은 티스토리 특정 블로그 게시글의 제목, 작성일자, 내용을 가져오는 웹 크롤링을 해보겠습니다. Python의 requests와 BeautifulSoup 라이브러리를 이용해, 웹 페이지의 HTML을 파싱하고 필요한 정보를 추출할 예정입니다. 크롤링 과정은 아래와 같은 순서로 이루어집니다:URL 요청 및 응답 받기HTML 파싱제목, 작성일, 본문 정보 추출결과 출력 1. 웹 페이지 요청 및 파싱 response = requests.get(url)response.raise_for_status()soup = BeautifulSoup(response.text, 'html.parser')입력된 URL에 요청을 보내고, 응답이 정상인지 확인합니다 (raise_for_status()).HTML 내용을.. 2025. 7. 10.
[Python] NumPy를 이용한 간단한 행렬 연산 및 TensorFlow로 선형 회귀 모델 구축 오늘은 딥러닝의 가장 기본적인 개념인 "선형회귀(Linear Regression)"를 이해하고자 파이썬 데이터 처리 라이브러리 NumPy 와 딥러닝 프레임워크 TensorFlow 를 사용해 간단한 딥러닝 학습 예제를 만들어보겠습니다. 딥러닝 프로젝트에서 Python은 거의 필수적이라고 할 수 있을 정도로 광범위하게 사용됩니다.딥러닝의 핵심 라이브러리들이 대부분 Python을 기반으로 하고 있기 때문입니다! 선형회귀 (Linear Regression) 란 - 선형 회귀는 데이터들 사이의 "선형적인 관계"를 가장 잘 나타내는 "직선"을 찾아내는 통계/머신러닝 기법. 여기서 선형적인 관계란 변수들(X와 Y)이 직선 형태로 증가하거나 감소하는 경향을 보이는 관계를 말합니다. 예시1) 공부 시간에 따른 시험.. 2025. 7. 2.
[Python] 음성 데이터를 Mel 스펙트로그램과 PyTorch 텐서로 변환해보기 딥러닝 모델은 음성 데이터를 직접 이해하지 못합니다. 따라서 음성은 숫자 배열, 즉 ‘텐서(Tensor)’ 형태로 변환되어야 합니다.이 글에서는 음성 파일을 불러와 Mel 스펙트로그램을 추출하고, 이를 PyTorch 텐서로 변환하는 전처리 과정을 실습해봅니다. 1. 라이브러리 설치 pip install librosa torch matplotlibLibrosa 는 오디오 데이터를 분석하고 처리할 수 있게 해주는 라이브러리입니다. 특히 음성이나 음악을 딥러닝에 넣기 전에 전처리하는 데에 최적화 되어 있습니다. 앞서 언급했듯이 TTS 에서 "음성 파일(wav)" 을 바로 모델에 넣을 수 없기 떄문에 사람의 말소리를 "배열"로 바꾸는 전처리 단계가 필요합니다. Librosa 라이브러리에는 오디오 파일 불러.. 2025. 6. 25.
[Python] tkinter으로 GUI 프로그램 만들기 : Todo 리스트 안녕하세요!이번 글에서는 파이썬의 표준 GUI 라이브러리인 tkinter를 이용해 간단한 Todo 리스트 프로그램을 만들어보겠습니다. 1. 준비물Python 설치Python 3.x 버전이 설치되어 있어야 합니다.tkintertkinter는 파이썬에서 그래픽 사용자 인터페이스(GUI) 프로그램을 만들 수 있게 해주는 표준 라이브러리입니다. 복잡한 설정 없이 간단하게 윈도우, 버튼, 입력창 등을 만들 수 있습니다.대부분의 Python 배포판에는 tkinter가 기본 포함되어 있습니다.만약 아래 코드에서 오류가 난다면, 아래 명령어로 설치해주세요.pip install tk 2. Todo 리스트 프로그램 만들기import tkinter as tk # tkinter 모듈을 불러옵니다.f.. 2025. 6. 19.