블로그
전체 19#카테고리
- AI 실무 활용
- AI 코딩
- 웹 개발
- 개발 · 프로그래밍 기타
- AI 개발 활용
#태그
- 잡학다식개발자
- AI보이스
- RVC학습
- AI성우
- 클립챔프
- 파이썬자동화
- 인공지능목소리
- 딥러닝실습
- AI
- 파이썬
- 코딩
- AI텍스트분석
- Streamlit
- 개발자
- 프로그래밍
- AI탐지
- python
- Python
- AI비디오
- Kling
- 클링
- AI영상제작
- Moviepy
- 동영상편집
- 하드컷
- GitHubActions
- 자동화
- 중고차크롤링
- 유지비시뮬레이터
- 워드프레스
- 오라클클라우드
- 토이프로젝트
- RedditAPI
- PRAW
- 글로벌마케팅
- 소프트웨어개발
- 파이썬독학
- 레딧자동화
- PythonAutomation
- 스쿨존과태료
- 데이터시각화
- 어린이보호구역
- 과태료시뮬레이터
- PYTHON
- opensource
- GoogleColab
- Photography
- Matplotlib
- NumPy
- 시뮬레이션
- F1
- 모터스포츠
- 차계부
- 차량관리
- 자동차유지비
- 연비
- 전비
- 데이터분석
- 스트림릿
- 테슬라
- FSD
- 엔드투엔드
- 자율주행
- 딥러닝
- 아키텍처
- IT트렌드
- 인공지능
- 테슬라비전
- 센서퓨전
- 알고리즘
- 데이터시뮬레이션
- 자율주행코딩
- OpenCV
- 컴퓨터비전
- pyproject
- 웹크롤링
- Playwright
- 파이썬입문
- 영상편집
- 시각화
- rembg
- 배경제거
- 누끼따기
![[오디오 전처리] RVC AI 성우 데이터셋 슬라이싱 스크립트](https://cdn.inflearn.com/public/files/blogs/fe93ec3d-9e76-4685-9b06-4814daced0d5/local_ai_voice_train_THUMBNEIL_2.png?w=260)
2026. 06. 13.
0
[오디오 전처리] RVC AI 성우 데이터셋 슬라이싱 스크립트
안녕하세요. 파이썬 기반의 자동화 파이프라인을 구축하고 있는 개발자입니다.로컬 환경에서 RVC(Voice Conversion) 모델을 학습할 때, 10분 이상의 롱테이크 오디오를 그대로 인풋으로 밀어 넣으면 consumer GPU(RTX 2060 6GB 등) 환경에서는 세션이 바로 터져버립니다. 호흡선(무음)을 추적하여 오디오를 3~5초 조각으로 정밀 분할해 주는 자동화 스크립트를 공유합니다.구형 requirements.txt 대신 현대 파이썬 표준 패키지 규격인 pyproject.toml 및 uv sync를 사용하여 의존성 충돌을 최소화했습니다.### 🛠 Core Audio Slicing Logicimport os from pydub import AudioSegment from pydub.silence import split_on_silence def slice_audio_for_rvc(source_path, output_dir): audio = AudioSegment.from_file(source_path) chunks = split_on_silence( audio, min_silence_len=500, # 500ms 이상 무음 감지 silence_thresh=-40 # -40dB 이하 기준 ) os.makedirs(output_dir, exist_ok=True) for i, chunk in enumerate(chunks): chunk.export(f"{output_dir}/slice_{i:03d}.wav", format="wav") print(f"[SUCCESS] {len(chunks)} Slices Generated.")📊 이론과 현실의 간극 (Overfitting 방지 팁)교과서적 이론: Loss 값이 0에 수렴할 때까지 무제한 에포크를 돌려야 완벽한 휴먼 보이스가 나온다.프로덕션 현실: 10분 내외 데이터셋 기준, 300 에포크가 넘어가는 순간 모델이 데이터를 통째로 외우는 과적합이 발생하여 금속성 노이즈와 딱딱한 기계음이 섞입니다. 가장 자연스러운 인퍼런스 결과물은 140~160 에포크 구간에서 동적으로 결정됩니다.🚀 오픈소스 및 구동 영상 참고상세한 오디오 디코딩 원리와 시각적인 파이프라인 빌드 과정은 제 유튜브 콘텐츠를 참고해 주시기 바랍니다. 로컬 빌드가 번거로우신 분들을 위해 깃허브 레포지토리를 그대로 긁어와 구글 가상 컴퓨터에서 1초 만에 실행 가능한 Google Colab 링크도 함께 첨부합니다. 검증된 소스이니 안심하고 사용하셔도 됩니다. 도움이 되셨다면 깃허브 Star(⭐) 한 번씩 부탁드립니다.🎬 유튜브 콘텐츠: https://youtu.be/mthR8T4Lkcw📦 전체 과정 설명 PDF : https://drive.google.com/file/d/1rvE2iszddyTVWIIE-zcC4luw0XVHBjA2/view?usp=drive_link 🚀 Google Colab 하이패스 링크: https://colab.research.google.com/github/gohard-lab/local_ai_voice_train/blob/main/local_ai_voice_train.ipynb📦 GitHub 저장소: https://github.com/gohard-lab/local_ai_voice_train
잡학다식개발자
・
AI보이스
・
RVC학습
・
AI성우
・
클립챔프
・
파이썬자동화
・
인공지능목소리
・
딥러닝실습
・
AI

2026. 06. 08.
0
파이썬으로 구현하는 간단한 AI 텍스트 패턴 분석기
파이썬으로 구현하는 간단한 AI 텍스트 패턴 분석기 안녕하세요. 최근 AI가 생성한 텍스트가 늘어남에 따라 그 패턴을 분석해 보고자 Streamlit을 활용한 간단한 분석기를 만들어 보았습니다.핵심 기능텍스트의 버스티니스(Burstiness)와 클리셰(Cliche) 지수 계산AI 작성 확률에 대한 직관적인 수치 제공파이썬 pyproject.toml 기반의 의존성 관리구체적인 작동 원리와 코드 구성은 아래 유튜브 콘텐츠를 참고해 주시기 바랍니다.- GitHub : https://github.com/gohard-lab/ai_text_detector- 유튜브 : https://www.youtube.com/watch?v=xSgHojC45kk- 블로그(워드프레스) :https://gohard.pe.kr/ 코드 실행 파일은 안심하고 이용하셔도 좋습니다. 많은 관심 부탁드립니다.
AI 실무 활용
・
파이썬
・
코딩
・
AI텍스트분석
・
Streamlit
・
개발자
・
잡학다식개발자
・
프로그래밍
・
AI탐지
・
python

2026. 05. 29.
0
파이썬 Streamlit을 활용한 차량 물리 접지력 시뮬레이터 (콰트로 vs 후륜)
안녕하세요. '잡학다식 개발자'입니다. Python의 Streamlit과 Matplotlib을 활용하여, 차량의 구동 방식과 노면 상태에 따른 물리적 접지력(Traction) 변화를 실시간으로 렌더링하는 시뮬레이터를 제작해 보았습니다.웹 프론트엔드 구축 없이 Streamlit의 세션 상태st.session_state)와 상호작용 위젯을 활용하여, 조건 변경 시 차트가 즉각적으로 반응하도록 구현한 토이 프로젝트입니다.### 💡 핵심 구현 로직 (Traction Mapping)차량의 그립력은 타이어 종류와 노면 상태의 상성 데이터, 그리고 구동 방식(AWD/RWD)에 따른 동력 분산 보너스를 계산하여 산출합니다.# 업데이트된 타이어 마찰 계수 데이터베이스 friction_map = { "익스트림 서머 (넥센 SUR4G, 한국 RS4 등)": {"마른 아스팔트": 1.2, "빗길": 0.6, "눈길": 0.1}, "UHP 서머 (미쉐린 PS4S, 피렐리 P Zero 등)": {"마른 아스팔트": 1.1, "빗길": 0.8, "눈길": 0.15}, "프리미엄 사계절 (미쉐린 MXM4 등)": {"마른 아스팔트": 0.9, "빗길": 0.7, "눈길": 0.3}, "윈터 타이어 (브리지스톤 블리작 등)": {"마른 아스팔트": 0.8, "빗길": 0.6, "눈길": 0.6} } base_mu = friction_map[tire_type][road_cond] drivetrain_bonus = 1.5 if drivetrain == "사륜구동(AWD/Quattro)" else 1.0 traction_score = base_mu * drivetrain_bonus # 에어로 효과 실시간 반영 (고속 주행 다운포스) if apply_aero: traction_score += 0.15이 계산식을 통해, 일반 승용차가 절대 안전 기준선(0.9G)을 넘나드는 과정과 F1 레이스카의 압도적인 물리적 한계치(4.5G)를 동일한 스케일의 차트에서 동적으로 비교합니다.🔗 소스 코드 및 실행 안내구체적인 작동 원리와 코드가 실제 자동차의 물리 법칙과 어떻게 매칭되는지에 대한 자세한 설명은 아래 유튜브 콘텐츠를 참고해 주시기 바랍니다.▶ 시뮬레이터 구현 및 물리 로직 해설:https://youtu.be/j4q25_HD5Ik💻 GitHub 저장소 (전체 코드):https://github.com/gohard-lab/quattro_simulator직접 실행해 보기:접지력 시뮬레이터(Streamlit):https://quattrosimulator-kbsulzwvq8ucrcpph6rfg5.streamlit.app/
파이썬
・
Python
・
코딩
・
AI비디오
・
Kling
・
클링
・
AI영상제작
・
Moviepy
・
동영상편집
・
잡학다식개발자

