0
我正在實施一個從視頻中去除閃爍的工具。測試工具, 我期待獲得一些視頻序列(任何視頻格式-MPEG4,H263,MPEG2,H264,原始YUV),其中存在顯着的閃爍量。我搜索了,但找不到任何這樣的視頻。帶閃爍的視頻序列
順便提一下,是否有已知的視頻後期處理工具,允許閃爍消除?
任何指針都會有所幫助。
謝謝。 -AD
我正在實施一個從視頻中去除閃爍的工具。測試工具, 我期待獲得一些視頻序列(任何視頻格式-MPEG4,H263,MPEG2,H264,原始YUV),其中存在顯着的閃爍量。我搜索了,但找不到任何這樣的視頻。帶閃爍的視頻序列
順便提一下,是否有已知的視頻後期處理工具,允許閃爍消除?
任何指針都會有所幫助。
謝謝。 -AD
如果您有YUV序列,在特定的時間段(50 Hz,60 Hz或其他)添加人爲閃爍會非常簡單,在相關週期插入白框或您可以擺弄使問題的框架更輕的色彩平面。
測試序列可以在這裏找到。 yuv test-sequences
BTW。通常手機內置了閃爍消除功能,能夠在多個淨頻率下工作。幀速率不是25或30 Hz倍數的慢動作視頻記錄是某些相機模塊在記錄@例如VGA 100 fps時無法補償的。
下面是一個python函數,讓您開始將YUV 4:2:0分割爲幀並將每個幀存儲爲單獨的文件。
def split(fname):
src_yuv = open(fname, 'rb')
cif = 352*288*1.5 # YUV 4:2:0 change to reflect your input!
# Get file size in bytes
src_yuv_size = os.stat(fname)[6]
nr_files = src_yuv_size/cif
filecnt = 0
while True:
buf = src_yuv.read(cif) # read qcif number of bytes
if buf:
s = "frame" + "%s" % filecnt + ".yuv"
dst_yuv = open(s, 'wb')
dst_yuv.write(buf) # write read data into new file
print "writing frame", filecnt
dst_yuv.close()
filecnt = filecnt + 1
else:
break
src_yuv.close()
謝謝。所以如果我不得不在Frq增加一個閃爍。比如100Hz(我的電源頻率是50Hz的兩倍),那麼閃爍週期變爲1/100 = 10毫秒(毫秒)。如果我有一個原始YUV序列,例如每秒30幀(fps)或每1000毫秒30幀。所以從技術上講,我應該在每0.3幀後添加一個白色框架。但是這個分數幀變得毫無意義。那麼我可以在每幀之後添加一個白色框架嗎?或者它應該如何? – goldenmean 2011-03-22 10:10:20