Ử Ả ồ ệ Đ  án môn: X  LÝ  NH Ngành công ngh  thông tin

Ờ Ở Ầ L I M  Đ U

ớ ự ẽ ủ ể ọ ạ Ngày nay, cùng v i s  phát tri n m nh m  c a ngành khoa h c công ngh ệ

ầ ộ ươ ệ ể ế ở thông tin, internet đã tr  thành m t nhu c u, ph ố ớ   ng ti n không th  thi u đ i v i

ườ ớ ượ ạ ầ ổ ớ ọ m i ng i, nhu c u trao đ i thông tin qua m ng ngày càng l n. Và v i l ng thông

ư ậ ớ ượ ơ ữ ệ ề ạ ậ ị tin l n nh  v y đ c truy n qua m ng thì nguy c  d  li u b  truy c p trái phép

ề ả ả ả ậ ậ ấ ữ ệ   cũng tăng lên vì v y v n đ  b o đ m an toàn và b o m t thông tin cho d  li u

ấ ầ ề ạ ế ề ậ ượ ằ truy n trên m ng là r t c n thi ỹ t. Nhi u k  thu t đã đ ứ c nghiên c u nh m gi ả   i

ế ấ ữ ề ậ ấ ộ ọ ỹ quy t v n đ  này. M t trong nh ng k  thu t quan tr ng nh t là mã  hóa thông tin.

ự ệ ễ ộ ộ ị Tuy nhiên m t thông đi p b  mã hóa d  gây ra s  chú ý và m t khi các thông tin mã

ặ ẽ ể ả ệ ọ ị hóa b  phát hi n thì các tin t c s  tìm m i cách đ  gi i mã.

ầ ộ ả ế ượ ữ ệ ớ M t công ngh  m i ph n nào gi i quy t đ ấ   c nh ng khó khăn trên là gi u

ồ ươ ư ệ ả ồ thông tin trong các ngu n đa ph ng ti n nh  các ngu n âm thanh, hinh  nh … Xét

ộ ạ ậ ằ ả ạ ấ ổ ả   theo khía c nh t ng quát thì gi u thông tin cũng là m t d ng m t mã nh m đ m b o

ủ ư ươ ể ở ư ả ổ tính an toàn c a thông tin, nh ng ph ng pháp này  u đi m ch  là gi m đ ượ   c

ự ồ ạ ủ ệ ả ồ kh  năng phát hi n ra s  t n t i c a thông tin trong các ngu n mang.

ộ ỹ ậ ấ ươ ể ố ớ Gi u thông tin là m t k  thu t còn t ấ   ng đ i m i và đanh phát tri n r t

ượ ả ự ủ ớ ớ nhanh, thu hút đ c c  s  quan tâm c a gi ọ i khoa h c và gi ệ i công nghi p và cũng

ủ ế ề ỹ ứ ủ ứ ề ộ ậ   còn nhi u thách th c. N i dung c a báo cáo này ch  y u nghiên c u v  k  thu t

ả ấ ấ gi u tin  nói chung và gi u tin trong văn b n nói riêng

1

Ử Ả ồ ệ Đ  án môn: X  LÝ  NH Ngành công ngh  thông tin

M C L C

Ề Ỹ ƯƠ Ổ Ậ Ấ Ờ Ở Ầ                                                                                                                   L I M  Đ U  1     ..............................................................................................................     Ụ Ụ                                                                                                                          M C L C  2     .....................................................................................................................     Ụ  3     DANH M C HÌNH .......................................................................................................                                                                                                                 4                                                    ...........................................     CH NG 1. T NG QUAN V  K  THU T GI U TIN

ấ ậ

ạ ấ 1.1.Khái ni m ệ                                                                                                               4       ...........................................................................................................     ủ ụ  4                                                                                        .................................................................................       1.2.M c đích c a vi c gi u tin ấ                                                                                 5     1.3.Phân lo i các k  thu t gi u tin ...........................................................................      5                                                                            ..................................................................... ệ ỹ ậ   1.2.1.Gi u tin m t (Seganography )

ủ ố  5       1.2.2.Th y vân s  (Watermaking )   ......................................................................

Ả Ị ộ ố ứ  6       1.4.M t s   ng d ng ................................................................................................                                                                                                       Ạ ƯƠ  7                                                                         ................................................................     CH NG 2. Đ NH D NG  NH BITMAP

ổ ả

ả ả

Ậ Ả 2.1.T ng quan                                                                                                                7     ...........................................................................................................      7     ...........................................................................................................                                                                                                                    2.2.B ng màu                                                                                                                 2.3.Mô t   nh   8     ...........................................................................................................     ả                                                                                                             2.4.C u trúc  nh    9     ........................................................................................................   Ỹ ƯƠ  15                                                       ...............................................       CH ấ Ấ NG 3.  K  THU T GI U TIN TRONG  NH

ậ ấ ỏ ơ ặ ằ Ả 15      .......................................................   3. 1.Các kĩ thu t gi u tin trong  nh BITMAP     15      3.1.1. nh nh  h n ho c b ng 8 bit màu .............................................................

Ả 15        3.1.2. nh 16 bit màu ............................................................................................

Ả 15        3.1.3. nh 24 bit màu ............................................................................................

ậ ề ả ệ ố ậ ỹ 3.2. K  thu t dùng h  s  DCT  16      ...............................................................................      16      3.2.1.N n t ng k  thu t  .....................................................................................

ờ ạ ế ổ 3.2.2.Phép bi n đ i cosin r i r c (DCT) 16                                                                      ............................................................

ủ ể ế ặ ổ ề  17        3.2.3.Đ c đi m c a phép bi n đ i DCT hai chi u ............................................

ề ế ấ ổ

ả 18      3.3. K  thu t gi u tin trong mi n bi n đ i DCT  ..................................................                                                           ậ  18         thu t toán ......................................................................................... ậ ỹ   3.3.1.Mô t

18        3.3.2.Quá trình Watermarking ..............................................................................

ự ệ

3.4. Cài đ t và th c nghi m     Ế Ậ

Ả Ệ ặ                                                                                        22      ..................................................................................    26      .................................................................................................................                                                                                                                          K T LU N  27                                                                                                      ............................................................................................     TÀI LI U THAM KH O

2

Ử Ả ồ ệ Đ  án môn: X  LÝ  NH Ngành công ngh  thông tin

Ụ DANH M C HÌNH

ỹ ạ ấ

ả ả

ố ồ ộ ủ

ướ

ậ                                                                           Hình 1.1.Phân lo i các k  thu t gi n tin  5     ......................................................................     ể ả                                                       Hình 2.1.B ng màu và các đi m  nh dùng b ng màu  7     ..................................................     ả  8     Hình 2.2.Các cách b  trí b ng màu ...............................................................................                                                                                        ộ ả ể                                               Hình 2.3.Bi u đ  c t c a m t  nh trong Paint Shop Pro 7  9     ..........................................     ơ ồ ủ                                                                                     Hình 3.1.S  đ  nhúng th y vân  20      .................................................................................       ả ơ ồ  21      ................................................................................                                                                                         i mã Hình 3.2.S  đ  quá trình gi ươ ủ ệ   ng trình                                                                  Hình 3.3.Giao di n chính c a ch  22      ...............................................................     ệ ấ  23      ...........................................................................                                                                                    Hình 3.4.Giao di n sau khi gi u tin  ệ                                                                             Hình 3.5.Giao di n tr  24      c khi tách tin  ........................................................................     ệ  24      Hình 3.6.Giao di n sau khi tách tin  ............................................................................

3

Ngành công ngh  thông tin Ậ

Ề Ỹ

Ử Ả ƯƠ ệ NG 1. T NG QUAN V  K  THU T GI U TIN

Đ  án môn: X  LÝ  NH CH 1.1.Khái ni mệ   ườ ấ ố ượ ậ ọ ượ Môi tr ng gi u tin (hay còn g i là v t mang tin): là đ i t ng đ c dùng

ả ả ư ể ấ đ  gi u tin nh  văn b n,  nh, audio, video,…

ấ ả ẽ ượ ư ấ Thông tin s  đ ấ   ữ ệ ả c gi u vào d  li u  nh nh ng ch t Gi u tin trong  nh:

ả ổ ế ượ ằ ữ ả ượ l ng  nh ít thay đ i và “khó” bi c đ ng sau  nh đó mang nh ng thông tin có t đ

ậ ả ườ ể ế ượ ý ngĩa gì. Trong  nh thông tin m t cho nhau mà ng i khác khô th  bi t đ c.

ấ ấ ạ ệ ố ụ ộ Gi u tin trong audio l i ph  thu c vào h  th ng thính Gi u tin trong audio:

