1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tìm hiểu các kỹ thuật chuyển động và bù chuyển động trong nén video

16 864 4

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 16
Dung lượng 471,22 KB

Nội dung

Phase correlation and frequency domain methods... Trong đó MSE là sai khác trung bình bình phương Mean Squared Error... Các file image có đ nh d ng Sun Rasterfile.

Trang 1

TR ƯỜ NG Đ I H C BÁCH KHOA HÀ N I Ạ Ọ Ộ

VI N CÔNG NGH THÔNG TIN VÀ TRUY N THÔNG Ệ Ệ Ề

──────── * ───────

BÁO CÁO

Nhóm 11: Tìm hi u các k thu t ể ỹ ậ ướ ượ c l ng chuy n đ ng ể ộ

và bù chuy n đ ng trong nén video ể ộ

Giáo viên hướng d nẫ : PGS TS Nguy n Th Hoàng Lan ễ ị

Sinh viên th c hi nự ệ : Nguy n H u Phúc – 20122234 ễ ữ

Tr n Xuân Giáp – 20121611 ầ

Hà N i 19-05-2016 ộ

Trang 2

M c L c ụ ụ

I Các k thu t ỹ ậ ướ ượ c l ng chuy n đ ng ể ộ 3 1.1 Các ph ươ ng pháp tr c ti p ự ế 3 1.2 Ph ươ ng pháp gián ti p ế 4

II Ướ ượ c l ng chuy n đ ng s d ng ph ể ộ ử ụ ươ ng pháp 3 b ướ 5 c.

1 B ướ c ti n s lý ề ử 5

2 Ph ươ ng pháp tìm ki m ba b ế ướ 6 c

3 Gi i thu t tìm ki m 3 b ả ậ ế ướ 9 c

4 Đánh giá gi i thu t ả ậ 11 III Th nghi m ử ệ 13

IV Tài li u tham kh o ệ ả 16

Trang 3

I Các k thu t ỹ ậ ướ ượ c l ng chuy n đ ng ể ộ

Motion estimation: Đây là k thu t nh m m c đích xác đ nh vector chuy n đ ng gi aỹ ậ ằ ụ ị ể ộ ữ các marco block, vector chuy n đ ng là s sai l ch v trí gi a m t kh i frame hi nể ộ ự ệ ị ữ ộ ố ở ệ

t i v i m t kh i g n gi ng nh t frame tham chi u K thu t này đạ ớ ộ ố ầ ố ấ ở ế ỹ ậ ược s d ngử ụ trong quá trình nén và gi i nén video.ả

Có 2 phương pháp đượ ử ục s d ng trong ướ ược l ng chuy n đ ng:ệ ộ

- Phương pháp tr c ti p:ự ế

+ Optical flow

+ Block-matching algorithms

+ Pixel recursive algorithms

+ Phase correlation and frequency domain methods

- Phương pháp gián ti pế

1.1 Các ph ươ ng pháp tr c ti p ự ế

a Optical flow:

Optical flow là mô hình chuy n đ ng c a b ngoài c a các đ i tể ộ ủ ề ủ ố ượng , các b m t ,ề ặ các c nh gây ra b i s chuy n đ ng tạ ở ự ể ộ ương đ i c a ngố ủ ười nhìn ( máy ) và c nh v t.ả ậ Optical flow bao g m các k thu t t s lý hình nh và phát hi n chuy n đ ng, phânồ ỹ ậ ừ ử ả ệ ể ộ khúc đ i tố ượng, thông tin th i gian, t p trung tính toán m r ng, đ sáng, chuy nờ ậ ở ộ ộ ể

đ ng b i thộ ồ ường mã hóa, và đo lường âm thanh stereo chênh l ch.ệ

Khái ni m v optical flow ( lu ng quang) đệ ề ồ ược gi i thi u b i nhà khoa h c ngớ ệ ở ọ ười Mỹ James J.Gibson vào năm 1940 đ mô t các kích thích th giác để ả ị ược cung c p b i cácấ ở

s chuy n đ ng c a đ ng v t T đó ngự ể ộ ủ ộ ậ ừ ười ta có nh n th c quan tr ng c a conậ ứ ọ ủ

