我們假設,我們正在使用複選框/空圈來掃描類似測試的文檔(用於簽名/打擊/滴答)。如果已檢查複選框/圓圈是否被選中/簽名/敲擊/勾選,那麼正確的方法是什麼?
如果我們強制測試用戶完全標記該區域,只要知道複選框/圓的位置並計算非白色像素的數量就足夠了(是嗎?),但是我們應該採用什麼方式來測試,勾選或檢查複選框/圓圈(X)?
這將成爲C#項目的一部分,因此代碼或甚至準備好.net/c/C++庫將不勝感激。測試掃描文檔上是否勾選複選框的正確方法是什麼?
回答
對於此答案的簡短而感到遺憾,但您可以在複選框內的區域上運行ocr系統。
如果它沒有返回,那麼你知道它沒有被檢查。
如果它返回一些東西,然後將它與可能性的大白名單進行比較,然後標記不確定性。
,你可以使用@丹建議,以及
是什麼讓這個更強大的不僅僅是取平均值就是你可以判斷,如果它不具有高確定性檢查錯誤處理。因爲我們正在尋找一種以最小方式可識別的標誌,我們知道如果沒有任何東西,那麼它絕對不會被檢查。所有你需要做的就是找到一個可以用作檢查的字符和標記的白名單(並且在盒子外面思考,ocr系統可以返回一個'a'來表示一個波形,但這是一個積極的迴應) 。並且爲了澄清,僅僅取平均值的問題是複選框中黑暗的增加會產生積極的結果,但情況並非總是如此。如果有人放了一個標記,然後抹去,你仍然會在盒子裏增加黑暗。
最後,我會補充說,現在有很多OCR系統非常先進。我懷疑你會找到一個能夠提供額外的訓練數據集的地方,這些訓練數據集可以比隨機字符更好地匹配你。
算法會去是這樣的:
- 找到每個複選框(我知道你已經有)
- 計算所有像素
- 的顏色的平均值。如果超過一定閾值時,它被標記,若跌破,則無人盯防
但是,你應該增加一些檢查:
- 是否超過閾值? - >讓人來檢查一下,學生可以先勾選一些內容,然後將其改爲另一個字段。
- 沒有高於閾值嗎? - >讓一個人確認沒有被檢查過。
我想這個答案的重要組成部分是:
如果該算法是不確定,它標誌了人工處理。
怎麼樣用不同的背景顏色的頁面?或者更糟的是頁面有漸變或圖像背景? – 2013-03-05 15:16:56
@DavidWork:不應該太難:獲取一個乾淨的工作表並計算每個複選框的平均值。從應該填寫的掃描測試的平均值中減去該值。我想這將給予更好的結果,因爲每一個非選中的複選框現在應該有一個值在0附近(掃描平均 - 原來的平均)= 0 + ERROR_MARGIN – 2013-03-05 15:18:58
@downvoter:請發表評論。 – 2013-03-05 16:12:58
大部分,提供複選框識別使用某種鍾分佈曲線的工作實際出發正在檢查一盒的可能性高性能產品:太多的「數據」,並有一個很好的機會用戶改變了主意,有潦草地寫出這個盒子;太少了,它可能是用戶在下面勾選一個方框而留下的「尾巴」,而不會在穿過下一個方框區域之前擡起筆。
我建議你應用額外的邏輯來處理被允許的多個箱子(例如,你擁有一輛汽車/你還擁有一輛自行車)以及只有一個箱子可以正確的情況(例如你是男性還是女性)。這應該有助於你的應用。濾除更明顯的錯誤。
- 1. 檢測複選框是否打勾?
- 2. 檢查是否勾選複選框
- 3. 測試複選框是否被選中
- 4. 使用勾選框掃描並閱讀文檔
- 5. 聽取複選框被選中/取消選中的正確方法是什麼?
- 6. 調諧(並掃描)ATSC頻道的正確方法是什麼?
- 7. 如何勾選其他部分的所有複選框,方法是勾選當前部分中的複選框?
- 8. 點擊描述時勾選複選框
- 9. 檢查複選框是否勾選並顯示文本跨度
- 10. 檢測一個複選框數組是否被Smarty 2打勾
- 11. 勾選複選框
- 12. 什麼是測試方法時使用mock的正確方法?
- 13. 檢查GridView中的複選框是否勾選
- 14. 檢測Windows是否運行ruby的正確方法是什麼?
- 15. C#複選框,只勾選框不是文字
- 16. 什麼方式可以在Gmail中勾選郵件複選框?
- 17. 描述RFID卡掃描動作的正確術語是什麼?
- 18. 在Symfony2中一次驗證多個複選框的正確方法是什麼?
- 19. 什麼是使用複選框在Rails中設置標誌的正確方法?
- 20. 有什麼方法可以確定它是否是測試(.NET)?
- 21. 如何檢查是否勾選複選框angular2
- 22. umbraco輪廓檢查是否勾選複選框
- 23. 如何知道是否勾選複選框?
- 24. 檢查PHP中是否至少勾選了1個複選框
- 25. 是否勾選複選框(在每個()循環中)?
- 26. 是否勾選=在HTML複選框中無效?
- 27. 如何知道是否勾選複選框
- 28. 使用Rails 3檢查複選框是否已勾選3
- 29. 檢查點擊是否不勾選複選框 - jQuery
- 30. 如何檢查用戶是否已勾選captcha複選框javascript
最可靠的方法來做到這一點很可能是用文字識別軟件,基於神經網絡的許多內容。 – anaximander 2013-03-05 15:37:49
@anaximander:我不認爲這是個好主意。這裏沒有可以識別的字符。我可以製作一個X,一個完整的圓圈,完全填充它,等等。 – 2013-03-05 16:13:40
有一些圖書館 - 但它們是商業的...是你的選擇嗎? – Yahia 2013-03-05 16:49:21