2026. 05. 29.
0
AI로 사진을 영상으로 만드는 법과 파이썬 무손실 영상 병합 워크플로우
최근 Kling이나 Runway 같은 최신 AI 비디오 생성 도구를 활용해 정지된 이미지(Image)를 고품질 비디오(Video)로 변환하는 I2V(Image-to-Video) 워크플로우를 실험해 보고 있습니다. 단일 이미지를 시작점(Start Frame)으로 두고 프롬프트를 통해 내추럴한 카메라 무빙을 렌더링하는 방식인데, 생각보다 결과물의 디테일이 훌륭하여 숏폼이나 B-roll 콘텐츠 제작에 유용하게 활용할 수 있습니다. 다만, 이렇게 생성된 여러 개의 독립된 단편 영상 클립들을 하나의 완성된 롱테이크 영상으로 매끄럽게 이어붙이기 위해 외부 파이프라인이 필요했습니다. 디코딩 과정에서의 프레임 겹침(잔상)이나 픽셀 노이즈를 방지하고 원본 화질을 그대로 유지하기 위해, moviepy 라이브러리를 활용한 순수 하드 컷(Hard Cut) 병합 스크립트를 작성하여 자동화했습니다. from moviepy.editor import VideoFileClip, concatenate_videoclips # 1. AI로 생성한 개별 영상 클립 조각들 로드 # 예: 이미지 A➔B로 생성된 영상과 이미지 B➔C로 생성된 영상을 순차적으로 준비 clips = [VideoFileClip(f"scene_{i}.mp4") for i in range(1, 4)] # 2. 인코딩 기교를 배제하고, 픽셀 단위 프레임 매칭을 위한 무손실 하드 컷(method="chain") 병합 final_video = concatenate_videoclips(clips, method="chain") # 3. 멀티코어 프로세싱 강제 할당 및 렌더링 최적화 세팅 final_video.write_videofile( "final_masterpiece.mp4", threads=4, preset="ultrafast" ) 이 워크플로우의 핵심은 AI 생성 단계에서 첫 영상의 종착점(End Frame) 이미지와 다음 영상의 시작점(Start Frame) 이미지를 완벽하게 일치시킨 뒤, 파이썬에서 하드 컷으로 결합하는 것입니다. 이렇게 하면 복잡한 연산 없이도 픽셀 단위로 정확히 맞물려 마치 처음부터 하나의 롱테이크로 촬영된 듯한 자연스러운 화면 전환이 가능해집니다. AI 도구를 활용한 구체적인 비디오 생성 팁과, A ➔ B ➔ C 프레임 매칭 논리가 파이썬 코드와 결합하여 무손실 영상으로 조립되는 상세한 작동 원리는 아래 유튜브 콘텐츠에 정리해 두었습니다. 관련하여 더 좋은 파이프라인 아이디어가 있으신 분들의 의견도 언제나 환영합니다. 유튜브 영상 : https://youtu.be/nF4JrHf0IzI
파이썬
・
Python
・
코딩
・
AI비디오
・
Kling
・
클링
・
AI영상제작
・
Moviepy
・
동영상편집
・
하드컷

