Skip to content

πŸ–₯✏ Commentor : Project that provides audio commentary on the content shown on the slide screen of lecture videos

Notifications You must be signed in to change notification settings

DyeonPark/commenting-lecture-slide

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

13 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

μ‹œκ°μž₯μ•  학생을 μœ„ν•œ λ™μ˜μƒ κ°•μ˜ ν™”λ©΄ μŒμ„± ν•΄μ„€ μ„œλΉ„μŠ€
Automatic Voice Commentary System for Online Video Lecture for Visually Impaired Students

μˆ™λͺ…μ—¬μžλŒ€ν•™κ΅ IT곡학전곡 2021λ…„ 1ν•™κΈ° μ‘Έμ—… ν”„λ‘œμ νŠΈ


ν”„λ‘œμ νŠΈ λ°°κ²½

  • μ½”λ‘œλ‚˜ λ°”μ΄λŸ¬μŠ€μ˜ ν™•μ‚° 방지λ₯Ό μœ„ν•΄ λŒ€λ‹€μˆ˜μ˜ κ΅μœ‘κΈ°κ΄€μ—μ„œ λΉ„λŒ€λ©΄ κ°•μ˜ μ‹œμŠ€ν…œμ„ λ„μž…ν•˜μ˜€μŒ
  • λ™μ˜μƒ κ°•μ˜λŠ” λΉ„λŒ€λ©΄ κ°•μ˜ μ‹œμŠ€ν…œμ˜ λ§Žμ€ 뢀뢄을 μ°¨μ§€ν•˜κ³  있음
  • κ·ΈλŸ¬λ‚˜, μ‹œκ°μž₯μ•  학생듀은 λ™μ˜μƒ κ°•μ˜μ˜ 화면에 무엇이 λ‚˜μ˜€λŠ”μ§€ μ•Œ μˆ˜κ°€ μ—†μ–΄ κ°•μ˜ λ‚΄μš© 이해도가 λ–¨μ–΄μ§€λŠ” λ¬Έμ œκ°€ λ°œμƒν•¨
  • λ˜ν•œ κ°•μ˜μžλ£Œμ™€ ν•¨κ»˜ μ‚¬μš©ν•˜κΈ°λ„ μ–΄λ €μ›Œμ„œ ν˜„μž¬ μˆ˜μ—…ν•˜λŠ” λ‚΄μš©μ΄ κ°•μ˜μžλ£Œμ—μ„œ λͺ‡ νŽ˜μ΄μ§€μ— ν•΄λ‹Ήν•˜λŠ” 지도 μ•ŒκΈ° 어렀움

λ”°λΌμ„œ ν™”λ©΄ λ“±μž₯ν•˜λŠ” κ°•μ˜μžλ£Œμ˜ νŽ˜μ΄μ§€ 정보λ₯Ό λ‚΄μš©κ³Ό ν•¨κ»˜ ν•΄μ„€ν•΄μ£ΌλŠ” μ‹œμŠ€ν…œμ„ κ΅¬μΆ•ν•˜κ³ ,
μ΄λŸ¬ν•œ μžλ™ ν•΄μ„€ λ™μ˜μƒμ„ μ‚¬μš©ν•˜κΈ° μš©μ΄ν•˜λ„λ‘ μ „μš© μ›Ή ν”Œλ ˆμ΄μ–΄λ₯Ό ν•¨κ»˜ μ œκ³΅ν•˜κ³ μž 함!