ầ ấ ề ấ ỏ ồ ộ giác. Gi u thông tin trong audio đòi h i yêu c u r t cao v  tính đ ng b  và tính an

ủ ươ ề ợ ụ ể ấ toàn c a thông tin. Các ph ng pháp gi u tin trong audio đ u l ế   i d ng đi m y u

trong thính giác con ng i.ườ

ấ ư ấ ả ố Cũng gi ng nh  gi u tin trong  nh hay trong audio, Gi u tin trong video:

ấ ượ ượ ể ẽ ạ gi u tin trong video cũng đ c quan tâm và đ ề   c   phát ti n m nh m  cho nhi u

ứ ư ề ụ ự ể ệ ề ậ ả ng d ng nh  đi u khi n truy c p thông tin, xác th c thông tin và b o v  quy n tác

ả ưở ươ ấ ả ố gi . Ý t ơ ả ủ ng c  b n c a ph ầ   ng pháp là phân ph i thông tin gi u dàn tr i thheo t n

ố ố ủ ữ ệ s  c a d  li u g c.

ữ ệ ẽ ượ ộ ượ ấ ­ D  li u s  đ c gi u là m t l ộ   ng thông tin mang ý nghĩa nào đó tùy thu c

ụ ủ ườ ử ụ vào m c đích c a ng i s  d ng.

ộ ậ ậ ẩ ấ ắ   ­ Gi u tin là nhúng m u tin m t vào m t v t mang tin khác, sao cho m t

ườ ệ ặ ậ ẩ ậ th ng “khó” phát hi n ra m u tin đó, m t khác khó nh n bi ế ượ t đ c v t mang tin

ượ ấ ậ đã đ ộ c gi u m t tin m t.

ệ ấ

ủ 1.2.M cụ  đích c a vi c gi u tin ấ ụ ủ ệ ả ả ậ ả ­ M c đích c a vi c gi u tin là đ m b o an toàn và b o m t thông tin. Có 2

ầ ượ ạ khía c nh c n đ c quan tâm đó là:

ữ ệ ượ ả ậ ấ + B o m t cho d  li u đ c đem gi u .

ố ượ ả ậ ượ ấ + B o m t cho chính đ i t ng đ c đem gi u thông tin .

ấ ậ ượ ứ ụ ụ ể ệ ­ Ngày nay ngh  thu t gi u tin đ ụ c nghiên c u đ  ph c v  các m c đích

ỷ ấ ố ệ ố ư ả ệ ả ự ề ấ tích c c nh : b o v  b n quy n các tài li u s  hóa (dùng thu   n s ), hay gi u các

ậ ề ự ế thông tin bí m t v  quân s  và kinh t .

ể ủ ự ữ ệ ạ ườ ­ S  phát tri n c a công ngh  thông tin đã t o ra nh ng môi tr ấ ng gi u tin

ệ ợ ớ ườ ể ấ ả m i vô cùng ti n l i và phong phú. Ng i ta có th  gi u tin trong các văn b n, hình

ả ể ấ ả ố nh, âm thanh. Cũng có th  gi u tin ngay trong các kho ng tr ng hay các phân vùng

ẩ ủ ườ ư ữ ư ứ ề ề n c a môi tr ạ   ng l u tr  nh  đĩa c ng, đĩa m m. Các gói tin truy n đi trên m ng

4

ồ ệ Ngành công ngh  thông tin

Ử Ả ấ ườ ậ ợ ệ ề ầ ườ Đ  án môn: X  LÝ  NH cũng là môi tr ng gi u tin thu n l i. Các ti n ích ph n m m cũng là môi tr ng lý

ể ể ề ậ ả ưở t ọ ng đ  gài các thông tin quan tr ng, đ  xác nh n b n quy n.

ạ ậ ấ ỹ 1.3.Phân lo i các k  thu t gi u tin

ỹ ể ậ ấ Có th  chia k  thu t gi u tin ra làm 2: steganography và watermarking.

Hình 1.1.Phân lo i các k  thu t gi n tin

ấ ậ 1.2.1.Gi u tin m t (Seganography )

ấ ậ ớ ệ ấ Gi u tin m t (Seganography ) quan tâm t i vi c gi u các tin sao cho thông tin

ấ ượ ố ọ ườ ệ ượ gi u đ ề c càng nhi u càng t t và quan tr ng là ng i khác khó phát hi n đ ộ   c m t

ị ấ ằ ậ ỹ ườ ố ượ đ i t ng có b  gi u tin bên trong hay không b ng k  thu t thông th ng.

ủ ố 1.2.2.Th y vân s  (Watermaking )

ố ượ ủ ấ ố ằ ị Th y vân s  (Watermaking ) đánh gi u vào đ i t ả   ẳ ng nh m kh ng đ nh b n

ở ữ ố ượ ủ ề ệ ạ quy n s  h u hay phát hi n xuyên t c thông tin. Th y vân s  đ c phân thành 2

ề ữ ủ ủ ạ ễ ỡ lo i th y vân b n v ng và th y vân d  v .

ữ ề ỷ ườ ượ ứ ứ ụ ụ ả ­ Thu  vân b n v ng: th ng đ c  ng d ng trong các  ng d ng b o v ệ

ề ỷ ượ ư ộ ứ ả ẩ ả b n quy n. Thu  vân đ ả   c nhúng trong s n ph m nh  m t hình th c dán tem b n

ề ườ ả ồ ạ ề ớ ả ữ ợ quy n. Trong tr ỷ ng h p này, thu  vân ph i t n t ẩ   i b n v ng cùng v i s n ph m

ằ ố ả ế ổ ỷ ỷ ệ ẩ nh m ch ng vi c t y xoá, làm gi hay bi n đ i phá hu  thu  vân.

ư ấ ằ ắ ẩ ố ỷ ườ ể + Thu  vân  n: cũng gi ng nh  gi u tin, b ng m t th ng không th  nhìn

ấ ỷ th y thu  vân.

ệ ạ ỷ ỷ ượ ệ ả ẩ + Thu  vân hi n: là lo i thu  vân đ c hi n ngay trên s n ph m và ng ườ   i

ấ ượ ể dùng có th  nhìn th y đ c.

ễ ỡ ủ ậ ả ỹ ỷ ­ Th y vân d  v : là k  thu t nhúng thu  vân vào trong  nh sao cho khi phân

ẩ ườ ấ ứ ộ ở ế ế ổ ố ả b  s n ph m trong môi tr ng m  n u có b t c  m t phép bi n đ i nào làm thay

5

Ử Ả

ả ẩ ố ỷ ượ Ngành công ngh  thông tin ố ượ ẽ ấ ồ  Đ  án môn: X  LÝ  NH ổ ố ượ đ i đ i t ng s n ph m g c thì thu  vân đã đ ệ ng s  không c gi u trong đ i t

ư ướ ẹ ấ ữ ễ ỡ còn nguyên v n nh  tr c khi d u n a (d  v ).

ữ So sánh gi a steganography và watermarking:

ự ệ ữ ủ ấ Steganography ­   Che   gi u   s   hi n   h u   c a   thông Watermaking ­Thêm   vào   thông   tin   b nả ụ    M c đích

đi p ệ quy n ề

ộ ậ ấ ắ ấ ­ Thông tin che gi u đ c l p v i v ớ ỏ ớ   ­ Che gi u thông tin g n v i

ệ ượ ỏ ọ ng v  b c ề ữ ẩ b cọ ­ Không phát hi n đ ệ   c thông đi p ố ượ đ i t Tiêu chu n b n v ng Yêu c uầ

ấ ị b  che gi u

ng tin đ

ượ ấ c d u ệ ậ ị ị ỡ ấ ượ ­ Dung l ệ Phát hi n ra thông đi p bí m t b  che Watermaking b  phá v T n   công

ộ ố ứ gi uấ ụ thành công 1.4.M t s   ng d ng

ụ ủ ủ ố Ứ * ng d ng c a th y vân s (Watermaking):

ự ộ ả ả ế ­ T  đ ng giám sát các b n sao và theo dõi các b n sao, vi ệ t tài li u trên

web.

ụ ệ ế ớ ượ ấ (Ví d  1 robot tìm ki m trên web v i 1 tài li u đ ề   c đánh d u và do đó có ti m

ề ấ ợ ấ năng xác đinh v n đ  b t h p pháp).

ự ộ ể ề ­ T  đ ng ki m tra 1 đài phát thanh truy n đi.

6

ồ ệ Ngành công ngh  thông tin

Đ  án môn: X  LÝ  NH ƯƠ

Ử Ả CH

NG 2. Đ NH D NG  NH BITMAP

