intTypePromotion=3

Xử lý ảnh màu part 1

Chia sẻ: Asg Ahsva | Ngày: | Loại File: PDF | Số trang:10

0
229
lượt xem
88
download

Xử lý ảnh màu part 1

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Xử lý ảnh màu 11.1 Chỉ dẫn Cần nhấn mạnh rằng trong các chương trước chúng ta xử lý trực tiếp ảnh đen trắng (ảnh có mức xám). Bây giờ chúng ta sẽ quan tâm đến xử lý các ảnh màu. Bây giờ, chúng ta sẽ bắt đầu xem xét các cơ sở của màu sắc, sau đó chúng ta đề cập đến các kỹ thuật áp dụng trong xử lý ảnh màu. Chúng tôi sẽ đề cập đến bộ lọc 2-D cho ảnh màu, và trình bày trình tự xử lý ảnh màu dựa trên trình tự xử lý...

Chủ đề:
Lưu

Nội dung Text: Xử lý ảnh màu part 1

  1. Ch­¬ng 11 Xö lý ¶nh mµu 11.1 ChØ dÉn CÇn nhÊn m¹nh r»ng trong c¸c ch­¬ng tr­íc chóng ta xö lý trùc tiÕp ¶nh ®en tr¾ng (¶nh cã møc x¸m). B©y giê chóng ta sÏ quan t©m ®Õn xö lý c¸c ¶nh mµu. B©y giê, chóng ta sÏ b¾t ®Çu xem xÐt c¸c c¬ së cña mµu s¾c, sau ®ã chóng ta ®Ò cËp ®Õn c¸c kü thuËt ¸p dông trong xö lý ¶nh mµu. Chóng t«i sÏ ®Ò cËp ®Õn bé läc 2-D cho ¶nh mµu, vµ tr×nh bµy tr×nh tù xö lý ¶nh mµu dùa trªn tr×nh tù xö lý ¶nh ®en tr¾ng. Chóng t«i còng sÏ ph¸t triÓn mét kü thuËt läc ¶nh mµu cã lùa chän. §iÒu nµy cho phÐp chóng ta ®iÒu chØnh ®­îc mét s¾c mµu riªng biÖt (tint), vÝ dô nh­ t¨ng s¾c mµu nµy lªn mµ kh«ng lµm thay ®æi c¸c s¾c mµu cßn l¹i trªn ¶nh. 11.2 C¬ së cña mµu s¾c ¸nh s¸ng lµ mét d¹ng cña n¨ng l­îng sãng ®iÖn tõ cã b­íc sãng vµo 400 m (millimicron) cho ¸nh s¸ng tÝm vµ vµo kho¶ng 700 kho¶ng tõ m cho ¸nh s¸ng ®á (h×nh 11.1). TÊt c¶ c¸c b­íc sãng nµy ®­îc c¶m nhËn bëi m¾t ng­êi nh­ lµ mét s¾c mµu. TÊt c¶ c¸c s¾c mµu nµy n»m trong ¸nh s¸ng tr¾ng cña mÆt trêi, víi n¨ng l­îng n»m trong kho¶ng tõ hång ngo¹i ®Õn cùc tÝm. Mµu s¾c cña mét vËt thÓ lµ mét hµm cña c¸c b­íc sãng kh«ng bÞ hÊp thô ph¶n chiÕu tõ vËt thÓ. §ã lµ lý do t¹i sao mµ mét vËt thÓ cã c¸c mµu s¾c kh¸c nhau phô thuéc vµo ¸nh s¸ng mµ nã ®­îc quan s¸t. Mét vËt thÓ khi quan s¸t d­íi ¸nh s¸ng mÆt trêi sÏ cã mµu kh¸c khi nã ®­îc quan s¸t d­íi ¸nh s¸ng ®Ìn ®iÖn. PhÇn lín kiÕn thøc c¬ së cho hiÓu biÕt cña chóng ta vÒ mµu s¾c dùa trªn t×m tßi cña Isaac Newton vµ häc thuyÕt quang häc cña «ng. Newton kÕt luËn r»ng c¶m gi¸c cña chóng ta vÒ mµu s¾c lµ do t¸c ®éng sù ph¶n x¹ cã chän läc vÒ b­íc sãng c¸c tia s¸ng tíi. ¤ng ta cho r»ng mµu s¾c vËt thÓ cã nguyªn nh©n b¾t nguån tõ ph¶n x¹ b­íc sãng chän läc cña truyÒn ®¹t c¸c tia s¸ng xuÊt ph¸t tõ vËt thÓ. Newton ®· tr×nh bµy mét hçn hîp cña hai mµu cã phæ liªn tiÕp cho ta mét mµu phæ trung gian, nh­ng hçn hîp cña hai mµu cã phæ xa nhau ®á vµ lam cho ta mµu ®á tÝa, mét mµu kh«ng phæ. ¤ng ta còng giíi thiÖu mét lo¹t mµu mµ khi tæng hîp víi nhau cho mµu tr¾ng. ¤ng gäi c¸c mµu nµy lµ c¸c mµu chÝnh, bao gåm 227
  2. b¶y mµu: ®á, da cam, vµng, lôc, lam, chµm, tÝm, vµ ®­îc dïng ®Ó tÝnh c¸c mµu cã b­íc sãng kh¸c nhau. Thùc tÕ, cuèi cïng ng­êi ta ®· kh¸m ph¸ ra r»ng bÊt kú mµu nµo còng ®­îc t¹o ra bëi mét tû lÖ thÝch hîp cña ba mµu cã phæ riªng biÖt, mµ bÊt kú mµu nµo trong sè ba mµu nµy còng kh«ng thÓ t¹o ra b»ng tæng hîp cña hai mµu cßn l¹i. Ba mµu nµy gäi lµ ba mµu riªng (mµu chÝnh), ®­îc kÕt hîp víi nhau khi tæng hîp ¸nh s¸ng mµu, ®­îc t¸ch ra khi ph©n tÝch thµnh c¸c mµu thµnh phÇn, nh­ giíi thiÖu trong h×nh 11.2. Trong h×nh 11.2a, hÖ thèng tæng hîp ¸nh s¸ng ®­îc giíi thiÖu víi c¸c mµu riªng hay dïng nhÊt: ®á, lôc, lam. Céng mµu ®á vµ mµu lôc kÕt qu¶ cho ta mµu vµng. Céng ba mµu ®á, lôc, lam theo tû lÖ thÝch hîp cho ta mµu tr¾ng. Hai mµu ®­îc bæ sung, khi trén víi tû lÖ thÝch hîp, cho mµu tr¾ng. Mµu ®á t­¬i, vÝ dô, khi trén víi tû lÖ bï thªm vµo cña mµu lôc, cho ta mµu tr¾ng, nh­ giíi thiÖu trong tam gi¸c mµu ë h×nh 11.2a. V× vËy, mµu ®á t­¬i lµ mµu bï cña mµu lôc. C¸c ph©n tÝch riªng cho c¸c mµu nhuém thµnh phÇn lµ phÇn bï cña c¸c mµu tæng hîp cña ¸nh s¸ng (h×nh 11.2b). C¸c mµu riªng ph©n tÝch khi trén tû lÖ cho kÕt qu¶ lµ mµu ®en. HÇu hÕt c¸c mµu ®Òu dùa trªn hai tam gi¸c giíi thiÖu trong h×nh 11.2. Tia nh×n thÊy Tia vò trô Tia x UV Tia  Sãng radio IR SHF UHF VHF SW MW LW 1 1 1 1 1 1 Ao m mm m km  Da cam 500 Chµm 600 V µng Lam 400 TÝm Lôc 700 § á H×nh 11.1 D¶i sãng cña c¸c ¸nh s¸ng nh×n thÊy ®­îc. §á t­¬i Lôc §á Lam Lôc lam Vµng §en Tr¾ng Vµng §á Lam Lôc lam Lôc §á t­¬i 228 (b) (a)
  3. H×nh 11.2 Tæng hîp mµu theo ph­¬ng ph¸p céng vµ trõ. §Ó x¸c ®Þnh mét ¸nh s¸ng mµu th× c¸c yÕu tè sau ®©y cÇn ®Ò cËp ®Õn : §é s¸ng hay chãi. Nã lµ tæng hîp cña ¸nh s¸ng nhËn ®­îc bëi m¾t kh«ng kÓ tíi mµu s¾c. Nã n»m trong kho¶ng tõ lê mê tèi ®Õn rÊt s¸ng hoÆc chãi m¾t . S¾c mµu. ChÝnh lµ mµu cã phæ tréi h¬n trong ¸nh s¸ng. B·o hoµ mµu. Nã t¹o ra ®é tinh khiÕt phæ cña mµu trong ¸nh s¸ng. Cho mét hçn hîp cña mµu vµ ®en tr¾ng, ®é b·o hoµ mµu ®­îc t¨ng thªm bëi t¨ng cña tæng c¸c s¾c mµu. Nh÷ng tÝnh chÊt nµy cã thÓ m« t¶ b»ng s¬ ®å nh­ trong h×nh 11.3. Cã t¸m tÝnh chÊt c¬ b¶n quyÕt ®Þnh hçn hîp cña ba mµu: 1. Mét ®iÓm mµu tæng hîp th× ®éc lËp ®èi víi ®é s¸ng trªn mét ph¹m vi réng. 2. §é s¸ng cña mét hçn hîp c¸c mµu lµ tæng cña c¸c ®é s¸ng riªng lÎ. 3. BÊt kú mét mµu nµo còng ®­îc t¹o ra bëi mét hçn hîp kh«ng nhiÒu h¬n ba mµu thµnh phÇn. 4. C¸c mµu thµnh phÇn kh«ng thÓ nhËn ra ®­îc b»ng m¾t. 5. Mét ®iÓm mµu cã thÓ biÓu diÔn d­íi d¹ng biÓu thøc C = R(R) + G(G) + B(B) Cã nghÜa lµ R lµ ®¬n vÞ cña (R), G lµ ®¬n vÞ cña (G), B lµ ®¬n vÞ cña (B), khi tÝnh tæng t¹o ra mét ®iÓm víi mµu C. 6. C¸c mµu ®­îc kÕt hîp theo luËt céng. Gi¶ sö C1 kÕt hîp víi C2 kÕt hîp C3 kÕt hîp C4 , th× C1 + C3 kÕt hîp C2 + C4 . Quy t¾c nµy ®­îc gäi lµ luËt Grassman. 7. C¸c mµu kÕt hîp tu©n theo luËt trõ. 8. C¸c mµu kÕt hîp tu©n theo luËt b¾c cÇu. NÕu C1 kÕt hîp C2 vµ C2 kÕt hîp C3 th× C1 kÕt hîp víi C3. 229
  4. Giíi h¹n cña c¶m gi¸c S¸ng nhÊt Lam Lôc B·o hoµ TÝa Mµu s¾c §á Vµng Tèi nhÊt H×nh 11.3 Thuéc tÝnh cña mµu. 11.2.1 NhËn biÕt mµu s¾c M¾t ng­êi cã hai bé phËn c¶m nhËn ¶nh: tÕ bµo nãn vµ tÕ bµo gËy. Chóng n»m trªn mµng trong cïng cña m¾t, gäi lµ vâng m¹c, vµ chóng c¶m nhËn vËt thÓ qua ¶nh cña vËt thÓ ®ã trªn vâng m¹c. Trong toµn bé m¾t th× c¸c tÕ bµo nãn cã vµo kho¶ng s¸u ®Õn b¶y triÖu. Chóng n»m tËp trung ë vÞ trÝ trung t©m cña vâng m¹c gäi lµ hè vâng m¹c, vµ cã ®é nh¹y c¶m cao ®èi víi mµu s¾c. Con ng­êi së dÜ cã thÓ ph©n biÖt ®­îc c¸c chi tiÕt lµ v× c¸c tÕ bµo nãn nµy ®­îc nèi víi c¸c d©y thÇn kinh ë phÝa cuèi. ¶nh thu ®­îc tõ c¸c tÕ bµo nãn nµy gäi lµ c¸c h×nh ¶nh ®é s¸ng. Sè tÕ bµo gËy th× rÊt lín, vµo kho¶ng tõ 75 cho ®Õn 100 triÖu vµ chóng ®­îc ph©n bè ®Òu kh¾p bÒ mÆt vâng m¹c. Sù ph©n bè réng cïng víi thùc tÕ lµ tÕ bµo gËy ®Òu ®­îc nèi mét d©y thÇn kinh riªng t¹o ra kÕt qu¶ lµ sù tæng hîp c¸c chi tiÕt bëi bé phËn c¶m nhËn nµy. TÕ bµo gËy cung cÊp cho ta mét h×nh ¶nh toµn bé cña vËt thÓ kh«ng bao gåm c¸c chi tiÕt vÒ mµu s¾c vµ ®é s¸ng. Trong ¸nh s¸ng mê th× chØ cã tÕ bµo gËy bÞ kÝch thÝch vµ vËt thÓ hiÖn lªn nh­ mét ¶nh kh«ng cã mµu s¾c. §Æc tÝnh nµy gäi lµ kh¶ n¨ng thÝch øng nh×n tèi. 230
  5. Lý do mµ con ng­êi cã thÓ ph©n biÖt ®­îc mµu s¾c th× hiÖn nay vÉn ch­a ®­îc lµm râ rµng. Mét gi¶ thiÕt lµ m¾t con ng­êi cã ba lo¹i tÕ bµo nãn, mçi lo¹i cho c¶m øng víi mét lo¹i mµu s¾c riªng lµ: ®á, lôc, lam. C¶m nhËn cña c¸c tÕ bµo nãn nµy ®­îc tr¶i ra trªn mét d¶i tÇn sè réng. Sau nhiÒu lÇn thö nghiÖm, c¸c mµu riªng ®· ®­îc chuÈn ho¸ bëi ñy ban CIE (Commission International d'Eclairage). C¸c mµu riªng theo tiªu chuÈn cña CIE bao gåm: mµu ®á (700 nm), mµu lôc (546,1 nm), mµu lam (435,8 nm). M¾t cña con ng­êi cho mét c¶m nhËn tèt nhÊt ®èi víi c¸c mµu riªng nµy so víi c¸c mµu cßn l¹i. C¶m nhËn mµu s¾c phô thuéc rÊt lín vµo ®é s¸ng. Mµu s¾c ®­îc c¶m nhËn tèt h¬n khi ®é s¸ng t¨ng lªn. Mét ¶nh tèt thùc sù th× sÏ cho mét c¶m nhËn cao h¬n vÒ ®é s¸ng so víi c¸c ¶nh cßn l¹i. Trong h×nh 11.4 ®­a ra ®­êng cong c¶m nhËn ®é s¸ng cña m¾t ng­êi ®èi víi c¸c ¸nh s¸ng cã b­íc sãng kh¸c nhau víi cïng mét møc n¨ng l­îng. M¾t ng­êi c¶m nhËn tèt nhÊt víi mµu lôc (b­íc sãng vµo kho¶ng 555 nm). Kh¶ n¨ng ph©n biÖt sù chuyÓn dÇn mµu sang c¸c mµu t­¬ng tù bÞ h¹n chÕ. ChÝnh v× h¹n chÕ nµy cña m¾t ng­êi mµ mét sè s¶n phÈm vÒ mµu ®­îc s¶n xuÊt trong thùc tÕ vÉn tho¶ m·n yªu cÇu, thËm chÝ ng­êi ta cã thÓ c¾t bít mét sè trong phæ mµu thùc. 11.2.2 BiÓu thøc mµu C¸c mµu riªng RGB: ®á (Red), lôc (Green), lam (Blue) lµ c¸c mµu riªng vËt lý ®­îc dïng trong c¸c thÝ nghiÖm vËt lý thùc sù. C¸c mµu riªng nµy kh«ng ph¶i lµ duy nhÊt vµ ta cã thÓ dïng c¸c mµu riªng kh¸c ®Ó thay thÕ. Vµo n¨m 1938, CIE ®· ®­a ra mét tËp c¸c mµu riªng kh«ng vËt lý, ký hiÖu lµ X, Y, Z. C¶i tiÕn chÝnh trong tËp mµu nµy lµ ®é s¸ng ®­îc ®­a ra trùc tiÕp nh­ lµ mét mµu riªng (Y). Y sÏ cho ta møc x¸m tõ ¶nh mµu. C¸c mµu riªng nµy ®­îc rót ra tõ c¸c mµu riªng vËt lý theo biÕn ®æi tuyÕn tÝnh cho bëi : X = 2.7690R + 1.7518G + 1.1300B Y = 1.0000R + 4.5907G + 0.0601B (11.1) Z = 0.0000R + 0.0565G + 5.5943B 231
  6. 1.0 Quan hÖ ®é s¸ng 0.8 0.6 0.4 0.2 0  (nm) 400 500 600 700 Vµng cam §á cam Lam TÝm Lôc §á H×nh 11.4 Sù c¶m nhËn c­êng ®é s¸ng cña m¾t ng­êi. C¸c biÓu thøc nµy lµ ®óng cho bÊt kú mµu nµo. Dùa trªn c¸c X, Y, Z s¬ ®å mµu CIE ®· ®­îc ph¸t triÓn. S¬ ®å nµy lµ mét kh«ng gian biÓu diÔn cho tÊt c¶ c¸c mµu cã phæ vµ tæng hîp cña chóng (H×nh 11.5). To¹ ®é mµu rót ra tõ : D=X+Y+Z X Y Z (11.2) x y z D D D x+y+z=1 y (G') 1.0 0.9 (G) . B­íc sãng 0.8 0.7 Lôc 0.6 Vµng 0.5 C¸c s¾c mµu kh¸c 0.4 Tr¾ng . Lôc lam §á . 0.3 (R) 0.2 §á t­¬i Lam 232 0.1 . (B) 0 x 0.1 0.3 0.5 0.7 0.8 0.2 0.4 0.6
  7. H×nh 11.5 BiÓu ®å mµu CIE. Trong s¬ ®å CIE mét lo¹t c¸c mµu cã phæ ®­îc cho däc theo ®­êng cong, c¸c gãc biÓu diÔn cho ba mµu riªng: ®á, lôc, vµ lam. GÇn trung t©m cña miÒn n»m trong tam gi¸c c¸c mµu trë nªn Ýt b·o hoµ h¬n, biÓu diÔn cho hçn hîp mµu. Mµu tr¾ng n»m t¹i ®iÓm trung t©m w víi to¹ ®é x = y = 0.3333. S¬ ®å mµu trªn chøa c¸c mµu víi cïng mét ®é s¸ng. NÕu ®é s¸ng cña mµu ®­îc cho bëi gi¸ trÞ cña z t¹i gãc bªn ph¶i cña mÆt ph¼ng x-y, tÊt c¶ c¸c mµu víi ®é s¸ng cña nã sÏ cã d¹ng nh­ h×nh 11.6. NÕu ®é s¸ng t¨ng lªn, s¬ ®å mµu sÏ trë nªn réng h¬n vµ sÏ cã nhiÒu chi tiÕt mµu tr«ng thÊy. T¹i c¸c møc ®é s¸ng thÊp, c¸c mµu trë nªn kkã ph©n biÖt vµ s¬ ®å sÏ thu hÑp l¹i mét ®iÓm, biÓu diÔn cho mµu ®en. 11.3 ¶nh mµu NÕu b¹n kiÓm tra mµn h×nh cña mét tivi khi nã ®­îc bËt lªn, b¹n sÏ chó ý thÊy t¹i tÊt c¶ c¸c ®iÓm ¶nh mµu ®­îc t¹o nªn b»ng ba vßng trßn nhá hoÆc tam gi¸c cã mµu ®á, lôc, lam. Sù thay ®æi ®é s¸ng cña ba phÇn tö mµu nµy t¹o nªn mµu s¾c cña ®iÓm ¶nh. Trong ¶nh sè th× c¸c ®iÓm ¶nh ®­îc biÓu diÔn b»ng mét sè tõ cã cïng mét sè bit cho c¸c mµu ®á, lôc, lam. VÝ dô nh­ ¶nh mµu ®­îc biÓu diÔn b»ng 16 bit th× ®Òu cã 5 bit ®Ó biÓu diÔn cho mçi mµu, bit cuèi cïng dïng cho mét vµi chøc n¨ng ®Æc biÖt nh­ ng¨n xÕp. Trong mét khung sè th× bit cuèi cïng th«ng th­êng ®Ó chØ ra ®iÓm ¶nh nµy ®­îc lÊy tõ bé ®Öm khung (bé nhí ng¨n xÕp) hay lµ tõ tÝn hiÖu video bªn ngoµi (ng¨n xÕp trùc tiÕp). Trong hÖ thèng 16 bÝt 32,768 mµu cã thÓ ®­îc biÓu diÔn víi ba mµu riªng cã kh¶ n¨ng thÓ hiÖn 32 tr¹ng th¸i. CÊu t¹o cña mét ®iÓm ¶nh cho trong b¶ng 11.1. G §é chãi W  Bãng x¸m  R §en B 233
  8. H×nh 11.6 H×nh chãp mµu. 11.4 TÝnh s¬ ®å mµu cho c¸c hÖ thèng mµu 15 bit vµ 8 bit §Ó lµm më réng hiÓu biÕt cña chóng ta vÒ hçn hîp mµu, chóng ta sÏ lµm mét ch­¬ng tr×nh tÝnh vµ thÓ hiÖn s¬ ®å mµu cho hÖ thèng 15 bit (5 bÝt cho mét mµu) vµ hÖ thèng mµu 8 bit (256 mµu). HÖ thèng 15 bit mµu mµ chóng ta sö dông lµ Professional Image Board (PIB) cña Atronics International, Inc. (ATI). VØ m¹ch nµy ®­îc thiÕt kÕ ®Ó thÓ hiÖn ¶nh cã kÝch th­íc 512  256 hoÆc lµ 512  512 ®iÓm, víi tÊt c¶ c¸c ®iÓm biÓu diÔn b»ng 16 bit. 16 bit nµy ®­îc chia nh­ trong b¶ng 11.1. VØ m¹ch VGA cã kh¶ n¨ng thÓ hiÖn 256 mµu víi tÊt c¶ c¸c mµu thÓ hiÖn b»ng 6 bit. Tæng sè mµu mµ vØ m¹ch VGA cã thÓ tÝnh ra lµ 218 = 262,144. Dï thÕ nµo ®i ch¨ng n÷a th× chØ cã 256 mµu ®­îc sö dông. Mét vØ m¹ch nµy t­¬ng ®­¬ng nh­ lµ thiÕt bÞ video mµu 8 bit. b¶ng 11.1 BiÓu diÔn cña ®iÓm ¶nh mµu 16 bit BÝt 0 ®Õn bÝt 4 Lam BÝt 5 ®Õn bÝt 9 Lôc BÝt 10 ®Õn bÝt 14 §á BÝt 15 Overlay VØ m¹ch ATI PIB ®­îc chia ra lµm hai m· nguån: mét b»ng Microsoft Assembly cho c¸c ch­¬ng tr×nh vµo ra c¬ b¶n, mét b»ng Microsoft C cho c¸c ch­¬ng tr×nh chÝnh (nh­ lÊy ra khung ¶nh hoÆc lµ söa l¹i mµu). MÆc dï b¹n cã thÓ ®­a ra phÇn lín c¸c ch­¬ng tr×nh trong ch­¬ng nµy mµ kh«ng cÇn vØ m¹ch l­u gi÷ khung mµu, nh­ng ®Ó lµm cho ®Çy ®ñ c«ng viÖc t«i khuyªn b¹n nªn sö dông mét vØ m¹ch cã chÕ ®é Ýt nhÊt lµ 512  256. Nã kh«ng qu¸ ®¾t, thËm chÝ nã rÎ h¬n mét sè vØ m¹ch ®en tr¾ng. T«i sÏ cung cÊp cho b¹n c¸c ch­¬ng tr×nh con dïng cho lo¹i vØ m¹ch nµy, nÕu b¹n cã mét lo¹i vØ m¹ch kh¸c th× kh«ng ph¶i lµ khã kh¨n l¾m ®Ó viÕt l¹i c¸c söa ®æi cho phï hîp. Ch­¬ng tr×nh mµ t«i ®­a ra trong ch­¬ng nµy ®­îc viÕt b»ng Turbo C. Nã sÏ ®ßi hái ph¶i cã mét thay ®æi nhá trªn m· nguån cung cÊp cho vØ m¹ch ATI, PIBTOOL.C vµ IMGIO.ASM. §Ó dÞch vµ liªn kÕt thµnh mét ch­¬ng tr×nh (tªn lµ CHROM.C) b¹n cã thÓ lµm 234
  9. ®iÒu nµy th«ng qua Project trªn menu lùa chän cña m«i tr­êng ph¸t triÓn kÕt hîp hoÆc lµ ®¸nh dßng lÖnh DOS : tcc chrom.c pibtool.c imgio.asm Tr­íc khi xö lý, b¹n sÏ cÇn viÕt mét file "custom.h" chøa mét lo¹t c¸c ch­¬ng tr×nh nguån sö dông trong hai ch­¬ng tr×nh IMGIO.ASM vµ PIBTOOL.C. Danh s¸ch cña "custom.h" ®­îc cung cÊp sau ch­¬ng tr×nh 11.1. §Æt "custom.h" n»m ë th­ môc con Turbo C. Ch­¬ng tr×nh cho vØ m¹ch PIB ®­îc viÕt cho kiÓu 512  256. C¸c b¹n còng cã thÓ dïng nã víi kiÓu 512  512 mµ kh«ng cÇn cã mét sù thay ®æi nµo. NÕu b¹n muèn sö dông ®Çy ®ñ kh¶ n¨ng cña kiÓu 512  512 th× b¹n cÇn mét sè thay ®æi nhá. NÕu kh¶ n¨ng tµi chÝnh kh«ng cho phÐp b¹n cã mét vØ m¹ch nh­ vËy, th× b¹n cã thÓ dïng vØ m¹ch VGA thay thÕ. B©y giê chóng ta sÏ quay l¹i víi s¬ ®å mµu CIE. M· nguån dïng trong ch­¬ng tr×nh 11.1 cho hiÖn lªn s¬ ®å mµu trªn mét monitor mµu dïng vØ m¹ch PIB. Ch­¬ng tr×nh 11.1 "CHROM.C".Displaying the chromaticity diagram. #include /* Program for displaying the chromaticity diagram using the ATI PIB board, 512x256 version. */ void main() { unsigned i,R,G,B; int xp,yp; float x,y,X,Y,Z,D; InitPIB(); /* Initials the PIB to the internal display mode.*/ SetInDispMode(); /* Sets PIB to the internal Sync display mode and also enables the direct memory access. */ SetScreen(0); /* Display page 0 512x256. */ FillPibRect(0,0,0,511,255,0); /* Clear screen. 235
  10. FillPibRect(color,xl,yl,x2,y2,mode); fills the rectangle area specified by the two corners (xl,yl) and (x2,y2) with color. mode=0 for set the pixel to the value specified. mode=1 for 'exclusive or' the pixel with the value specified. mode=2 for 'and' the pixel with the value specified.*/ for(i=1;i>5; R=(0x7C00 & i)>10; X=2.7690*R+1.7518*G+1.1300*B; Y=R+4.5907*G+0.0601*B; Z=0.0565*G+5.5943*B; D=X+Y+Z ; x=X/D; y=Y/D; xp=(int)(400.0*x+60.0+0.5); yp=(int)(200.0-y*200.0+0.5); PutPixel(&i,xp,yp,0); /* PutpixeI(*vaIue,x,y,mode) */ } } File include "custom.h" chøa c¸c mét lo¹t ch­¬ng tr×nh con cung cÊp bëi ATI. NÕu ch­a ®­îc cung cÊp bëi ATI b¹n cã thÓ tù viÕt lÊy c¸c ch­¬ng tr×nh nµy. LiÖt kª cho "custom.h" cung cÊp ë d­íi ®©y. "custom.h" void SetScreen(int); int CaptureFrame(void); void SetInDispMode(void); void SetExtDispMode(void); void SetLiveMode(void); void SetHue(int); void SetContrast(int); void SetSaturation(int); void Bright(int); void SetInterlace(int); 236

CÓ THỂ BẠN MUỐN DOWNLOAD

Đồng bộ tài khoản