2026. 05. 12.
0
Streamlit 앱 동면 방지 자동화와 실전 프로젝트 4종을 공유합니다
유튜브:https://youtu.be/eFfNM3tPuVA?si=ih03-JdCgJuft12J 안녕하세요, 파이썬 기반의 다양한 자동화 도구를 만드는 '잡학다식 개발자'입니다.무료 호스팅 서비스인 Streamlit Community Cloud를 사용하다 보면, 일정 시간 접속이 없을 때 앱이 자동으로 잠드는(Sleeping) 현상 때문에 정성껏 만든 서비스가 제때 보이지 않아 아쉬울 때가 많습니다. 이를 해결하기 위해 GitHub Actions를 활용한 'awake_alive' 워크플로우를 구축하여 공유하고자 합니다.단순히 핑(Ping)을 보내는 기능을 넘어, 현재 제가 운영 중인 중고차 데이터 분석, 자동차 유지비 시뮬레이터, 고전 게임 대시보드 등 성격이 다른 여러 앱을 한꺼번에 효율적으로 관리하도록 설계했습니다. [핵심 코드: GitHub Actions 기반 동면 방지 로직]# .github/workflows/awake_alive.yml name: Keep Streamlit Apps Awake on: schedule: - cron: '0 */12 * * *' # 12시간마다 주기적으로 실행 workflow_dispatch: # 수동 실행 가능 jobs: ping: runs-on: ubuntu-latest steps: - name: Send keep-alive pings to multiple apps run: | # 운영 중인 다양한 서비스 URL 리스트 urls=( "https://kcar-scraper.streamlit.app" "https://maintenance-battle.streamlit.app" "https://retro-game-center.streamlit.app" ) for url in "${urls[@]}"; do curl -s $url > /dev/null echo "Successfully pinged: $url" done 이번 콘텐츠에서는 위 자동화 코드뿐만 아니라, 오라클 클라우드에 직접 구축한 워드프레스 뉴스 블로그(gohard.pe.kr) 등 서로 다른 환경의 서비스들을 어떻게 연결하고 유지하는지에 대한 경험을 담았습니다.기술적인 상세 구현 방법과 전체 프로젝트 리스트는 아래 링크에서 확인하실 수 있습니다.✅ 잡학다식 개발자 블로그(Apex)https://gohard.pe.kr/🧔 내 차 유지비 관리(이건 여러분이 저의 콘텐츠를 보고 만들어 보시면 되요)https://cheiridrivingdashboard-cgpdkn...관련 영상 : • 매월 줄줄 새는 내 차 유지비, 완벽하게 통제하는 가장 쉬운 방법 🚗 내 차 vs 네 차! 유지비 배틀 시뮬레이터현실적인 차량 유지비를 바 차트로 한눈에 비교해 보세요.https://cheiridrivingdashboard-cgpdknof3nnvufwaeyzkhr.streamlit.app/🚦 스쿨존 과태료 시뮬레이터법규 위반 시 과태료 확인 및 전국 실시간 접속 히트맵 시각화.https://schoolzonefinesim.streamlit.app/🏎 F1 Race AnalyzerF1 공식 데이터를 기반으로 한 정교한 텔레메트리 및 랩 페이스 분석.https://f1-race-analyzer-9pbapphbkgmo6rguympwshf.streamlit.app/📊 K-Car 중고차 시세 분석 대시보드네트워크 인터셉션 기술을 활용한 현업 수준의 동적 크롤링 도구.https://kcarcrawler-5ryuwuw8izgjmqphppweyv.streamlit.app/ GitHub 저장소: https://github.com/gohard-lab실행 링크: 영상 설명란의 Google Colab 및 EXE 실행 파일을 확인해 주세요. (배포 파일은 보안 검수를 마쳤으므로 안심하고 사용하셔도 됩니다.)
파이썬
・
Streamlit
・
GitHubActions
・
자동화
・
중고차크롤링
・
유지비시뮬레이터
・
워드프레스
・
오라클클라우드
・
잡학다식개발자
・
토이프로젝트

