์์
์ ํ๋ฆ(๋ฐ๊ธฐ ยท ๊ฐ์ฝ ยท ์๋์ง)์ ๋ฐ๋ผ
์ด๋ฏธ์ง์ ํฌ๊ธฐ ยท ์ฑ๋ ยท ํ์ ยท ํฌ๋ช
๋๊ฐ ๋์ ์ผ๋ก ๋ณํํ๋ฉฐ
OpenCV ๊ธฐ๋ฐ ๋ ์ด์ด ๋ฐฉ์์ผ๋ก ์์
๊ธฐ๋ฐ ์ฝ๋ผ์ฃผ ์ํธ์ํฌ๋ฅผ ์์ฑํ๋ ์์ง์
๋๋ค.
์ด ํ๋ก์ ํธ๋ ์์
์ 0.5์ด ๋จ์๋ก ๋ถํ ํ ๋ค
๊ฐ ๊ตฌ๊ฐ์ spectral brightness / energy / tempo๋ฅผ ๋ถ์ํ์ฌ
์ด๋ฏธ์ง์ ์๊ฐ์ ์์ฑ์ ๋ณํ์ํค๋ ๋ฐฉ์์ผ๋ก
์์
์ ๊ฐ์ ์ ๊ณผ ํ๋ฆ์ ์๊ฐ์ ์ผ๋ก ํํํ ์ฝ๋ผ์ฃผ๋ฅผ ์์ฑํฉ๋๋ค.
- Python 3
- OpenCV โ ์ด๋ฏธ์ง ๋ณํ ยท ํ์ ยท ๋ธ๋ ๋ฉ
- NumPy โ ์์น ์ฐ์ฐ
- Librosa โ ์ค๋์ค ๋ฐ๊ธฐ & ์๋์ง ๋ถ์
- Random โ ์์น, ํฌ๊ธฐ, ํ์ ๊ฐ ์์ฑ
src/
main.py # ์์ง ์คํ ํ์ผ
audio.py # ์ค๋์ค ๋ถ์(๋ฐ๊ธฐ/์๋์ง)
image.py # ์ด๋ฏธ์ง ๋ก๋ + ๋ฐ๋ณต ๋ก๋ฉ
scaling.py # brightness โ scale ๋ณํ
collage.py # ๋ ์ด์ด ๊ธฐ๋ฐ ์ฝ๋ผ์ฃผ ์์ฑ
rotate.py # ๊ฒฐ๊ณผ ์ด๋ฏธ์ง ํ์ UI
data/
images/ # ์
๋ ฅ ์ด๋ฏธ์ง
music/ # ์
๋ ฅ ์์
results/
collage_preview.jpg # ํ๋ฆฌ๋ทฐ
collage_final.jpg # ์ต์ข
๊ฒฐ๊ณผ๋ฌผ
- ์์ ์ 0.5์ด ๋จ์๋ก ๋ถํ
- spectral centroid ๊ธฐ๋ฐ brightness ๊ณ์ฐ
- energy & tempo ๋ถ์
- 240๊ฐ segment๋ก ์ ๊ทํ
- ๋ชจ๋ ์ด๋ฏธ์ง๋ฅผ ์ง์ ํฌ๊ธฐ๋ก ๋ฆฌ์ฌ์ด์ฆ
- ๋ถ์กฑํ๋ฉด ์์ฐจ ๋ฐ๋ณตํ์ฌ ์ด 240์ฅ ํ๋ณด
- brightness๋ฅผ 0~1๋ก ์ ๊ทํ
- ์ค์ผ์ผ 0.7 ~ 1.8 ๋งคํ
- ์ด๋ฏธ์ง ํฌ๊ธฐ ยท ์ฑ๋ ยท ํฌ๋ช ๋ ๋ฐ์
๊ฐ ์ด๋ฏธ์ง์ ๋ํด ๋ค์ ํจ๊ณผ ์ ์ฉ:
- ํฌ๊ธฐ ์กฐ์
- ์ฑ๋ ์กฐ์
- ๋๋ค ํ์
- ๋๋ค ์์น ๋ฐฐ์น
- ฮฑ-๋ธ๋ ๋ฉ
์์ ์ ๊ฐ์ ํ๋ฆ์ ๋ ์ด์ด ๊ตฌ์กฐ๋ก ์๊ฐ์ ์ผ๋ก ํํํฉ๋๋ค.
results/
collage_final.jpg
python src/main.py์์
์ ๋ฐ๊ธฐ, ์๋์ง, ๋ฆฌ๋ฌ์ ๊ธฐ๋ฐํ์ฌ
๋์ ์ผ๋ก ๋ณํํ๋ ์๊ฐ์ ์ฝ๋ผ์ฃผ ์ํธ์ํฌ๋ฅผ ์์ฑํ๋ ๊ฒ์ด ๋ชฉํ์
๋๋ค.
- ๋ค์ํ ์ค๋์ค ํน์ง ์ถ๊ฐ (MFCC, beat tracking ๋ฑ)
- ์ด๋ฏธ์ง ์ค์ฒฉ ๊ท์น ๊ฐ์
- ๋ ๋๋ง ์๋ ์ต์ ํ
- GUI ๊ธฐ๋ฐ ์ค์๊ฐ ์ํธ์ํฌ ์์ฑ
This project was developed for the ์์์ฒ๋ฆฌ ํ๋ก๊ทธ๋๋ฐ course.