người trong vi c quan sát ệ

Các phương pháp v lu ng quang h c c g ng tính toán chuy n đ ng gi a hai hìnhề ồ ọ ố ắ ể ộ ữ

nh đ c ch p các th i đi m t và t+Delta Nh ng ph ng pháp này khác bi t vì

chúng s d ng phép x p x Taylor c a các tín hi u hình nh,ử ụ ấ ỉ ủ ệ ả

Phương pháp Optical flow thường được s d ng nghiên c u v các không gian 3ử ụ ứ ề chi u, c u trúc c a khung c nh , cũng nh chuy n đ ng 3 D c a ngề ấ ủ ả ư ể ộ ủ ười và đ i tố ượng

và người quan sát nó

b Block-matching algorithm

Block-matching algorithm: là m t cách đ xác đ nh v trí các Macroblocks trong frame ộ ể ị ị

c a video cho các m c đích ủ ụ ướ ượ c l ng chuy n đ ng ể ộ Đi u này đ gi m đ d th aề ể ả ộ ư ừ

v th i gian và d li u, tăng đ nén video lên d a vào các Mb đề ờ ữ ệ ộ ự ược bi t đ n v i đế ế ớ ộ sai khác ít nh t.ấ

M t thu t toán BMA bao g m vi c phân chua các frame c a video vào các MB và soộ ậ ồ ệ ủ sánh s sai khác c a MB trong các frame M t vecto đự ủ ộ ượ ạc t o thành t s sai khác đoừ ự

- gi a v trí c a MB ban đ u và v trí c a MB sau đó D a vào đi u này ta tính t t cữ ị ủ ầ ị ủ ự ề ấ ả các MB cho m t khung hình - t o nên m t ộ ạ ộ ướ ược l ng chuy n đ ng cho frame.ể ộ

c Phase correlation and frequency domain methods

Trang 4

Phase correlation and frequency domain methods: là phép bi n đ i d a ế ổ ự ước tính tương

đ i gi a 2 hình nh tố ữ ả ương t ho c 2 b d li u khác nhau Nó thự ặ ộ ữ ệ ường đượ ử ục s d ng trong image registration và được bi u di n trên mi n t n s c a d li u s d ngể ễ ề ầ ố ủ ữ ệ ử ụ phép bi n đ i Fourier nhanh ế ổ

Hình nh dả ưới đây cho th y s d ng các giai đo n tấ ự ụ ạ ương quan đ xác đ nh chuy nể ị ể

đ ng tộ ương đ i c a 2 hình nh v i nhi u gauss đ c l p Các hình nh đố ủ ả ớ ễ ộ ậ ả ược d chị

b ng (30,33) pixel.ằ

ng d ng c a ph ng pháp này đ c s d ng đ ch ng nhi u và các khuy t t t

khác đi n hình c a anh s d ng trong ý t và anh v tinh Phể ủ ử ụ ế ệ ương pháp này còn có

th m r ng đ xác đ nh đ xoay vòng và m r ng ra c a các nh.ể ở ộ ể ị ộ ở ộ ủ ả

1.2 Ph ươ ng pháp gián ti p ế

Phương pháp gián ti p : s d ng các tính năng, ch ng h n nh phát hi n góc, và cácế ử ụ ẳ ạ ư ệ tính năng phù h p tợ ương ng gi a các khung hình, thứ ữ ường là v i m t ch c năng th ngớ ộ ứ ố

kê áp d ng trên m t khu v c đ a phụ ộ ự ị ương hay toàn c u M c đích c a ch c năng th ngầ ụ ủ ứ ố

kê là đ lo i b đi m mà không tể ạ ỏ ể ương ng v i các chuy n đ ng th c t ứ ớ ể ộ ự ế

M t trong nh ng phộ ữ ương pháp là phát hi n góc: s d ng các h th ng máy tính đệ ử ụ ệ ố ể

gi i nén và suy lu n n i dung c a nh Phát hi n góc thả ậ ộ ủ ả ệ ường đượ ử ục s d ng trong phát

hi n chuy n đ ng, ghép nh toàn c nh, theo dõi video, ệ ể ộ ả ả

Trang 5