ố ượ ầ ả ươ ắ ấ ớ Đ i   t ng   nh   đ u   tiên   mà   các   ch ng   trình   gi u   tin   nh m   t ả   i   là   nh

ổ ế ạ ả ượ ấ Bitmap. Vì  nh này ph  bi n trên m ng Internet, dung l ng gi u tin cao và các

ươ ả ấ ơ ph ng pháp gi u tin đ n gi n.

ổ 2.1.T ng quan

ố ườ ả ượ ư ướ ạ ệ ả Các  nh s  th ng đ c l u d ộ   i d ng t p  nh 24­bit hay 8­bit cho m t

ể ả Ả ượ ề ả ấ ọ đi m  nh.  nh 24­bit còn đ ỗ ấ   c g i là  nh   true colour cung c p nhi u ch  gi u

ụ ộ ả ả ơ ớ ỡ thông tin h n; tuy nhiên  nh 24­bit l n, ví d  m t  nh  24­bit c  1024 x 768 pixels

ướ ễ ị ả ườ có kích th c trên  2 MB, nên d  b  gây chú ý khi t ạ i qua m ng. Th ả   ữ ng nh ng  nh

ượ ư ấ ậ ả ộ ươ ầ đó c n đ ể c nén, nh ng nén  nh có th  làm m t tin m t.  M t ph ng án khác là

ể ấ ể ả có th  dùng  nh  8­bit màu đ  gi u thông tin.

ể ả ả ỗ ượ ể ệ ằ ư ả Trong các  nh 8­bit (nh   nh GIF), m i đi m  nh đ ộ   c th  hi n b ng m t

ộ ả ỏ ế ỉ ụ ể ầ ơ ỗ ớ byte. M i đi m đ n thu n tr  đ n m t b ng ch  m c các màu (palette), v i 256 kh ả

ể ả ị ằ ỉ ơ ứ ữ ề ầ ầ năng màu. Đi m  nh ch a tr  n m gi a 0 và 255. Các ph n m m ch  đ n thu n v ẽ

ể ầ ạ ị ộ ả ự ế ọ ị màu c n bi u th  lên màn hình t ả   i v  trí l a ch n. N u dùng m t  nh 8­bit làm  nh

ề ấ ủ ấ ề ả ả ấ ph , r t nhi u chuyên gia v  gi u tin trong  nh khuyên nên dùng  nh 256 c p xám

ổ ồ ủ ả ữ ề ấ ả ả ấ   vì b ng màu c a  nh xám thay đ i đ ng đ u gi a làm tăng kh  năng gi u tin. Gi u

ố ớ ộ ả ả ả ẫ ả ả ầ tin trong  nh 8­bit c n xem xét c   nh l n b ng màu. M t  nh có kh i l n các màu

ễ ị ậ ấ ấ ơ ế ọ ả ủ ướ ế ồ đ ng nh t khó gi u h n vì d  b  nh n bi t. Sau khi ch n  nh ph , b c ti p theo là

ươ ả ọ ch n ph ng pháp mã hoá  nh.

2.2.B ng mả àu

ỉ ụ ủ ả ứ ề ả ả ộ ỗ   B ng màu là m t m ng 1 chi u ch a ch  m c các màu c a  nh. Sau đó m i

ể ả ỏ ế ỉ ụ ỉ ệ ả ộ đi m  nh ch  vi c tr  đ n m t màu ch  m c nào đó trên b ng màu.

ể ả

Hình 2.1.B ng màu và các đi m  nh dùng b ng màu

ộ ộ ộ ố ứ ả ớ ­ Trong b ng màu, 1 màu  ng v i m t b  ba hay b  b n.

ướ ủ ả ượ ừ ộ ể ả ­ Kích th c c a b ng màu đ c tính t đ  sâu đi m  nh (pixel depth):

7

ồ ệ Đ  án môn: X  LÝ  NH Ngành công ngh  thông tin

Ử Ả 4­bit pixel:   3 byte/màu * 16 (= 24) màu = 48 byte

8­bit pixel:   3 byte/màu * 256 màu = 768 byte

15­bit pixel: 3 byte/màu * 32768 màu = 96 kbyte

16­bit pixel: 3 byte/màu * 65536 màu = 192 kbyte

ộ ố ạ ả ớ ố ả ấ ả ả ả ­ M t s  lo i  nh gi m b t s  màu trong b ng màu, vì không ph i t t c  các

ượ ả màu đ c dùng trong  nh (CGM, TGA).

ị ể ượ ấ ­ Các giá tr  đi m đ c c t trong 2 byte (16 bit):

16 bit = 2 byte = (8 bit, 8 bit) ­> (5,6,5) = (R,G,B)

ố ­ Có các cách b  trí:

ể ả + Theo đi m  nh (pixel­orientiert) (RGB) (RGB) (RGB) (RGB) (RGB)

ặ ẳ + Theo m t ph ng màu (plane­orientiert)  (RRRRR ..... GGGGG ..... BBBBB)

Hình 2.2.Các cách b  trí b ng màu

ươ ệ ắ ế ạ ả ự ấ ả ộ ố M t s  ph ng pháp gi u tin trong  nh d a vào vi c s p x p l i b ng màu,

ươ ả ớ trong khi các ph ng pháp khác thêm b t các màu vào b ng màu.

ả ả 2.3.Mô t nh

ứ ề ả ể ử ặ ườ ả ỳ Đ  x  lý ho c nghiên c u v   nh ng i ta ph i mô hình hoá chúng. Tu  theo

ử ụ ể ể quan đi m, mô hình mà có th  áp d ng các phép x  lý khác nhau trên mô hình đó.

Ả ồ ư ộ ả ể ả ồ quan đi m  nh mành nh  m t b n đ  các bít ư ộ ả ­  nh nh  m t b n đ  bít:

ề ả ụ ể ề ạ t o n n t ng đ  chúng ta áp d ng các phép toán v  bit.

ư ộ Ả ể ử ả ọ  đ  x  lý  nh trong máy tính dùng các công ­  nh nh  m t hàm toán h c:

ọ ườ ờ ạ ễ ả ư ể ộ ụ c  toán h c, ng i ta tìm cách bi u di n  nh nh  là m t hàm r i r c f(x,y) trong đó

ạ ộ ủ ể ả ủ ả ặ ậ ộ ị x, y là to  đ  c a đi m  nh còn f là giá tr  xám ho c đ  sáng c a  nh. f nh n các

ị ờ ạ ả ừ ế ả giá tr  r i r c trong kho ng t 0 đ n fmax. Trong  nh 8 bit thì fmax = 28= 256.

ả ườ ể ả ễ ể ầ Trong  nh màu ng i ta có th  mô t ỏ    màu qua ba hàm bi u di n các thành ph n đ ,

ụ l c và lam.

8

ồ Ử Ả ệ Ngành công ngh  thông tin

Đ  án môn: X  LÝ  NH ụ Ví d  r(x,y); g(x,y); b(x,y).

ườ ộ ả ộ M t  nh f(x,y) cũng là m t môi tr ườ   ng ư ộ ­ Ảnh nh  m t môi tr ậ ng v t lý:

ổ ậ ụ ể ế ả ậ v t lý nên có th  dùng áp d ng các phép bi n đ i v t lý trên  nh.

ụ ứ ượ ả ầ ố ủ ể ả ễ ả ủ ả ổ Ví d  m c năng l ng c a đi m  nh, d i t n s  c a nhi u  nh, d i ph ,..

ả ả ư ộ ố ể ả ị ủ ứ    Các giá tr  c a đi m  nh (m c nh nh  m t mô hình th ng kê:

­ Mô t ộ ị ượ ư ế ẫ xám, đ  sáng hay tr  màu) đ c coi nh  là bi n ng u nghiên, do đó chúng ta có th ể

ượ ụ ố ườ ể ể tính đ ấ ủ c phân b  xác su t c a chúng. Ví d  ng ồ ộ   i ta có th  dùng bi u đ  c t

ể ể ử ễ ả ộ ị ườ (histogram) đ  bi u di n đ  xám hay các tr  màu. Trong x  lý  nh ng i ta có th ể

ồ ộ ể ư ọ ễ ệ ể ể ấ dùng bi u đ  c t đ  làm các vi c nh  l c nhi u.Còn trong gi u tin thì ta có th  qua

ế ể ấ ả ố ấ đó mà bi t đâu là vùng  nh có th  gi u tin t t nh t.

ồ ộ ủ

ộ ả Hình 2.3.Bi u đ  c t c a m t  nh trong Paint Shop Pro 7 ể ề ả

ề ả ể ượ Chính các quan đi m khác nhau v   nh đã làm n n t ng đ  có đ ữ   c nh ng

ậ ấ ỹ k  thu t khác gi u tin khác nhau.

