[python] 파이썬 moviepy로 동영상 원형 모자이크 처리하기

동영상 처리 작업을 할 때 보통 모자이크 처리를 하거나 특정 부분을 강조하기 위해 원형으로 모자이크 처리하는 경우가 있습니다. 이번 글에서는 파이썬의 moviepy 라이브러리를 사용하여 동영상에 원형 모자이크 효과를 적용하는 방법에 대해 알아보겠습니다.

1. moviepy 설치하기

먼저 moviepy 라이브러리를 설치해야 합니다. 아래 명령을 사용하여 설치할 수 있습니다.

pip install moviepy

2. 동영상 불러오기

모자이크 처리를 할 동영상을 불러옵니다. moviepy는 다양한 동영상 포맷을 지원하며, VideoFileClip 클래스를 사용하여 동영상을 불러올 수 있습니다.

from moviepy.editor import VideoFileClip

video = VideoFileClip('input.mp4')

input.mp4 부분에는 모자이크 처리를 할 동영상 파일의 경로를 넣어주면 됩니다.

3. 원형 모자이크 효과 적용하기

이제 모자이크 효과를 적용할 부분을 선택하여 원형 모자이크 효과를 적용하는 방법에 대해 알아보겠습니다.

from moviepy.video.fx import all as vfx

# 모자이크 처리할 부분 선택
start_time = 5  # 시작 시간
end_time = 10  # 종료 시간
x = 320  # 중심 x 좌표
y = 240  # 중심 y 좌표
radius = 100  # 모자이크 반지름

# 모자이크 효과 적용
masked = video.fx(vfx.mask_color, start_time=start_time, end_time=end_time, x=x, y=y, radius=radius)

위 코드에서는 vfx.mask_color 함수를 사용하여 원형 모자이크 효과를 적용했습니다. start_timeend_time은 모자이크를 적용할 시간 범위를 지정하고, xy는 원형 모자이크의 중심 좌표를, radius는 모자이크의 반지름을 의미합니다.

4. 동영상 저장하기

최종적으로 모자이크 효과가 적용된 동영상을 저장합니다. write_videofile 함수를 사용하여 동영상 파일을 저장할 수 있습니다.

masked.write_videofile('output.mp4', codec='libx264')

output.mp4 부분에는 저장할 동영상 파일의 경로를 넣어주면 됩니다. codec은 동영상 파일의 코덱을 지정하는 옵션인데, 기본값인 libx264를 사용하면 보통 좋은 품질의 동영상이 생성됩니다.

5. 완성된 코드

아래는 위에서 설명한 내용을 종합하여 작성한 전체 코드입니다.

from moviepy.editor import VideoFileClip
from moviepy.video.fx import all as vfx

# 동영상 불러오기
video = VideoFileClip('input.mp4')

# 모자이크 효과 적용할 부분 선택
start_time = 5  # 시작 시간
end_time = 10  # 종료 시간
x = 320  # 중심 x 좌표
y = 240  # 중심 y 좌표
radius = 100  # 모자이크 반지름

# 모자이크 효과 적용
masked = video.fx(vfx.mask_color, start_time=start_time, end_time=end_time, x=x, y=y, radius=radius)

# 동영상 저장하기
masked.write_videofile('output.mp4', codec='libx264')

위 코드를 실행하면 모자이크 효과가 적용된 동영상이 output.mp4 파일로 생성됩니다.

마무리

이번 글에서는 파이썬의 moviepy 라이브러리를 사용하여 동영상에 원형 모자이크 효과를 적용하는 방법에 대해 알아보았습니다. moviepy를 활용하면 다양한 동영상 처리 작업을 간편하게 수행할 수 있으며, 모자이크 처리와 같은 특수 효과도 쉽게 적용할 수 있습니다.