II Ướ ượ c l ng chuy n đ ng s d ng ph ể ộ ử ụ ươ ng pháp 3

Phương pháp Three step search là m t trong nh ng phộ ữ ương pháp c a gi i thu t block-ủ ả ậ matching c a phủ ương pháp tr c ti p Phự ế ương pháp này được gi i thi u nh là m tớ ệ ư ộ

phương pháp d tri n khai và hi u qu h n t t.ễ ể ệ ả ơ ố

1 B ướ c ti n s lý ề ử

Video - hay nh đ ng đ u vào qua bả ộ ầ ước ti n s lý đ có d li u đ u Video ban đ uề ử ể ữ ệ ầ ầ

s d ng h màu RGB qua bử ụ ệ ước ti n s lý đ chuy n sang h màu YUV ph c v choề ử ể ể ệ ụ ụ quá trình nén và gi i nén d li u.ả ữ ệ

RGB: Red Green Blue, s d ng 8 bit cho m i giá tr ử ụ ỗ ị

YCrCb: Thành ph n chói Y ( gi i h n ph là 6.5MHz ) và thành ph n màu Cr, Cbầ ớ ạ ổ ầ ( gi i h n ph là 2MHz).ớ ạ ổ

Quá trình chuy n đ i t h màu RGB sang h màu YcrCb:ể ổ ừ ệ ệ

Y = 0.257R + 0.504G +0.098B + 16

Cr = 0.439R -0.368G – 0.071B + 128

Cb = -0.148R -0.291G + 0.439B +128

C u trúc l y m u c a m i video s đấ ấ ẫ ủ ỗ ẽ ược quy đinh b i ngở ười thi t k , có th l yế ế ể ấ

m u theo các chu n 4:2:2 ,4:2:0, 4:1:1ấ ẩ

Do m t ngắ ười nh y v i đ chói, nên thành ph n Y đạ ớ ộ ầ ượ ấc l y m u không đ i, và kémẫ ổ

nh y v i cá thành ph n màu Cr,Cb nên các thành ph n này s đạ ớ ầ ầ ẽ ượ ấc l y m u gi mẫ ả

xu ng theo các chi u ngang ho c d c ( ho c c 2) thèo theo các chu n quy đ nh.ố ề ặ ọ ặ ả ẩ ị Trong đó tương ng v i m i chu n ta có:ứ ớ ỗ ẩ

Trang 6

Trong trường h p l y m u theo chu n 4:2:0 gi m thích thợ ấ ẫ ẩ ả ước m u theo chi u d c vàẫ ề ọ ngang c a thành ph n Cr, Cb đi ch còn 1/2 d li u ch còn 1/4 so v i ban đ u Taủ ầ ỉ ữ ệ ỉ ớ ầ

được chu n màu YCrCb theo 4:2:0.ẩ

nh đ c chia thành các macroblocks v i các kh i kích th c là 16*16 ho c các kh i

8*8 Các kh i này có th đố ể ược chia ti p thành các kh i 8*8 trế ố ước ho c sau khi nén tùyặ theo cài đ t.ặ

Macroblocks ban đ u k ch thầ ị ước 16*16, 4 ma tr n d li u cho thành ph n đ chói Yậ ữ ệ ầ ộ kích thước 16*16, 1 ma tr n d li u cho thành ph n màu Cr kích thậ ữ ệ ầ ước 16*16, 1 ma

tr n d li u cho thành ph n màu Cb kích thậ ữ ệ ầ ước 16*16

Các Macroblocks s đẽ ượ ưc l u theo t a đ c a nó tọ ộ ủ ương ng trong frame, n u trongứ ế quá trình ti n s lý các macroblocks đề ử ượ ưc l u tr sai t a đ vi c nén và gi i nén cóữ ọ ộ ệ ả

th không làm để ược Và video cũng sai khác so v i video g c ớ ố

S d ng tính toán s thay đ i c a các Macroblocks theo t a đ c a chúng chính là bàiử ụ ự ổ ủ ọ ộ ủ toán c a Block-matching, thu t toán đòi h i ph i tính đủ ậ ỏ ả ược các vecto chuy n đ ngể ộ ( vecto ch a thông tin thay đ i c a các MB trong các frame tứ ổ ủ ương ng) v i đ chínhứ ớ ộ xác đáp ng đứ ược và m t kh i lộ ố ượng tính toán t t.ố