ấ ả 2.4.C u trúc  nh

Ả ể ậ ượ ọ nh   Bitmap   do   Microsoft   phát   tri n,   do   v y   còn   đ c   g i   là     Microsoft

Windows Bitmap  (BMP, DIB, Windows BMP, Windows DIB, Compatible Bitmap)

ữ ộ ậ ớ ế ị ể Ả ị ượ ử ụ ộ ượ ư đ c l u tr đ c l p v i thi t b  hi n th  (DIB).  nh này đ c s  d ng r ng rãi

ầ Ả ể ườ trên Windows. Có th  có 1­, 4­, 8­, 16­, 24­, hay 32­bit m u.  nh này th ng s ử

ươ ụ d ng ph ạ ng pháp mã hoá lo t dài RLE. Kích th ướ ố c t i đa là 32Kx32K và 2Gx2G

ộ ệ ề ả Ả ứ pixel.  nh bitmap không cho phép ch a nhi u  nh trong m t t p.

ấ ạ ủ ả ồ C u t o c a  nh bitmap g m các ph n ầ :  1. Header

2. Palette

3. Bitmap Data

4. Footer

9

Đ  án môn: X  LÝ  NH ả Ử Ả ử ể ọ ườ ầ ắ Ngành công ngh  thông tin ấ ượ Đ  đ c và x  lý  nh Bitmap ng i ta c n n m đ ệ ủ ả   c các c u trúc c a  nh

c ượ đ

ầ ư l u trong ph n Header .

ủ ư ấ Ví dụ: Header c a Microsoft Windows Bitmap Version 1.x có c u trúc nh  sau:

Header  Palette

Bitmap Index

Palette 1

File Identifier

File Version

Number of Lines per Image

Number of Pixels per Line

Number of Bits per Pixel

Number of Color Planes

Compression Type

X Origin of Image

Y Origin of Image

Text Description

Ả ầ ồ Unused Space nh Bitmap Microsoft Windows 1.x có ph n Header g m 10­byte :

TYPEDEF struct _Win1xHeader

{

WORD Type; /* File type identifier (always 0) */

WORD Width; /* Width of the bitmap in pixels */

WORD Height; /* Height of the bitmap in scan lines */

WORD ByteWidth; /* Width of bitmap in bytes */

BYTE Planes; /* Number of color planes */

BYTE BitsPerPixel; /* Number of bits per pixel */

} WIN1XHEADER;

ữ ệ ả ượ ệ D  li u  nh Bitmap đ c ghi vào t p theo 2 cách:

ậ ự ể ả ừ ư ượ ể ­ Quét t ng dòng theo tr t t đi m  nh nh  chúng đ ị c hi n th  trên thi ế ị  t b

ừ ặ ầ ẳ theo t ng m t ph ng m u (plane)

ế ấ * Chi ti ả t c u trúc các  nh BITMAP

­ Bitmap header:

ứ ể ậ ạ ự 1­2 Nh n d ng file Ki u arrayp1..2] of char:ch a ký t BM

ướ ể ằ 3­6 Kích th file Ki u Longint: tính b ng byte

10

Ử Ả ồ ệ Đ  án môn: X  LÝ  NH Ngành công ngh  thông tin

ư ế ẽ ừ 7­10 Reserve nt : tôi ch a bi t(có l là tên file th a)

ắ ầ ắ ầ ể ừ ầ ể ị 11­14 Byte b t đ u Ki u longint, v  trí byte b t đ u vùng data k  t đ u file

11

ồ Ử Ả ệ Ngành công ngh  thông tin

Đ  án môn: X  LÝ  NH ­ BitmapInfor :

ệ ạ ể ố ị 1­4 S  byte trong vùng info Ki u Longint, hi n t i có  giá tr  40

ề ộ ằ ể 5­8 Chi u r ng bitmap Ki u longint tính b ng pixel

ề ằ ể 9­12 Chi u cao bitmap Ki u longint tính b ng pixel

ố ả ố ể 13­14 S  Planes màu Ki u Word s  b ng màu

ể ộ ố ị ể 15­16 S  bits cho m t pixel Ki u Word, các giá tr  có th  có

ắ 1: Đen/tr ng,

4:16  màu,

8:256 màu,

24: 24bit màu

ữ ệ ể ể ị 17­20 Ki u nén d  li u Ki u Longint có giá tr  là

0: Không nén

1: Nén runlength+8bit/pixel

2: Nén runlength+4bit/pixel

ướ ả ủ ả ể ố 21­24 Kích th ằ c  nh Ki u Longint, b ng s  byte c a  nh

ả ể ằ ộ 25­28 Đ  phân gi i ngang Ki u Longint, tính b ng pixel

ả ọ ể ằ ộ 29­32 Đ  phân gi i d c Ki u Longint, tính b ng pixel

ượ ử ụ ể ả ố 33­36 S  màu đ c s  d ng Ki u Longint trong  nh

ượ ử ụ ệ ả ể ố 37­40 S  màu đ c s  d ng Ki u Longint khi hi n  nh

­ Bitmap palette:

ủ ế ề ồ ộ Ti p theo sau vùng info là palette màu c a BMP, g m nhi u b  có kích th ướ   c

ế ề ấ ộ ằ b ng 4 byte x p li n nhau theo c u trúc Blue­Green­Red và m t Byte dành riêng cho

ướ ủ ủ ả ằ ố Itensity. Kích th c c a vùng Palette màu b ng 4*s  màu c a  nh. Vì Palette màu

ấ ạ ứ ự ọ ủ c a màn hình có c u t o theo th  t ủ    Red­Green­Blue, nên khi đ c palette màu c a

ả ổ ạ ể ả ủ ả ợ ượ nh BMP vào ta ph i chuy n đ i l ố i cho phù h p. S  màu c a  nh đ c bi ế ự   t d a

ụ ể ả ố trên s  bít cho 1 pixel c  th  là: 8.bits/pixel:  nh 256 màu,

ả ả 4bits/pixel:  nh 16 màu, 24bits/pixel nh 24 bít màu

­ BitmapData:

ề ế ủ ứ ầ ầ Ph n này k  ti p ngay sau Palette màu c a BMP. Đây là ph n ch a các giá tr ị

ể ả ủ ượ ư ứ ự ừ màu c a các đi m  nh trong BMP. Các đi m  nh ể ả  đ c l u theo th  t t trái qua

ả ộ ạ ượ ư ỗ ph i trên m t dòng và các dòng l c l u theo th  t ứ ự ướ  d i đ i lên trên. M i Byte

trong vùng

ể ả ể ề ễ ặ ố ộ BitmapData bi u di n 1 ho c nhi u đi m  nh tùy theo s  bits cho m t pixel.

12

Ử Ả ồ Đ  án môn: X  LÝ  NH

ắ Ngành công ngh  thông tin ả ệ ứ ụ   ơ +  Khi là 1 bit màu:  Các bitmap là Đ n s c, và b ng màu có ch a hai m c.

ể ả ệ ế ả ạ ỗ ộ ể   M i bit trong bitmap m ng đ i di n cho m t đi m  nh. N u bit, rõ ràng, các đi m

ả ẽ ượ ắ ủ ị ớ ế ể ả ầ nh s  đ ụ c hi n th  v i màu s c c a các m c đ u tiên trong b ng màu, n u các

ượ ế ậ ắ ủ ể ả ứ ụ ả ậ bit, đ c thi t l p, các đi m  nh có màu s c c a các m c nh p th  hai trong b ng.

ố ả ắ + Khi là 4 bit màu: Các bitmap đã có t i đa là 16 màu s c, và các b ng màu

ể ả ụ ứ ế ượ ể ệ ộ ỗ ch a lên đ n 16 m c. M i đi m  nh trong bitmap đ ằ c th  hi n b ng m t 4­bit,

ụ ế ỉ ụ ả ườ ầ ch  m c vào các b ng màu. Ví d , n u là ng i đ u tiên byte trong bitmap là 1Fh,

ể ả ứ ệ ầ ả ạ các byte đ i di n cho hai pixel. Đ u tiên ch a các đi m  nh màu trong b ng màu

ể ả ụ ụ ứ ứ ứ ả ầ ậ m c nh p th  hai, và l n th  hai ch a các đi m  nh màu trong b ng màu 16 m c.

ố ả + Khi là 8 bit màu: Các bitmap đã có t ắ i đa là 256 màu s c, và các b ng màu

ứ ố ườ ệ ả ạ ỗ ợ ch a t ụ i đa 256 m c. Trong tr ộ   ng h p này, m i byte trong m ng đ i di n cho m t

ể ả đi m  nh.