2026. 04. 28.
0
파이썬으로 레딧(Reddit) 자동화 툴을 만들며 느낀 '이론과 현실'의 차이
안녕하세요. 국내 서비스에만 머물지 않고 글로벌 커뮤니티인 레딧(Reddit)으로 소통 범위를 넓혀보고자, 파이썬을 활용한 글로벌 소통 자동화 툴을 구현해 보았습니다.단순히 API 문서에 나온 대로 코드를 짜면 금방 해결될 줄 알았지만, 실제 생태계는 이것과는 다르죠. 각자가 원하는 룰이 다르기 때문에 단순 '자동화'로만 접근했다가는 뭔가 2% 부족한 코드가 되고 맙니다.프로젝트에 사용된 핵심 로직의 일부를 공유합니다.import praw from supabase import create_client from tracker import log_usage # Reddit API 객체 생성 및 Supabase 사용량 추적 초기화 def initialize_reddit(): reddit = praw.Reddit( client_id="YOUR_CLIENT_ID", client_secret="YOUR_CLIENT_SECRET", user_agent="vlog_01_global_reddit_communication by /u/PolymathDev" ) # 사용량 추적 기능 포함 log_usage("reddit_automation_start") return reddit def post_to_subreddit(reddit, subreddit_name, title, content): subreddit = reddit.subreddit(subreddit_name) # 실제 현실에서는 단순히 submit을 하는 것이 아니라, # 서브레딧별 Karma 제한과 Rate Limit을 정교하게 다뤄야 합니다. subreddit.submit(title, selftext=content)이론적으로는 API 호출 한 번으로 끝나지만, 실제 현실에서 글로벌 유저들의 거부감을 사지 않으면서 자연스럽게 소통하기 위해 제가 선택한 '치명적인 한 수'가 무엇인지, 그리고 개발 과정에서 발견한 의외의 단점은 무엇인지 영상에 솔직 담백하게 담았습니다.전체 소스 코드와 구체적인 구현 전략이 궁금하신 분들은 아래 영상을 참고해 주시면 감사하겠습니다. * 유튜브 배경제거 영상 확인하기 : https://youtu.be/FGUJ1bUF9K0* 유튜브 브이로그 영상 확인하기 : https://youtu.be/YfW6-hBYM4E
AI 실무 활용
・
파이썬
・
RedditAPI
・
PRAW
・
자동화
・
글로벌마케팅
・
잡학다식개발자
・
소프트웨어개발
・
파이썬독학
・
레딧자동화
・
PythonAutomation