2 Ph ươ ng pháp tìm ki m ba b ế ướ c

Đ so sánh s sai khác c a các Macroblocs ta s d ng các phể ự ủ ử ụ ương trình phi tuy n,ế

dưới đây chúng tôi trình bày phương pháp MAE ( Mean Absolute Error ) :

Trang 7

Macrobloks c a ta là các kh i 8*8 thì và đủ ố ượ ấc l y m u theo chu n 4:2:0 V y ta s soẫ ẩ ậ ẽ sánh b d li u v i:ộ ữ ệ ớ

- Thành ph n C g m 6 ma tr n 8*8ầ ồ ậ

- Thành ph n R g m 6 ma tr n 8*8ầ ồ ậ

K t qu c a phép tính này s đế ả ủ ẽ ượ ư ạ ểc l u l i đ so sánh v i các Macroblocks khác K tớ ế

qu nh nh t trong các k t qu s đả ỏ ấ ế ả ẽ ượ ử ục s d ng

Ngoài phương trình MAE ra, người ta có th s d ng các phể ử ụ ương trinh phi tuy n khácế

đ tìm ra k t qu c a phép so sánh, có th k đ n nh là phể ế ả ủ ể ể ế ư ương pháp sai s trungố bình tuy t đ i SAD/MAD, sai khác trung bình bình phệ ố ương MSE

c l ng chuy n đ ng Matching block v i MPEG

Ý tưởng là các frame g n nhau trong m t video thông thầ ộ ường s có đ tẽ ộ ương quan cao, trong nén video thay vì ta nén t t c các frame c a m t video ta s ch nén 1 videoấ ả ủ ộ ẽ ỉ

và ướ ược l ng frame ti p theo d a trên frame hi n t i - các vecto chuy n đ ng Ví dế ự ệ ạ ể ộ ụ khi nén video v i MPEG, ta s nén m t nhóm các frame liên ti p g i là 1 GOP, trongớ ẽ ộ ế ọ GOP ch có frame I đỉ ược nén theo JPEG Còn các frame P và B s đẽ ượ ướ ược c l ng chuy n đ ng và bù chuy n đ ng.ể ộ ể ộ

Trang 8

I frame: frame được nén theo JPEG và được nén đ u tiên trong GOPầ

P frame: frame đượ ướ ược c l ng chuy n đ ng theo frame Iể ộ

B frame: frame đượ ướ ược c l ng chuy n đ ng theo frame I và frame P.ể ộ

c l ng chuy n đ ng trong s đ i nén MPEG

Frame P được mã hóa d đoán t Frame I: frame tham chi u s đự ừ ế ẽ ượ ử ục s d ng đ ể ước

lượng đánh giá chuy n đ ng, v i mã hóa d đoán thì có truy n vecto chuy n đ ngể ộ ớ ự ề ể ộ hay không V i mã hóa d đoán n u m i giá tr trong ma tr n sai s ớ ự ế ọ ị ậ ố ướ ược l ng b ng 0ằ thì c macroblocks không đả ược mã hóa

Trang 9

3 Gi i thu t tìm ki m 3 b ả ậ ế ướ c

a Vùng tìm ki m c a d li u:ế ủ ữ ệ

Là area t t nh t đ cho MB nó đố ấ ể ược quy t đ nh b i tham s p, v i p là s lế ị ở ố ớ ố ượng pixel trên 4 sides c a MB tủ ương ướng trong frame trước đó Các thông s tìm ki m đoố ế

lường chuy n đ ng Vi c tìm ki m đ y đ t t các các MB ti m năng là m t vi c đòiể ộ ệ ế ầ ủ ấ ề ộ ệ

h i kh năng tính toán cao Đ u vào đi n hình c a m t MB kích thỏ ả ầ ể ủ ộ ước 16 pixel và search area v i p =7.ớ

Tuy nhiên vi c tìm ki m đ y đ trong vùng tìm ki m cũng là m t công vi c đòi h iệ ế ầ ủ ế ộ ệ ỏ