ố ế + Khi là 16 bit màu: Các bitmap đã có t ự   i đa là 216 màu. N u các  lĩnh v c

ậ ượ ế ậ ự ể ủ c a nén t p tin bitmap đ c thi ứ   t l p đ  BI_RGB, các lĩnh v c Palette không ch a

ỗ ừ ể ả ệ ạ ả ộ ụ b t kấ ỳ m c. M i t trong m ng bitmap đ i di n cho m t đi m  nh. Các thân nhân

ượ ệ ạ ầ ớ ỗ ỏ ủ c a intensities đ , xanh, xanh và đ c đ i di n v i 5 bit cho m i thành ph n màu

ể ấ ỗ ị ắ s c. Các giá tr  cho màu xanh là đáng k  trong ít nh t 5 bit, sau 5 bit cho m i màu

ỏ ươ ứ ả ọ ượ ử ụ xanh và đ , t ấ ng  ng. Tr ng nh t không ph i là ít đ c s  d ng.

ự ủ ế ậ ượ ế ậ N u các lĩnh v c c a nén t p tin bitmap đ c thi t l p đ ể BI_BITFIELDS,

ặ ạ ự ứ ỏ ỉ ị các lĩnh v c Palette có ch a ba dword màu m t n  mà ch  đ nh màu đ , màu xanh,

ầ ươ ể ả ỗ ừ ứ màu xanh và các thành ph n, t ỗ ng  ng, trong m i đi m  nh. M i t ả    trong m ng

ể ả ệ ạ ộ bitmap đ i di n cho m t đi m  nh.

ụ ể ự ượ ế ậ ể Windows NT, c  th : Khi nén lĩnh v c đ c thi t l p đ  BI_BITFIELDS,

ế ậ ả ượ ỗ ồ thi t l p bit trong m i dword mask ph i đ c tác và không nên ch ng chéo các bit

ể ả ấ ả ầ ộ ủ c a m t khách mask. T t c  các bit trong các đi m  nh không c n ph i đ ả ượ ử c s

ụ d ng.

ụ ể ự ượ ế ậ ể Windows 95 c  th : Khi nén lĩnh v c đ c thi t l p đ  BI_BITFIELDS,

ỉ ỗ ợ ặ ạ ả ộ ơ   Windows 95 ch  h  tr  sau đây 16bpp màu m t n : M t 5­5­5 16­bit, hình  nh, n i

ỏ mà màu xanh mask là 0x001F, cácmàu xanh lá cây mask là 0x03E0, và màu đ  mask

ả ơ là 0x7C00; và 5­6­5 16­bit, hình  nh, n i mà màu xanh mask là 0x001F, các màu

ỏ xanh lá cây mask là 0x07E0, và màu đ  là 0xF800 mask.

ố ắ + Khi  là 24 bit màu: Các bitmap đã có t i đa là 224 ự    màu s c, và các lĩnh v c

ứ ấ ỳ ụ ả ạ ỗ ệ   Palette không ch a b t k  m c. M i 3­byte ban tam ca trong m ng bitmap đ i di n

13

ồ Ngành công ngh  thông tin

Ử Ả ủ ệ ứ ỏ ươ Đ  án môn: X  LÝ  NH cho thân nhân c a intensities màu xanh, màu xanh lá cây, và đ , t ộ   ng  ng, cho m t

ể ả đi m  nh.

ự ằ ố ế +  Khi lĩnh v c này là b ng 32 : Các bitmap đã có t i đa là  232 màu. N u các

ủ ự ượ ế ậ ự ể lĩnh v c nén c a bitmap đ c thi ứ   t l p đ  BI_RGB, các lĩnh v c Palette không ch a

ủ ệ ạ ả ỗ ấ ỳ ụ b t k  m c. M i dword trong m ng bitmap đ i di n cho thân nhân c a intensities

ỏ ươ ứ ộ màu xanh, màu xanh lá cây, và đ , t ể ả ng  ng, cho m t đi m  nh. Cao byte trong

ử ụ ỗ m i dword là không s  d ng.

ủ ự ế ượ ế ậ ể N u các lĩnh v c nén c a bitmap đ c thi t l p đ  BI_BITFIELDS, các lĩnh

ặ ạ ứ ỏ ỉ ị ự v c Palette có ch a ba dword màu m t n  mà ch  đ nh màu đ , màu xanh, màu xanh

ầ ươ ể ả ứ ả ỗ ỗ và các thành ph n, t ng  ng, trong m i đi m  nh. M i dword trong m ng bitmap

ể ả ệ ộ ạ đ i di n cho m t đi m  nh.

14

ồ ệ Đ  án môn: X  LÝ  NH Ngành công ngh  thông tin

Ử Ả ƯƠ

CH

Ấ NG 3.  K  THU T GI U TIN TRONG  NH

ậ ấ ả 3. 1.Các kĩ thu t gi u tin trong  nh BITMAP

ậ ợ ề ệ ấ ấ ả ấ ớ Vi c gi u tin trong  nh màu thì có r t nhi u thu n l ệ i so v i vi c gi u tin

ộ ư ư ể ả ắ trong  nh đen tr ng nó có m t  u đi m nh  sau:

ấ ượ ề ắ ơ Gi u đ ỡ ớ ả c nhi u thông tin h n so v i  nh đen tr ng cùng kích c

ớ ả ự ấ ộ ơ ổ ớ ả   ắ Đ  an toàn cao h n so v i  nh đen tr ng vì có r t ít s  thay đ i so v i  nh

ầ ố g c ban đ u.

ặ ằ ỏ ơ Ả 3.1.1. nh nh  h n ho c b ng 8 bit màu

ả ấ ả ữ ỏ ơ ề ả ả Không ph i t ặ ằ t c  nh ng  nh nh  h n ho c b ng 8 bit màu đ u có b ngmàu

ệ ắ ế ế ầ ắ ấ ậ ượ ắ đ c s p x p, do v y vi c s p x p LSB r t khó khăn. Ta c n s p x p l ế ạ ả   i b ng

ấ ỳ ả ử ọ ư ầ ạ ị ộ màu: Ch n  m t màu b t k  gi s  màu có d ng: A(x, y, z) tđ a vào v  trí đ u tiên

ệ ấ ả ạ Duy t t t c  các màu B(m, n, p) còn l i và tính:

S(A, B) =sqrt((x­m)2 +(y­n)2+(z­p)2)

ấ ể ắ ế ạ ẽ ọ ỏ Ta s  ch n màu B có S(A, B) nh  nh t đ  s p x p c n màu A sau đó l ạ ế   i ti p

ụ ướ t c b c 2.

ế ả ượ ắ ế Quy trình k t thúc khi b ng màu đã đ c s p x p.

ư ể ả ỉ ố ả ượ ổ ỉ ố Các đi m  nh có ch  s  màu là 15 ph i đ c đ i thành ch  s  853. 1. L u ý:

2

Ả 3.1.2. nh 16 bit màu

ự ế ỉ ượ ể ể ể ả ễ ộ Th c t ch  có 15 bit đ c dùng đ  bi u di n cho m t đi m  nh :

ể ể ễ ườ ộ ươ ố 5 bit dùng đ  bi u di n c ng đ  t ỏ ng đ i màu đ

ể ể ễ ườ ộ ươ ố ơ 5 bit dùng đ  bi u di n c ng đ  t ng đ i màu xanh l

ể ể ễ ườ ộ ươ ố 5 bit dùng đ  bi u di n c ng đ  t ng đ i màu xanh lam

ấ ở ế ứ Còn 1 bit không dùng đ n là bit cao nh t ủ ả    byte th  2,  đó chính là bit LSB c a  nh

ế ộ ượ ấ ấ ỉ ấ 16 bit màu. N u ch  l y m t bit này thì l ầ ầ   ng thông tin gi u là r t  ít do đó c n l y

ữ ộ ố thêm m t s  bit n a.

Ả 3.1.3. nh 24 bit màu

ể ả ỗ ượ ễ ể ằ ộ          M i m t đi m  nh đ c bi u di n b ng 3 byte

ể ể ễ ườ ộ ươ ố 1 byte dùng đ  bi u di n c ng đ  t ỏ ng đ i màu đ

ể ể ễ ườ ộ ươ ố ơ 1 byte dùng đ  bi u di n c ng đ  t ng đ i màu xanh l

ể ể ễ ườ ộ ươ ố 1 byte dùng đ  bi u di n c ng đ  t ng đ i màu xanh lam

ề ố ả ỗ ưở ế ằ          Trong m i byte các bít n m càng v  cu i càng ít  nh h ầ ữ ệ   ng đ n ph n d  li u

ả ườ ượ ượ ườ ườ ấ nh. Thông th ể ng đ  tăng l ng thông tin đ ấ c gi u ng i ta th ng l y 4 bít