처리 ν”„λ‘œμ„ΈμŠ€

  1. κ΅μˆ˜μžκ°€ κ°•μ˜ λ™μ˜μƒκ³Ό κ°•μ˜μžλ£Œ νŒŒμΌμ„ μ—…λ‘œλ“œν•¨
  2. μ„œλ²„μ— κ΅¬μΆ•λ˜μ–΄ μžˆλŠ” μ‹œμŠ€ν…œμ΄ κ°•μ˜ λ™μ˜μƒ λ‚΄ μŠ¬λΌμ΄λ“œ μ „ν™˜ μ‹œμ μ„ λ„μΆœν•˜κ³ , ν•΄λ‹Ή μŠ¬λΌμ΄λ“œκ°€ κ°•μ˜μžλ£Œμ˜ λͺ‡ 번째 νŽ˜μ΄μ§€μ— ν•΄λ‹Ήν•˜λŠ”μ§€ μœ μ‚¬λ„ 맀칭 μ•Œκ³ λ¦¬μ¦˜μ„ 톡해 νŒŒμ•…
  3. κ°•μ˜μžλ£Œμ—μ„œ μŠ¬λΌμ΄λ“œλ³„λ‘œ ν…μŠ€νŠΈ, 이미지, ν‘œμ— λŒ€ν•΄μ„œ μžλ™μœΌλ‘œ 해섀을 μ œκ³΅ν•˜λŠ” λΉ„λ””μ˜€ νŒŒμΌμ„ 생성
  4. μ•žμ„  2λ‹¨κ³„μ—μ„œ μ•Œμ•„λ‚Έ μŠ¬λΌμ΄λ“œλ³„ λ™μ˜μƒ κ°•μ˜ λ‚΄ λ“±μž₯μ‹œμ  정보λ₯Ό 기반으둜 직접 μƒμ„±ν•œ ν•΄μ„€ λΉ„λ””μ˜€ 파일과 원본 κ°•μ˜ λ™μ˜μƒμ„ μ‘°ν•© β†’ μƒˆλ‘œμš΄ ν•΄μ„€ λΉ„λ””μ˜€ 파일 생성
  5. 학생은 ν‚€λ³΄λ“œλ‘œ κ°„νŽΈν•˜κ²Œ μ‘°μž‘ν•  수 μžˆλŠ” μ „μš© ν”Œλ ˆμ΄μ–΄λ₯Ό μ‚¬μš©ν•˜μ—¬ ν•΄μ„€ κ°•μ˜ λ™μ˜μƒμ„ μˆ˜κ°•

λ°œν‘œ μ˜μƒ 및 λ…Όλ¬Έ

Β 


μ‹œμ—° μ˜ˆμ‹œ 이미지

  1. 원본 κ°•μ˜ μ—…λ‘œλ“œ 및 ν•΄μ„€ μ‚½μž… (ꡐ수자 ν™”λ©΄): κ΅μˆ˜μžκ°€ λ‘œκ·ΈμΈν•˜λ©΄ κΈ°μ‘΄ LMS μ‹œμŠ€ν…œμ„ μ΄μš©ν–ˆλ˜ 것과 λ™μΌν•˜κ²Œ λ™μ˜μƒκ³Ό κ°•μ˜μžλ£Œλ₯Ό μ—…λ‘œλ“œν•˜λ©΄, λ³Έ μ‹œμŠ€ν…œμ΄ μžλ™μœΌλ‘œ 이λ₯Ό λΆ„μ„ν•˜μ—¬ μŠ¬λΌμ΄λ“œλ§ˆλ‹€ 해섀을 μ‚½μž…ν•©λ‹ˆλ‹€
  2. 온라인 κ°•μ˜ ν”Œλž«νΌ ν™ˆνŽ˜μ΄μ§€ (학생 ν™”λ©΄): 학생이 LMS μ‹œμŠ€ν…œμ— λ‘œκ·ΈμΈν•˜λ©΄, κΈ°μ‘΄κ³Ό λ™μΌν•˜κ²Œ κ°•μ’Œλͺ©λ‘μ„ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€. μ—¬κΈ°μ„œ 'ν•΄μ„€ λΉ„λ””μ˜€ 파일 μž¬μƒ' λ²„νŠΌμ„ λˆ„λ₯΄λ©΄ μžλ™μœΌλ‘œ 해섀이 μ œκ³΅λ˜λŠ” λ™μ˜μƒμ„ μ „μš© ν”Œλ ˆμ΄μ–΄λ‘œ μž¬μƒν•  수 μžˆμŠ΅λ‹ˆλ‹€

  1. 원본 κ°•μ˜ λ™μ˜μƒ(mp4): 원본 κ°•μ˜ λ™μ˜μƒμ€ μ•„λ¬΄λŸ° 해섀이 μ œκ³΅λ˜μ§€ μ•ŠλŠ” κ΅μˆ˜μžκ°€ μ²˜μŒμ— 올린 λ™μ˜μƒμž…λ‹ˆλ‹€
  2. κ°•μ˜μžλ£Œ 해섀이 μ œκ³΅λ˜λŠ” λΉ„λ””μ˜€ ν”Œλ ˆμ΄μ–΄: κ°•μ˜μžλ£Œ 화면에 λŒ€ν•΄μ„œ μžλ™μœΌλ‘œ 해섀이 μ œκ³΅λ˜λŠ” λ™μ˜μƒμ„ 효과적으둜 이용 및 μˆ˜κ°•ν•˜κΈ° μœ„ν•œ μ „μš© ν”Œλ ˆμ΄μ–΄μ˜ λͺ¨μŠ΅μž…λ‹ˆλ‹€. ν‚€λ³΄λ“œλ‘œ κ°„λ‹¨ν•˜κ²Œ λ™μž‘μ΄ κ°€λŠ₯ν•˜λ©°, μ •μ•ˆμΈ 학생도 μ΄μš©ν•  수 μžˆλ„λ‘ μŠ¬λΌμ΄λ“œ μ „ν™˜ μ‹œμ  λ‹¨μœ„λ‘œ GUIλ₯Ό κ΅¬μ„±ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