đ tính toán r t l n m t ví d đ n gi n là đ tìm ki m v i 1 frame c 288*352 ta c nộ ấ ớ ộ ụ ơ ả ể ế ớ ỡ ầ 1G phép c ng và 8M phép so sánh Vì v y vi c tìm ki m đ y đ không kh thi trongộ ậ ệ ế ầ ủ ả

th c t Vì v y khi tìm ki m trong vùng tìm ki m ngự ế ậ ế ế ười ta cũng ph i c g ng đ k tả ố ắ ể ế

qu tìm đả ược là t t nh t v i m t kh i lố ấ ớ ộ ố ượng tính toán ch p nh n đấ ậ ược

for i = 1 : mbSize : row-mbSize+1

for j = 1 : mbSize : col-mbSize+1

x = j;

y = i;

costs(2,2) = costFuncMAD(imgP(i:i+mbSize-1,j:j+mbSize-1),

imgI(i:i+mbSize-1,j:j+mbSize-1),mbSize);

computations = computations + 1;

stepSize = stepMax;

while(stepSize >= 1)

for m = -stepSize : stepSize : stepSize

for n = -stepSize : stepSize : stepSize

refBlkVer = y + m; % row/Vert co-ordinate for ref block

refBlkHor = x + n; % col/Horizontal co-ordinate

if ( refBlkVer < 1 || refBlkVer+mbSize-1 > row

|| refBlkHor < 1 || refBlkHor+mbSize-1 > col)

continue;

end

costRow = m/stepSize + 2;

costCol = n/stepSize + 2;

if (costRow == 2 && costCol == 2)

continue

end

costs(costRow, costCol ) = costFuncMAD(imgP(i:i+mbSize-1,j:j+mbSize-1),

imgI(refBlkVer:refBlkVer+mbSize-1, refBlkHor:refBlkHor+mbSize-1), mbSize);

computations = computations + 1;

end

end

Trang 10

Gi i thu t bao g m 3 bả ậ ồ ước:

Đ u tiên ta đ t: (i,j) là trung tâm c a vùng tìm ki m.ầ ặ ủ ế

p là kích thướ ủ ổc c a s tìm ki mế mbSize là kích thướ ủc c a MB

Các ch s này có th thay đ i m t cách tỉ ố ể ổ ộ ương đ i v i ngố ớ ười tri n khaiể

- Bước 1:

Xác đ nh kích thị ước d ch ban đ u, ki m tra 9 đi m T a đ c a 9 đi m này tị ầ ể ể ọ ộ ủ ể ương

ng v i t a đ c a MB ban đ u là: (i +- mbSize*p,j ); ( i, j +-mbSize*p); (i,j) ;

( i + mbSize*p, j +-mbSize*p) ; ( j -mbSize*p , j +-mbSize*p) Trong đó:

- Bước 2: Đi m (x1,y1) là đi m có s sai khác nh nh t trong 9 đi m.ể ể ự ỏ ấ ể

+ Gi m p= p/2 C a s tìm ki m gi m 1 n a ả ử ổ ế ả ử

+ Đ t l i c a s tìm ki m (i,j) = (x1,y1) ặ ạ ử ổ ế

+ Ki m tra 8 đi m: (i +- mbSize*p,j ); ( i, j +-mbSize*p) ;ể ể

( i + mbSize*p, j +-mbSize*p) ; ( j -mbSize*p , j +-mbSize*p)

Bước 3: L p l i bặ ạ ước 2, xác đ nh đi m có s sai khác nh nh t là (x2,y2)ị ể ự ỏ ấ

+ Gi m p= p/2 C a s tìm ki m gi m 1 n aả ử ổ ế ả ử

+ Đ t l i c a s tìm ki m (i,j) = (x2,y2)ặ ạ ử ổ ế

+ Ki m tra 8 đi m: ể ể (i +- mbSize*p,j ); ( i, j +-mbSize*p) ;

( i + mbSize*p, j +-mbSize*p) ; ( j -mbSize*p , j +-mbSize*p)

Thu t toán k t thúc sau 3 bậ ế ước K t qu c a thu t toán là đi m có giá tr to đ làế ả ủ ậ ể ị ạ ộ (x3,y3) có MSD nh nh t trong 8 đi m bỏ ấ ể ở ước 3