ể ấ ỗ ố cu i m i byte đ  gi u thông tin.

15

ồ ệ

Ngành công ngh  thông tin ộ Ử Ả ự ố ủ ế ấ ằ ộ Đ  án môn: X  LÝ  NH ả   ệ           B ng th c nghi m cho th y n u thay toàn b  bít cu i c a m t byte thì  nh

ề ắ ớ ả ề ầ ế ủ k t q a cũng không khác nhi u l m so v i  nh ban đ u. Đi u này là vô cùng có ý

ể ấ ượ ề ả nghĩa vì ta có th  gi u đ c nhi u thông tin trong  nh .

ệ ố ậ ỹ 3.2. K  thu t dùng h  s  DCT

ề ả ậ ỹ 3.2.1.N n t ng k  thu t

ả ấ ượ ố Các  nh JPEG có t ỷ ệ  l nén cao, ch t l ng t t, do đó chúng đ ượ ử ụ   c s  d ng

ớ ử ệ ả ư ề ạ ợ nhi u trên m ng. Tuy nhiên các t p  nh JPEG không phù h p v i x  lý bít nh  các

ả ể ấ ữ ệ ự ể ẫ ả ầ ậ nh d a trên b ng m u, tuy v y v n có th  dùng chúng đ  gi u d  li u.

Ả ể ự ử ụ ế ệ ế ả ổ ổ   ờ ạ nh JPEG s  d ng bi n đ i Cosin r i r c đ  th c hi n nén  nh Bi n đ i

ấ ữ ệ ờ ạ ế ể ổ cosin r i r c là phép bi n đ i m t d  li u vì không th  tính chính xác các giá tr ị

ể ỗ ữ ệ ộ ệ ữ ố ư cosin, cũng nh  có th  có các l ữ ệ   i làm tròn. Đ  l ch gi a d  li u g c và d  li u

ụ ồ ạ ụ ế ổ ộ ị ươ ử ụ ph c h i l i sau khi bi n đ i ph  thu c vào các giá tr  và ph ng pháp s  d ng đ ể

ờ ạ ị tính các tr  cosin r i r c.

ể ử ế ế ặ ả ổ ổ Cũng có th  x  lý  nh dùng bi n đ i Fourier nhanh ho c bi n đ i sóng con

ệ ằ ả ậ (wavelet transformation). Thu t toán JPEG làm vi c b ng cách chia  nh ra thành các

ệ ố ế ờ ạ ướ ừ ậ ậ ổ ế   ma tr n 8x8. Sau đó tính h  s  bi n đ i cosin r i r c cho t ng ma tr n. B c ti p

ệ ố ượ ậ ượ ớ ộ ả theo các h  s  này đ c nhân v i m t ma tr n l ế ng hoá. K t qu  thu đ ượ ẽ  c s

ế ố ầ ố ố ượ ượ đ ấ c làm tròn đ n s  nguyên g n nh t, cu i cùng các s  nguyên này đ c nén và

ư ạ l u l i.

ấ ử ể ấ ữ ệ ế ậ ơ Các c u t DCT chính là n i chúng ta có th  gi u d  li u. Cách ti p c n ph ổ

ệ ố ớ ứ ệ ố ử ứ ế ọ ớ ượ bi n là ch n các h  s  DCT l n và s  đi chút ít. Vì h  s  l n t c m c "năng l ng"

ổ ả ộ ướ ấ ệ ố ọ cao nên ít làm thay đ i  nh nh t. M t h ng khác là ch n các h  s  DCT trong các

ắ ườ ấ vùng mà m t ng i không nhìn th y.

ổ ế ụ ề ậ ử   Các thu t toán JPEG n i ti ng áp d ng trong F5 và JSteg đ u dùng cách s a

ữ ệ ể ả ươ ề ượ ườ DCT đ  nhúng d  li u. C  hai ph ng pháp này đ u qua đ ắ c m t th ư   ng nh ng

ượ ươ ố không qua đ c các ph ng pháp phân tích th ng kê.

ượ Dung l ấ ng gi u :

ượ ỷ ấ ấ ợ ơ ớ Dung l ậ ng gi u không cao, và vì v y phù h p h n v i thu   n.

ế ổ ờ ạ 3.2.2.Phép bi n đ i cosin r i r c (DCT)

ờ ạ ế ổ ượ Bi n đ i cosin r i r c vi ế ắ t t t là DCT­Discrete Cosine Transform đ ư   c đ a

ủ ệ ế ồ ở ổ ra b i  Ahmed và các đ ng nghi p c a ông vào năm 1974. Phép bi n đ i DCT đã

ờ ạ ẩ ả ế ạ ổ ị ượ đ c dùng trong d ng chu n  nh JPEG. v Đ nh nghĩa bi n đ i cosin r i r c hai

chi u: ề

16

ồ Đ  án môn: X  LÝ  NH Ngành công ngh  thông tin

Ử Ả ổ ề ổ ế ế ổ ố ệ ề ấ ỳ   ­ Bi n đ i DCT hai chi u t ng quát là bi n đ i trên kh i hai chi u b t k  m

ố ướ ượ ử ụ ề ấ x n, trong đó các kh i kích th c 8*8, 16*16 đ c s  d ng nhi u nh t. Tuy nhiên,

ể ế ẽ ố ổ ỉ ượ ử ụ chúng ta s  ch  tìm hi u phép bi n đ i DCT trên kh i 8*8 đ c s  d ng trong

ẩ ả chu n nén  nh JPEG.

ế ậ ổ ượ ị ư ­ Phép bi n đ i thu n DCT 8*8 đ c đ nh nghĩa nh  sau:

ế ổ ủ ề ể ặ 3.2.3.Đ c đi m c a phép bi n đ i DCT hai chi u

ề ầ ố ể ệ ệ ố ả ặ ộ ớ   ­ Th  hi n đ c tính n i dung v  t n s  thông tin  nh. H  s  góc trên là l n

ệ ố ư ề ầ ặ ộ ọ ị và đ c tr ng cho giá tr  trung bình thành ph n m t chi u g i là h  s  DC, còn các

ầ ầ ố ỏ ơ ể ị ễ ệ ố h  s  khác có giá tr  nh  h n bi u di n cho các thành ph n t n s  cao theo h ướ   ng

ướ ệ ố ứ ẳ ngang và theo h ọ ng th ng đ ng g i là h  s  AC.

ế ả ượ ữ ệ ổ ­ B n thân bi n đ i DCT không nén đ ệ ố c d  li u vì cũng sinh ra 64 h  s .

ế ổ ế ể ả ữ ớ ­ Theo nguyên lý chung, khi bi n đ i chi ti t gi a các đi m  nh càng l n theo

ộ ướ ể ả ướ ướ ứ ẳ m t h ố ng nào đó trong kh i các đi m  nh, h ng ngang, h ng th ng đ ng hay

ướ ườ ươ ứ ướ ế ổ theo h ng đ ng chéo thì t ng  ng theo các h ng đó, các bi n đ i DCT càng

l n.ớ

ế ổ ế ể ả ữ ớ ­ Theo nguyên lý chung, khi bi n đ i chi ti t gi a các đi m  nh càng l n theo

ộ ướ ể ả ướ ướ ứ ẳ m t h ố ng nào đó trong kh i các đi m  nh, h ng ngang, h ng th ng đ ng hay

ướ ườ ươ ứ ướ ế ổ theo h ng đ ng chéo thì t ng  ng theo các h ng đó, các bi n đ i DCT càng

l n. ớ

ộ ươ ả ố ả ủ ­ DCT làm gi m đ  t ng quan không gian c a thông tin trong kh i  nh. Nh ờ

ủ ệ ố ầ ố ủ ắ ặ ườ các đ c tính t n s  không gian c a h  th ng nhìn c a m t ng ệ ố i, các h  s  DCT có

ể ượ ớ ượ ấ ợ ọ ỉ th  đ ệ ố c mã hoá phù h p, ch  các h  s  DCT quan tr ng nh t m i đ c mã hoá đ ể

ề truy n đi.

ề ầ ố ấ ố ệ ố ể ề ­ Kh i h  s  DCT có th  chia thành 3 mi n: mi n t n s  th p, mi n t n s ề ầ ố

ề ầ ố ữ cao, mi n t n s  gi a:

ề ầ ố ấ ứ ả ọ ưở ế + Mi n t n s  th p: ch a các thông tin quan tr ng  nh h ng đ n tri giác.

17

ồ ệ Đ  án môn: X  LÝ  NH Ngành công ngh  thông tin

Ử Ả ề ầ ố ề ầ ố ườ + Mi n t n s  cao: các thông tin trong mi n t n s  cao th ng không mang

