2013-02-18 3 views
0

그레이 스케일 (x-ray) 비디오가 있습니다 ... 문제는 비디오를 읽고 쓰고 픽셀 값을 변경하는 경우입니다 !!! 나는 회색으로 BGR로 픽셀 값을 출력하고 모든 값을 가지고 있습니다 ... 나는 비디오를 읽은 다음 openCV를 사용하여 쓰기를 한 다음 픽셀 값을 다시 인쇄하고 픽셀 값이 다르게 보입니다! !! !!비디오를 다시 작성한 후에 픽셀 값이 변경됨

I는 화소 값을 변경하는 이유

MAC 10.6.8에 FFMPEG 0.11로 OpenCV의 2.4.3를 사용하고? ... 어떻게 픽셀 값을 변경하지 않고 비디오를 읽고 쓸 수 있습니까? BTW : 원본 비디오는 FFMPEG를 사용하여 YUV240 픽셀 형식으로 작성되었습니다! 사전에

감사합니다 : D

+0

결과 비디오가 무손실 압축을 사용하지 않았기 때문일 가능성이 큽니다. 당신은 그것을 보장해야합니다. – mmgp

+0

결과 비디오는 FFV1 (무손실) 인 동일한 코덱을 사용합니다. – seereen

+0

우선, 서로 다른 채널의 주어진 픽셀에 대해 서로 다른 값을 가진 RGB 데이터가 있으면 비디오는 그레이 스케일이 아닙니다. 둘째로, 인덱스 "i"에 3을 곱하지 않으므로 "회색 값"을 나타내는 방식이 잘못되었습니다 (프레임이 BGR에 있음). 마지막으로, 그레이 스케일 데이터를 rgb로 저장하려는 경우 원래 값을 약간 수정하는 중간 단계가 없음을 보장 할 수 있습니까? 이 데이터를 올바르게 저장하는 방법은 다음과 같습니다. 각 프레임을 png로 저장하고 ffmpeg를 사용하여 무손실 비디오 형식으로 그룹화합니다. – mmgp

답변

0

OpenCV의 기본적으로 BGR에 프레임을 변환하기 때문에 값이 변경 픽셀! 읽기 작업이 변환 프로세스를 수행하는 것 같습니다. 픽셀이 변경되는 이유는 무엇입니까?

정확한 값을 얻으려면이 문제를 직면하는 데 도움이되기를 바랍니다. 많은 것을 제공하는 FFMPEG를 사용하여 비디오를 읽고 쓸 수 있기를 바랍니다. 픽셀 형식

관련 문제