2.2.2.2 Nh nd ng:
2.2.2.2.2 K im tra vùng tô
nh ngh a:
Vùng tô là ph n đ c gi i h n trong m t ơ trịn (các ơ trịn này có r t nhi u trên bài làm c a thí sinh). Tùy theo cách làm bài c a t ng thí sinh mà m i ơ trịn có
đ c tơ hay khơng. Cơng vi c ki m tra vùng tô là xét xem trong m t ơ trịn nào đó có đ c tơ đen hay không. Tùy theo quy đ nh c a ng i l p trình mà s ph n tr m
đ c tô đen trong vùng tơ là bao nhiêu thì ơ trịn đ c xem là đã tơ.
Hình 2-19: khi ch a đ c tơ
Hình 2-20: các d ng sau khi đã tô
Cách th c hi n:
Do vùng tô c n xét ch là m t vòng tròn nh trong nh bitmap, và khi xem xét m t nh bitmap thì nh đó ln là hình ch nh t. Cho nên đ u vào c a vùng tô c n ki m tra là m t hình vng (đ c l y ra t nh bài thi) có đ ng trịn n i ti p chính là ơ trịn đang xét.
Khi đó, ta có 2 cách đ ki m tra vùng tơ xem có đ c tơ hay ch a:
Ta s qt tịan b vùng nh vuông đ u vào t trái qua ph i và t trên xu ng d i, xét xem s pixel đen chi m bao nhiêu ph n tr m trong t ng s pixel c a vùng nh đ u vào. Theo quy đnh nh trong đ tài này, n u s pixel
đen này chi m h n 60%, thì vùng tơ đó đã đ c tơ đen, còn ng c l i là ch a đ c tô.
Cách ki m tra này đ chính xác khơng cao, vì xét c nh ng ph n n m ngồi vùng tơ. Tuy nhiên, do cài đ t d dàng và x lý ít ph c t p (ch quét m t l n và theo th t ), t c đ th c hi n nhanh h n nên đ c áp d ng trong
đ tài.
Cách th hai:
Ta s qt t tâm hình vng (cịn là tâm c a vịng trịn) d n lan ra
đ n c nh c a hình vng theo các đ ng trịn đ ng tâm là tâm hình vng. Ta s phân các vịng tròn thành 3 lo i:
X các vòng tròn nh bên trong (ta quy đnh là các vòng trịn có
đ ng kính b ng n a c nh hình vng tr xu ng) g i là T1.
X các vòng tròn l n bên trong (ta quy đnh là các vịng trịn có đu ng kính l n h n n a c nh hình vng đ n b ng c nh hình vng) g i là T2.
X các vịng trịn bên ngịai (có đ ng kính l n h n c c nh hình vng) g i là T3.
Trong m t đi u ki n t i u, vùng nh vng đ u vào s có vịng trịn c n xét tơ n i ti p v i nh vng đó. Nh ng trong th c t thì vịng trịn tơ trong vùng nh vng đ u vào s b l ch, do đó các vịng trịn nh T1 s có kh n ng n m trong vùng c n tô nhi u h n là T2, và các vịng trịn T2 l i có kh n ng nhi u h n T3. Do đó, pixel thu c vịng trịn T1 s góp ph n nhi u h n so v i các pixel thu c T2 vào vi c quy t đnh xem vùng tơ có đ c tô hay không. i u này c ng t ng t cho các pixel thu c vòng tròn T2 so v i T3. Vì v y, đ u tiên c a các pixel thu c các vòng tròn s đ c quy đ nh theo th t l n l t nh sau: T1, T2, T3.
Ta có cơng th c sau:
Giá tr c a vùng tô = ( T ng s pixel T1 đen * đ u tiên c a T1 ) + ( T ng s pixel T2 đen * đ u tiên c a T2 ) + ( T ng s
pixel T3 đen * đ u tiên T3 ) (1)
Nh v y, khi vùng tơ đ c tơ hồn tồn trong đi u ki n t i u (t c nh đ u vào hình vng ch a ơ trịn c n tơ n i ti p nh), ta có:
Giá tr cho th y vùng tơ đ c tơ hồn tồn = ( T ng s pixel T1 * đ u tiên c a T1 ) + ( T ng s pixel T2 * đ u tiên c a T2)
Do đó, ch g n đúng, ta đ a ra đ c thu t toán cho phép quy t đnh xem vùng tơ có đ c tơ hay khơng b ng cách:
• Tính giá tr vùng tơ áp d ng cơng th c (1).
• N u giá tr vùng tô > (60% * Giá tr vùng tơ đ c tơ hồn tồn) thì
o ơ trịn đã đ c tơ đen
• ng c l i
o ơ trịn ch a đ c tô.
Ph ng pháp này có đ chính xác cao h n trong các tr ng h p nh vng đ u vào có vùng tơ b l ch, tuy nhiên do cài đ t ph c t p, x lý tính tốn nhi u h n (ph i tính t tâm c a hình trịn r i lan d n sang xung quanh)
có th làm nh h ng đ n t c đ chung c a ch ng trình nên không đ c áp d ng cho đ tài.