ườ ạ ỏ ề tính tri giác cao, khi nén JPEG thì th ng lo i b  thông tin trong mi n này. Trong

ầ ố ệ ố ậ ỷ ườ ề các thu t toán thu  vân, mi n h  s  DCT t n s  cao th ng không đ ượ ử ụ   c s  d ng

ườ ữ ề ả ặ ả ớ do nó th ề   ử ng không b n v ng v i các phép x  lý  nh, ho c nén  nh JPEG. Mi n

ượ ử ụ ộ ự ề ỏ ầ ố t n s  cao cũng khó đ ổ c s  d ng do m t s  thay đ i dù nh  trong mi n này cũng

ấ ượ ủ ả ế ẫ d n đ n ch t l ng tri giác c a  nh.

ườ ượ ử ụ ế ấ ề ầ ố ữ + Mi n t n s  gi a: th ng hay đ c s  d ng nh t và cũng cho k t qu  t ả ố   t

ề ầ ố ở ữ ử ụ ề ấ ậ ấ nh t. Trong thu t toán đ  xu t cũng s  d ng mi n t n s gi a.

ế ổ ề ấ ậ ỹ 3.3. K  thu t gi u tin trong mi n bi n đ i DCT

ậ ướ ươ Thu t toán d ẽ ử ụ i đây s  s  d ng ph ề ầ   ỷ ng pháp nhúng thu  vân trong mi n t n

ả ầ ượ ử ụ ể ứ ỷ ố ủ ả s  c a  nh, gi ệ c s  d ng đ  ch a tín hi u thu  vân là mi n t n s ề ầ ố ở ữ    gi a i t n đ

ố ả ữ ố ộ ố ủ c a m t kh i DCT 8x8. Trong đó, các kh i DCT 8x8 là nh ng kh i  nh cùng kích

ướ ượ ẫ ọ ừ ả ầ ượ ụ ế th c đã đ c ch n ra ng u nhiên t nh ban đ u và đ ổ   c áp  d ng phép bi n đ i

ề ầ ờ ạ ệ ể ể ố ỗ ỷ cosin r i r c DCT đ  chuy n sang mi n t n s . M i tín hi u thu  vân s  đ ẽ ượ   c

ứ ộ ố ch a trong m t kh i.

ả 3.3.1.Mô t ậ  thu t toán

­ Input:

ộ ỗ Watermark: M t chu i các bit b.

ộ ả M t  nh F.

­ Output:

ộ ả ỷ M t  nh sau khi thu  vân, F’.

ể ả Khoá đ  gi i mã K.

3.3.2.Quá trình Watermarking

ộ ả ẽ ượ ỗ ố M t  nh có kích m x n s  đ c chia thành (m x n)/64 kh i 8 x 8, m i bit s ẽ

ố ấ ỳ ế ấ ộ ố ọ ổ ộ ố ượ đ c gi u trong m t kh i. Ch n m t kh i b t k  B và bi n đ i DCT kh i đó thu

ệ ố ở ị ề ầ ố ở ữ ủ ấ ỳ ọ ố ượ đ c B’. Ch n hai h  s v  trí b t k  trong mi n t n s gi a c a kh i DCT,

ả ử gi s  đó là b’(i,j) và b’(p,q). Ta tính:

d = || b’(i,j) ­ |b’(p,q)|| mod a

ộ ố ả ộ ố ươ Trong đó a là m t tham s  tho  mãn: a= 2(2t + 1), t là m t s  nguyên d ng.

ẽ ượ ề ệ ­ Bit Si s  đ ả c nhúng sao cho tho  mãn đi u ki n :

i =1 thì m t trong hai h  s  DCT b’(i,j) ho c b’(p,q) có tr

ế ệ ố ặ ộ + N u d<2t+1 mà  S ị

ệ ố ớ ơ ẽ ị ứ ổ ể tuy t đ i l n h n s  b  thay đ i đ  d>= 2t+1 theo công th c sau:

18

ồ Ử Ả ệ Ngành công ngh  thông tin

Đ  án môn: X  LÝ  NH                 max(|b’(i,j)| , |b’(p,q)|) + (INT(0.75*a)­ d)

ệ ố ớ ệ ố ớ ọ ị ơ   V i hàm max (|b’(i,j)| , |b’(p,q)|) là hàm ch n ra h  s  có tr  tuy t đ i l n h n,

ọ ẽ ượ ộ ộ ượ ặ ệ ố ượ h  s  đ c ch n s  đ c c ng thêm m t l ng là (INT(0.75*a)  ­ d) ho c cũng có

ể ế ệ ố ứ ổ ộ th  bi n đ i m t trong hai h  s  theo công th c:

min(|b’(i,j)| , |b’(p,q)|) ­ (INT(0.75*a) + d)

ệ ố ệ ố ớ ọ ị ỏ ơ   V i hàm min(|b’(i,j)| , |b’(p,q)|) là hàm ch n ra h  s  có tr  tuy t đ i nh  h n,

ẽ ị ừ ọ ộ ượ ệ ố ượ h  s  đ c ch n s  b  tr đi m t l ng là (INT(0.75*a) + d) INT() là hàm làm

ộ ố ự ủ ầ ấ l yph n nguyên c a m t s  th c.

ươ ự ế ệ ố ộ + T ng t , n u d>= 2t+1 mà S ặ   i = 0 thì m t trong hai h  s  DCT b’(i,j) ho c

ệ ố ớ ơ ẽ ượ ị ổ ể ư ả b’(p,q) có tr  tuy t đ i l n h n s  đ c thay đ i đ  tho  mãn d<2t+1 nh  sau:

max(|b’(i,j)| , |b’(p,q)|) – (d­ (INT(0.75*a)))

ệ ố ớ ệ ố ị ọ hàm  max(|b’(i,j)| , |b’(p,q)|) là hàm ch n ra h  s  có tr  tuy t đ i l n, h  s  đ ệ ố ượ   c