2026. 04. 21.
0
Streamlit과 Plotly로 구현한 스쿨존 과태료 시뮬레이터 및 실시간 히트맵
공공 데이터를 활용해 실무적인 도구를 만드는 과정에서 직면했던 시각화 이슈와 데이터 트래킹 로직을 공유합니다.이번 프로젝트의 핵심은 Plotly Express와 Graph Objects를 활용한 레이어 중첩 처리였습니다. 특히 히트맵 위에 동적 마커를 안정적으로 렌더링하기 위한 데이터 형변환 과정이 핵심입니다.# 🎯 레이어 중첩 및 히트맵 렌더링 핵심 로직 fig = px.density_mapbox( city_counts, lat='lat', lon='lon', z='조회건수', radius=35, center=dict(lat=36.5, lon=127.5), zoom=6.5, mapbox_style="carto-positron", hover_name='city' )전체적인 시스템 아키텍처와 Supabase를 활용한 익명 데이터 로깅 방식, 그리고 개발 과정에서 발견한 Plotly의 치명적인 렌더링 버그와 해결 방법은 아래 영상에서 자세히 확인하실 수 있습니다.[기술 리뷰 및 소스 코드 확인]유튜브: https://youtu.be/3NTzOH-QUOI과태료 조회 : https://schoolzonefinesim.streamlit.app/GitHub: https://github.com/gohard-lab/school_zone_fine_sim
스쿨존과태료
・
파이썬
・
데이터시각화
・
어린이보호구역
・
잡학다식개발자
・
과태료시뮬레이터