Trang 11

Thu t toán 3 bậ ước luôn đ m b o tìm ra k t qu sau 3 bả ả ế ả ước th c hi n nên d dàngự ệ ễ

qu n lý v m t th i gian cho ngả ề ặ ờ ười thi t k Thu t toán luôn cho k t qu sau th iế ế ậ ế ả ờ gian ch y 3 bạ ước Gi thi t c a s tìm ki m có kích thả ế ử ổ ế ước p=7 Thay vì ki m tra 255ể

đi m nh tìm ki m đ y đ thì gi i thu t ba bể ư ế ầ ủ ả ậ ước ch ph i ki m tra 25 đi m.ỉ ả ể ể

Thu t toán có ch t lậ ấ ương tương đ i, và đố ược đánh giá là không nhanh so v i các gi iớ ả thu t c i ti n ho c so v i chính thu t toán 3 bậ ả ế ặ ớ ậ ước c i ti n Tuy nhiên thu t toán 3ả ế ậ

bước v n là m t thu t toán d cài đ t, tri n khai và nghiên c u.ẫ ộ ậ ễ ặ ể ứ

4 Đánh giá gi i thu t ả ậ

T t c các thu t toán đ u đấ ả ậ ề ược đánh giá v gi i thu t c a nó Tiêu chu n đánh giáề ả ậ ủ ẩ

gi i thu t thông qua đ nh c a nhi u tín hi u ( Peak Signal to Noise Ratio – PSNR ) ,ả ậ ỉ ủ ễ ệ giá tr này cho th y ch t lị ấ ấ ượng c a vecto chuy n đ ng đ c tr ng c a các gi i thu tủ ể ộ ặ ư ủ ả ậ block-matching Trong đó tín hi u là các d li u g c còn nhi u đệ ữ ệ ố ễ ược đ a ra là cácư vecto chuy n đ ng tính toán PSNR để ộ ược đ nh nghĩa:ị

Trang 12

Trong đó MSE là sai khác trung bình bình phương ( Mean Squared Error ) Ngoài ra

m t ch s n a cũng độ ỉ ố ữ ược s d ng nh m t cách ki m tra hi u năng , nó đử ụ ư ộ ể ệ ược sử

d ng đ so sánh t l suy gi m PSNR ( D-pgnr ) T l này đụ ể ỷ ệ ả ỷ ệ ược bi u di n m c để ễ ở ứ ộ

ph n trăm chênh l ch PSNR c a m t gi i thu t Block-matching và PSNR c a tìmầ ệ ủ ộ ả ậ ủ

ki m đ y đ :ế ầ ủ

B ng so sánh ch t lả ấ ượng c a các thu t toán block-matching và tìm ki m đ y đ ( fullủ ậ ế ầ ủ search )

D dàng nh n th y là các gi i thu t block-matching có ch s PSNR tễ ậ ấ ả ậ ỉ ố ương đ i gi ngố ố nhau khi các video đ u vào là các có ít s sai khác gi a các frame trong video ( t c đầ ự ữ ố ộ video ch m) Tuy nhiên v i các video có s thay đ i nhanh thì gi i thu t tìm ki m 3ậ ớ ự ổ ả ậ ế

bước ( TSS ) đ u có các t l PSNR cao và t l D-psnr cao ề ỷ ệ ỷ ệ

Trang 13

III Th nghi m ử ệ

1 D li u đ u vào:ữ ệ ầ

a Các file image có đ nh d ng Sun Rasterfile Các file này là các frame c aị ạ ủ

1 video

b Có t ng c ng 33 frame và kích thổ ộ ướ ủc c a m i gi ng nhauỗ ố

b Thu t toán s ậ ẽ ướ ược l ng tìm vecto kho ng cách cho các frame b ng phả ằ ương pháp

s d ng thu t toán 3 bử ụ ậ ước Trong đó:

Macroblocks: có kích thước 16*16,

Vùng tìm ki m: p=7 ế

c K t qu thu đế ả ược

Các frame sau khi ti n s lý đ đề ử ể ược các ma tr n d li u.ậ ữ ệ

Ngày đăng: 08/06/2016, 23:55

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w