열악한 조건에서 녹화 된 (컬러) 비디오를 고려하십시오. 프레임의 가장 밝은 픽셀은 순수한 흰색보다 훨씬 낮고 가장 어두운 픽셀은 순수한 검은 색보다 훨씬 높습니다. 오디오 컴프레서 / 리미터와 같이 각 프레임의 대비를 최대 밝기 범위에 가깝게 늘릴 수 있습니까? 많은 필터 중 일부를 사용하여 ffmpeg 에서이 작업을 수행 할 수 있습니까?
물론 각 프레임의 가장 밝은 값을 흰색으로, 가장 어둡게에서 검은 색으로 슬래 밍하면 노출이 1910 년에 촬영 된 것과 같이 더듬 거립니다. 각 프레임의 대비 를 늘릴 정도 는 주변 프레임 의 가장 밝은 값과 가장 어두운 값 ( + -10 초)에 따라 달라집니다 .
모든 프레임을 추출하고 imagemagick을 사용하여 각 프레임의 흰색 및 검은 색 점을 가져 와서 배열에 저장하고, 배열을 매끄럽게 만들고, imagemagick으로 각 프레임의 대비를 다시 늘리고 비디오를 다시 만들 수 있습니다. 그러나 그것은 긍정적으로 중세 인 것 같습니다.
histeq은 당신이 원하는 가까이 온다. 그러나 다양한 LUT 필터와 lut3d 도 볼 수 있습니다 .
—
Rajib
필터 'histeq'는 문서에서 유망한 것으로 보입니다. 그러나 libavfilter / vf_histeq.c filter_frame ()을 살펴보면 필터 '곡선', 'lut / lutrgb / lutyuv'및 (나는 생각합니다) 'lut3d'와 같습니다. 이는 이전 및 이후 프레임의 픽셀을 무시합니다. 'histeq'는 한 번에 하나의 프레임 만 히스토그램을 만듭니다. (그러나 'histeq' 는 기술적 으로이 질문에 대답합니다!)
—
Camille Goudeseune
당신이 imagemagick 같은 일을하는 비디오의 길이에 걸쳐 그것을 평균화하려고한다면, 그것은 imagemagick이든 ffmpeg이든 그것을 수행해야합니다. 주변 비디오의 히스토그램을 얻으려면 모든 주변 프레임 이 함께 디코딩되고 평균화되어야합니다.
—
stib
@Rajib, 답변으로 histeq를 게시하십시오. 그래서 받아 들일 수 있습니다. AFAIK ffmpeg의 필터는 이전 또는 연속 프레임을 입력으로 사용하지 않습니다.
—
Camille Goudeseune