2026. 04. 13.
0
🚀 인위적인 번들거림을 제거한 고충실도(High-fidelity) AI 업스케일러 공개
기존 AI 화질 개선 툴들이 보여주는 특유의 부자연스러운 매끄러움(Plastic look)에 아쉬움을 느껴 직접 제작한 GoHard AI Upscaler를 소개합니다. 단순히 해상도를 키우는 것을 넘어, 원본이 가진 고유의 질감을 보존하는 데 집중했습니다.✨ 핵심 가치 (Core Values)High-fidelity AI Upscaling: 공격적인 노이즈 제거 대신, 실제 사진과 같은 자연스러운 입자감과 구조적 디테일을 복원합니다.Clean and Intuitive UI: 복잡한 설정 없이 작업에만 집중할 수 있도록 직관적이고 깔끔한 인터페이스를 갖췄습니다.Safe & Private Environment: 사용자의 데이터는 외부 서버로 전송되지 않습니다. 로컬 환경 또는 안전하게 격리된 Google Colab에서만 처리됩니다.💻 핵심 로직 (Python 기반)IT 커뮤니티(OKKY, 벨로그 등)의 성격에 맞춰 기술적 원리를 엿볼 수 있는 핵심 코드 일부를 공유합니다.# 고충실도 텍스트 보존 엔진 예시 from gohard_engine import FidelityModel from tracker_web import log_app_usage def process_high_res(image_path): # 인위적인 스무딩을 억제하고 디테일을 재구성 upscaler = FidelityModel(mode="texture_priority") log_app_usage("upscaler_v1", "high_res_task") return upscaler.run(image_path)🚨 치명적인 단점과 기술적 한계이 프로그램은 완벽하지 않습니다. 고충실도(High-fidelity) 구현을 위해 구조적으로 감수해야 했던 치명적인 단점 한 가지가 존재합니다. 이 기술적 병목 현상이 발생하는 구체적인 이유와 제작 과정에서의 비하인드는 아래 영상에 솔직하게 담았습니다.(배포된 실행 파일은 철저한 검증을 거쳤으므로 안심하고 사용하셔도 됩니다.)치명적인 이유 확인 (유튜브): https://youtu.be/vXHdwpibqEo개발자 양심 가이드: 이 프로그램이 도움이 되었다면, ‘체리피커’가 되기보다 개발자의 양심을 담아 GitHub Star 하나만 부탁드립니다! ⭐
AI 코딩
・
AI
・
PYTHON
・
opensource
・
파이썬
・
GoogleColab
・
Photography
![[Open Source] 파이썬으로 직접 만드는 100% 무료 AI 화질 개선 툴 (4K](https://cdn.inflearn.com/public/files/blogs/51c5b702-f4ec-4c15-9c2d-31a0b48ee9f7/thumbNeil_ko.png?w=260)
2026. 04. 05.
0
[Open Source] 파이썬으로 직접 만드는 100% 무료 AI 화질 개선 툴 (4K
안녕하세요. 평소 자동차와 IT 기술을 사랑하며 '잡학다식 개발자' 채널을 운영 중인 개발자입니다.최근 유료 AI 이미지 업스케일러 서비스들이 많아졌지만, 소중한 개인 사진을 외부 서버에 업로드하는 것이 보안상 꺼려질 때가 많았습니다. 그래서 Real-ESRGAN 모델을 활용해 내 로컬 PC에서 100% 오프라인으로 작동하는 화질 개선 프로그램을 직접 구현해 보았습니다.주요 특징100% Offline: 외부 서버 전송 없이 로컬에서 안전하게 처리Real-ESRGAN 기반: 딥러닝 모델을 통한 정밀한 디테일 복원Batch Processing: 수십 장의 저화질 사진을 한 번에 4K로 변환핵심 코드 스니펫 (Python)전체 로직의 핵심인 모델 로드와 추론 부분입니다. upscale_image 함수 하나로 저화질 이미지의 노이즈를 제거하고 해상도를 복원합니다.Pythonimport cv2 from basicsr.archs.rrdbnet_arch import RRDBNet from realesrgan import RealESRGANer def upscale_image(image_path, model_path, tile=0): # Real-ESRGAN 모델 구조 설정 model = RRDBNet(num_in_ch=3, num_out_ch=3, num_feat=64, num_block=23, num_grow_ch=32, scale=4) upsampler = RealESRGANer(scale=4, model_path=model_path, model=model, tile=tile) img = cv2.imread(image_path, cv2.IMREAD_UNCHANGED) output, _ = upsampler.enhance(img, outscale=4) return output # 라이브러리 설치 시 uv를 사용하면 더욱 빠르고 안정적입니다. # uv pip install realesrgan basicsr 구체적인 작동 원리나 저해상도 자동차 사진이 4K로 변환되는 실제 테스트 과정은 유튜브 콘텐츠를 참고해 주시면 감사하겠습니다. 특히 영상 후반부에는 오픈소스 모델이 상용 서비스보다 아쉬운 치명적인 단점에 대해서도 솔직하게 담았습니다. 👉[유튜브 콘텐츠 확인하기](※ 실행 파일은 제가 직접 빌드한 것이니 안심하고 받으셔도 됩니다.)
AI 실무 활용
![[Python] Matplotlib을 활용한 F1 레이스카 궤적 이탈 시뮬레이션 구현](https://cdn.inflearn.com/public/files/blogs/8e40c59b-80e8-4c4f-9de0-6e2a45249857/thumbNeil_kor_2.png?w=260)
2026. 03. 30.
0
[Python] Matplotlib을 활용한 F1 레이스카 궤적 이탈 시뮬레이션 구현
안녕하세요.오늘은 파이썬의 NumPy와 Matplotlib 애니메이션 기능을 활용해, F1 차량의 코너링 중 접지력 상실(Hydroplaning) 시점을 계산하고 궤적을 시각화하는 시뮬레이션을 구현해 보았습니다.개발을 하다 보면 종종 '모든 물리 변수를 정밀하게 넣어야 완벽한 코드'라는 이론적 강박에 빠지곤 합니다. 하지만 목적이 '데이터 추출'이 아닌 '현상의 시각화'라면, 모델의 복잡도를 낮추는 것이 렌더링 최적화와 직관성 측면에서 현실적인 정답이 될 수 있습니다.아래는 차량의 현재 위치와 속도, 중력가속도를 계산하여 그립(Grip) 상실 여부에 따라 궤적 벡터를 분기하는 핵심 코드 블록입니다.def calculate_state(t, v0, r, drag_coef): dt_step = t if t = config['t_hydroplaning']: lost_grip_theta = initial_theta + omega * config['t_hydroplaning'] lost_grip_pos = np.array([r * np.cos(lost_grip_theta) + r, r * np.sin(lost_grip_theta) + r]) lost_grip_v_vec = np.array([-v0 * np.sin(lost_grip_theta), v0 * np.cos(lost_grip_theta)]) slide_time = t - config['t_hydroplaning'] slide_accel = drag_coef * v0 slide_v_mag = max(0, v0 - slide_accel * slide_time) slide_v_avg = (v0 + slide_v_mag) / 2 slide_dist = slide_v_avg * slide_time v0_unit_vec = lost_grip_v_vec / v0 if v0 > 0 else np.array([0, 0]) car_x = lost_grip_pos[0] + v0_unit_vec[0] * slide_dist car_y = lost_grip_pos[1] + v0_unit_vec[1] * slide_dist return car_x, car_y 이 코드가 실제 화면에서 어떻게 애니메이션으로 구동되는지, 그리고 현업 데이터 분석 환경에서는 이론적인 수식과 어떤 간극이 존재하는지에 대한 구체적인 작동 원리와 자세한 설명은 아래 유튜브 콘텐츠를 참고해 주시면 감사하겠습니다. https://youtu.be/tZ1Vvy1g0Yg
AI 코딩
・
Python
・
파이썬
・
데이터시각화
・
Matplotlib
・
NumPy
・
시뮬레이션
・
F1
・
모터스포츠