ẽ ị ừ ọ ộ ượ ể ế ổ ch n s  b  tr đi m t l ộ   ặ ng là (d­ (INT(0.75*a)) ho c cũng có th  bi n đ i m t

ệ ố ứ trong hai h  s  theo công th c:

min(|b’(i,j)| , |b’(p,q)|) + (INT(0.75*a)­ d)

ệ ố ỏ ơ ệ ố ọ ị hàm min(|b’(i,j)| , |b’(p,q)|) là hàm ch n ra h  s  có tr  tuy t đ i nh  h n, h  s ệ ố

ọ ẽ ượ ộ ộ ượ ợ đu c ch n s  đ c c ng thêm m t l ng là (INT(1.25*a)­d)

19

Ử Ả ồ ệ Đ  án môn: X  LÝ  NH Ngành công ngh  thông tin

ơ ồ

Hình 3.1.S  đ  nhúng th y vân

ả ­ Quá trình gi i nhúng:

ệ ố ủ ế ố ọ ổ ị Đ c vào kh i DCT đã nhúng th y vân và v  trí hai h  s  đã bi n đ i, sau đó

tính:

ớ d=||b’(i,j)|­|b’(p,q)|| mod a         v i (a=2(2t+1))

i =1

ế N u d>=2t+1 thì S

i =0

ế N u d<2t+1 thì S

ả ượ ả ư Quá trình gi i mã đ c mô t nh  sau:

20

Ử Ả ồ ệ Đ  án môn: X  LÝ  NH Ngành công ngh  thông tin

ơ ồ Hình 3.2.S  đ  quá trình gi

i mã

ắ ủ ứ ậ ­ Ch ng minh tính đúng đ n c a thu t toán:

ườ ợ Xét các tr ng h p sau đây:

ườ ế ợ + Hai tr ng h p n u d< 2t+1 v i S ớ i = 0 và d>=2t+1 v i Sớ i =1 thì s  ẽ

ệ ố ủ ế ổ ố ổ ả   không thay đ i gì h  s  c a kh i DCT, và vì DCT là phép bi n đ i hoàn toàn đ o

ượ ả ượ ế ả ng c nên khi gi i mã thì ta cũng thu đ c k t qu  chính xác.

i  = 1Ta bi n đ i m t trong hai h  s  b’(i,j) và

ườ ợ ệ ố ế ộ ổ + Tr ng h p d<2t+1 và S

ư b’(p,q) nh  sau:

max(|b’(i,j)| , |b’(p,q)|) + (INT(0.75*a)­ d)

ớ ị Khi đó giá tr  d m i là :

d’ = (||b’(i,j)| ­|b’(p,q)| |+ (INT(0.75*a)­ d)) mod a

d’ = (|b’(i,j)| ­ |b’(p,q)|| mod a)+ (INT(0.75*a)mod a)­(d mod a)

d’ = d+INT(0.75*a)­d = INT(0.75*a)> 0.5*a=2t+1(dfcm)

i = 0 Ta bi n đ i m t trong hai h  s  DCT  b’(i,j)

ườ ợ ệ ố ế ộ ổ + Tr ng h p d>=2t+1 và S

ư và b’(p,q) nh  sau:

21

Ử Ả ệ Ngành công ngh  thông tin

ồ  Đ  án môn: X  LÝ  NH max(|b’(i,j)| , |b’(p,q)|) ­ (d­INT(0.25*a))

ớ ị Khi đó giá tr  d m i là :

d’ = (||b’(i,j)| ­|b’(p,q)| |­ (d­INT(0.25*a)) mod a

d’ = (|b’(i,j)| ­ |b’(p,q)|| mod a)+ (INT(0.25*a)mod a)­(d mod a)

d’ = d­d + 0.25*a= 0.75*a)> 0.5*a=2t+1(dfcm)

ự ặ ệ   3.4. Cài đ t và th c nghi m

* Cài đ tặ

ữ ặ ườ ạ ả ­ Ngôn ng  cài đ t, môi tr ng so n th o Microsoft Visual Studio.

ươ ượ ữ ậ ự ệ ạ ­ Ch y ch ng trình đ c th c hi n trên ngôn ng  l p trình C#.

ự ệ * Th c nghi m

ệ ủ ươ Giao di n c a ch ng trình:

ươ

ệ Hình 3.3.Giao di n chính c a ch

ng trình

ướ ữ ầ ầ ấ ế Tr ậ c khi gi u tin: yêu c u nh p nh ng thông tin c n thi t

ọ ả ố ừ ệ ả ẵ ­  Ch n  nh g c .bmp t t p  nh có s n.

ạ ấ ả ọ ố ­  Ch n văn b n mu n gi u tin (d ng text).

ậ ẩ ậ ­  Nh p m t kh u khóa.

ể ươ ự ệ ấ ọ ế ấ Sau đó ch n “Th c hi n gi u tin” đ  ch ng trình ti n hành gi u tin.

22

Ử Ả ồ ệ Đ  án môn: X  LÝ  NH Ngành công ngh  thông tin

ệ Hình 3.4.Giao di n sau khi gi u tin

ự ẽ ệ ầ ấ ồ Sau khi th c hi n gi u tin thành công, đ u ra s  bao g m:

ấ ­  Thông báo “Gi u tin thành công!”.

­  Khóa.

Ả ấ ­   nh đã gi u tin.

ụ ả ầ ả ậ ả ớ ­  Nh p tên  nh m i đã mang tin vào m c “Tên  nh ra” (tên  nh có ph n m ở

ộ r ng).

ể ư ạ ọ Ẩ ­  Sau đó ch n “ n” đ  l u l i.

ự ữ ể ế ệ ề ấ ấ N u th c hi n gi u không thành công thì có th  do nh ng v n đ  sau:

ế ữ ệ ệ ầ ư ấ ả ầ ậ ­  Nh p thi u d  li u đ u vào nh : Tên  nh vào, thông đi p c n gi u. Khi đó

ươ ể ườ ử ụ ụ ể ẽ ắ ch ng trình s   thông báo đ  ng i s  d ng có th  kh c ph c.

* Quy trình tách tin

23

Ử Ả ồ ệ Đ  án môn: X  LÝ  NH Ngành công ngh  thông tin

ướ

Hình 3.5.Giao di n tr

c khi tách tin

ướ ể ấ ự ệ ả ượ Tr c khi th c hi n tách  nh đã mang tin đ   l y đ ậ   ệ c  thông đi p bí m t

ữ ệ ầ ậ ữ yêu c u nh p nh ng d  li u sau:

ọ ả ầ ừ ị ư ướ ­ Ch n  nh đã mang tin c n tách t v  trí đã l u tr c đó.

ậ ả ầ ấ ­ Nh p khóa thu đ ượ ừ ế c t k t qu  đ u ra trong quá trình gi u.

ể ế ỏ ả ự ệ ọ Ch n “Th c hi n” đ  ti n hành tách tin kh i  nh.

ệ Hình 3.6.Giao di n sau khi tách tin

ự ủ ệ ầ ươ ồ Sau khi th c hi n tách tin thành công, đ u ra c a ch ẽ ng trình s  bao g m:

24

Ử Ả ồ ệ Đ  án môn: X  LÝ  NH

ậ ướ ệ ộ ấ Ngành công ngh  thông tin ả ­  N i dung thông đi p bí m t tr c khi gi u vào  nh.

Ả ệ ậ ­   nh sau khi đã tách thông đi p bí m t.

ữ ế ể ỗ N u tách tin không thành công thì có th  do nh ng l i sau:

ọ ả ­  Do ch n sai  nh đã mang tin.

ậ ­  Do nh p sai khóa.

ể ạ ữ ể ượ ế ả Khi đó ph i ki m tra l i nh ng lý do trên đ  thu đ ả c k t qu  đúng.

25

Ử Ả ồ ệ Đ  án môn: X  LÝ  NH Ngành công ngh  thông tin

K T LU N

ộ ộ ỉ ệ ớ ế ệ ậ ấ ả Hi n nay gi u thông tin trong  nh là m t b  ph n chi m t  l ấ  l n nh t trong

ươ ệ ố ụ ứ ấ ươ ở ượ các ch ng trình  ng d ng h  th ng gi u tin trong đa ph ệ ng ti n b i l ng thông

ượ ổ ằ ấ ớ ả ấ ả tin đ ơ ữ c trao đ i b ng  nh là r t l n và h n n a gi u thông tin trong  nh cũng đóng

ế ứ ụ ứ ệ ế ả ầ ọ vai trò h t s c quan tr ng trong h u h t các   ng d ng b o v   an toàn thông tin.

ề ế ậ ượ ự ấ Chính vì th  mà v n đ  này nh n đ ấ ớ ủ c s  quan tâm r t l n c a các cá nhân,

ườ ạ ọ ế ớ ứ ề ồ ổ t ứ  ch c, tr ệ ng đ i h c và nhi u vi n nghiên c u trên th  gi i. Trong đ  án này

ề ỹ ủ ả ế ể ề ậ ấ ổ tìm hi u v  k  thu t gi u tin trên mi n bi n đ i DCT c a  nh.

ứ ượ ờ ữ ề ồ Trong th i gian làm đ  án em đã nghiên c u đ ấ c nh ng v n đ  sau:

ứ ổ ấ ậ ả ỹ ­  Nghiên c u t ng quan k  thu t gi u tin trong  nh.

ứ ấ ả ­  Nghiên c u c u trúc  nh Bitmap.

ủ ả ế ể ề ậ ấ ổ ỹ ­  Tìm hi u k  thu t gi u tin trên mi n bi n đ i DCT c a  nh.

ể ể ề ậ ấ ổ ỹ ươ ự ế K  thu t gi u tin trên mi n bi n đ i DCT có th  tri n khai t ng t ả    cho  nh

ứ ạ ệ ậ ả ặ ạ PNG,  nh JPG… Vi c cài đ t thu t toán không quá ph c t p, l ể   i cho phép tri n

ể ấ ượ ấ ượ ế ả ớ ơ khai đ  gi u l ữ ng thông tin khá l n. H n n a, k t qu  đánh giá ch t l ả   ng  nh

ậ ấ ộ ỹ ậ ấ sau khi gi u tin cho th y k  thu t trên có đ  tin c y cao.

26

Ử Ả ồ ệ Đ  án môn: X  LÝ  NH Ngành công ngh  thông tin

TÀI LI U THAM KH O

ủ ị ạ ậ ấ Gi u thông tin trong  nh [1]. Vũ Th  Chung Th y. 2004 . Lu n văn th c sĩ “ ả ”.

ề ạ ậ ậ ằ ả ỹ ậ   B o m t b ng các k  thu t ọ [2]. Đinh Ng c Tri u. 2004 . Lu n văn th c sĩ “

ấ mã hóa và gi u tin ”.

ế ậ ị An toàn d  li u [3]. Tr nh Nh t Ti n. Giáo trình “ ữ ệ ”.

ọ ậ ướ ẫ ớ ấ ả ậ ố [4]. H ng d n h c l p trình v i C# . T p 1,2,3: Nhà Xu t B n Th ng Kê.

ươ ử ễ ạ [5]. L ng M nh Bá, Nguy n Thanh Th y ả   ủ . Giáo trình “Nh p môn x  lý  nh ậ

ọ ỹ ậ s ”ố . NXB Khoa h c và k  thu t.

27