μ‹€ν–‰ 방법

python manage.py runserver

μ„€μΉ˜ν•  라이브러리

 $ pip install opencv-python scenedetect pandas pdf2image fitz pillow scikit-image gtts pdfplumber googletrans pytesseract moviepy pydub mutagen requests 
  • opencv-python: Python용 OpenCV μ„€μΉ˜
  • scenedetect: κ°•μ˜ λ™μ˜μƒ λ‚΄ μ „ν™˜μ‹œμ  νŒŒμ•…μ„ μœ„ν•œ 라이브러리 μ„€μΉ˜
  • pandas: ν–‰λ ¬ 기반으둜 데이터λ₯Ό μ €μž₯ν•˜κ³ , csv 파일둜 내보내기 μœ„ν•œ 라이브러리 μ„€μΉ˜
  • pdf2image: pdf νŒŒμΌμ„ jpg둜 λ³€ν™˜ν•˜λŠ” 라이브러리 μ„€μΉ˜
  • fitz: 이미지 μΆ”μΆœν•˜λŠ” 라이브러리 μ„€μΉ˜
  • pillow: 파이썬 이미지 μ²˜λ¦¬ν•˜λŠ” 라이브러리 μ„€μΉ˜
  • scikit-image: 이미지간 μœ μ‚¬λ„ 계산을 μœ„ν•œ 라이브러리 μ„€μΉ˜
  • gtts: ν…μŠ€νŠΈλ₯Ό μŒμ„±μœΌλ‘œ λ³€ν™˜ν•΄μ£ΌλŠ” κ΅¬κΈ€μ˜ tts 라이브러리 μ„€μΉ˜
  • pdfplumber: pdfνŒŒμΌμ„ ν…μŠ€νŠΈλ‘œ λ³€ν™˜ν•΄μ£ΌλŠ” 라이브러리 μ„€μΉ˜
  • googletrans: ꡬ글 λ²ˆμ—­μœΌλ‘œ μ˜λ¬Έμ„ ν•œκΈ€μœΌλ‘œ λ²ˆμ—­ μ„€μΉ˜
  • pytesseract: 캑처 이미지에 λŒ€ν•΄ OCR κΈ°λŠ₯을 μˆ˜ν–‰ν•˜κΈ° μœ„ν•œ 라이브러리 μ„€μΉ˜
  • moviepy: mp4 μ˜μƒ 병합을 μœ„ν•œ 라이브러리 μ„€μΉ˜
  • pydub: μ˜€λ””μ˜€ νŒŒμΌμ„ 자λ₯΄κ³  뢙이기 μœ„ν•œ 라이브러리 μ„€μΉ˜
  • mutagen: mp3, mp4 파일의 길이λ₯Ό μΆ”μΆœν•˜κΈ° μœ„ν•œ 라이브러리 μ„€μΉ˜]
  • requests: 이미지 μΊ‘μ…˜ REST API μ‚¬μš©μ„ μœ„ν•œ HTTP 라이브러리 μ„€μΉ˜

κ·Έ μ™Έ μ„€μΉ˜ 및 μ„€μ •


μ‹€ν–‰ ν™˜κ²½

λΈŒλΌμš°μ € : Internet Explorer, Firefox (Chrome, Microsoft Edge μ œμ™Έ)


Developers

Dongyeon Park: [email protected]

Sojeong Kang: [email protected]


Original Repository: https://github.com/Commentor/commenting-video-lecture

About

πŸ–₯✏ Commentor : Project that provides audio commentary on the content shown on the slide screen of lecture videos

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published