在一段時間內使用微控制器

閱讀賓果球第一和第二次曝光的群體。

這使得該過程顯著較慢,現在我們不僅具有兩種曝光,而且在兩個曝光之間的虛擬幀時間中,以允許在照明變化之後允許CMOS傳感器的恢復和容納。這就是為什麼整個成像過程實際上需要100毫秒。

掃描圖像的分辨率為220×220像素,具有8位像素深度。模擬灰度圖像僅由六位組成,其中剩餘的兩個位用於監視器上的藍色和紅色表示,因為灰度實際上是Greenscale。這些額外像素用作處理步驟之間的特殊標誌像素,在單步模式下可見,如藍色和紅色區域。在計劃開發和調試期間,這[原來是非常有用的。

整個過程分為17個步驟,也可以在單步模式下進行開發和調試目的。步驟顯示在屏幕的左上角(見下文),以及右上角有1毫秒分辨率的秒錶的當前狀態。這樣,很容易按照執行時間遵循並優化每個步驟。

球位置和伸展

要準確定位球,計算Formulas CX =ΣCixai/Σai和Cy =ΣCiyai/ΣAI的X,Y坐標,其中CX,CY是X,Y坐標和A是每個像素的值。由於背景主要是黑色,在該步驟之前,CX,Cy將大致在球的中心。然後,整個幀緩衝器被稱為2D塊,使得質心在坐標x = 110,y = 110處,其位於幀的中心。該中心標有2×2紅色像素(位7),僅用於開發人員方便,因為許多情況下的處理固件忽略位6和7。

接下來,測量球直徑,計算用於不同直徑的周邊上的平均像素值。然後,背景(直徑外部的每個像素)被設置為“白色”,或者更具體地,更具體地,綠色(值0x3F),以便更好地隔離黑區域。在處理過程中,背景將設置為白色或黑色的幾次,每次需要選擇黑色(墨水)或白色(紙張)區域。

不可能完美地將球形變為平坦的表面,但如果圖像是非線性變形的,則可以改善形狀,如步驟3圖像。小型16位微控制器沒有算術協處理器,並且使用標準三角網站將消耗太多的處理器時間。這就是為什麼使用三角查找表,您可以在秒錶(最佳最佳藍色數字)上看到,在這種情況下,拉伸程序的執行時間僅為11毫秒。您還可以看出球的中心部分大多是不變的,並且邊緣是非線性拉伸的,使得球形變形被最小化。

在步驟4中,類似於Photoshop中的Unsharp掩碼功能,創建了一個新的模糊圖像。由於另一個全幀緩衝器的RAM空間沒有足夠的RAM空間,它在輔助圖像上執行,該輔助圖像被縮放到分辨率44×44。 unsharp掩模的功能非常重要,因為它保證了相對於“紙張”像素的更好地選擇“墨水”像素。選擇意味著“位7的設置”,它將導致VGA屏幕上的紅色區域。

現在在同一幀緩衝區中存在兩個圖像,灰度一(比特0-5)和二進制1(位7)。後者用於預處理步驟6,其中消除了小孔和划痕。所選圖像首先擴展和收縮,然後重複該過程隨著購買的操作反轉 – 這導致邊緣正在平穩圓形和無垃圾。

組件操縱

經過更多預處理步驟之後,發生了更多的主要業務。第一個被稱為“連接的組件”,其中選擇隔離區域,並且獲取每個孤立區域。這包括x和y尺寸,x和y中心坐標,選擇的像素數,以及距離框架中心的歐幾里德距離。這將有助於將每個組件作為數字,大圓圈,下劃線或背景進行分類。在此階段,如果數字包括一兩位數,則也會清楚。

此步驟需要大量處理時間,大約200毫秒。另一個問題是連接組件的標準算法需要相同大小的輔助幀緩衝器,因此我必須創建一個新的算法,該算法利用相同的幀緩衝區,以及用於短期坐標的小表。

此時,處理器很容易選擇最佳的識別候選人 – 它是距離球中心最小的歐幾里德距離的圓圈。截至此圓圈內的連接組件被考慮在內,還有其他一切都會曝光。

有問題的球是特殊的OCR球,下劃線數字,So可以測量旋轉角度。現在,圓的中心是已知的,程序旋轉虛擬“T”形式,該形式對應於下劃線形狀,在360°圓周圍的512步,計算它包含的許多“墨水”像素。最高額定計數決定了旋轉角度,然後將幀緩衝器的2D塊移動到圖像的底部最佳角(步驟12在最左側圖像上),並且執行旋轉,將位圖移動到相對角的旋轉幀緩衝區。由於對數查找表,這組操作只需要50毫秒。

每一步都會保持更好。使用不同顏色選擇數字,然後將一個數字移動到安全距離,然後將每個數字縮放到已知分辨率為30×46。

認出

正如這個讀者是我的第一個OCR項目,我天真地認為,識別過程將是解決的最艱難的部分。在每一步完全調試並逐一檢查後,我達到了第17次和最後一步。正如我已經指出的那樣,我的初步計劃是選擇一個神經網絡,但是我嘗試了一個簡單的算法並與之播放。我用幾個球評估它,你無法想像我看到它完美的工作有多震驚!最後,位圖已正確呈現為兩個ASCII編號。

算法非常簡單。每個數字的位圖實際上分為三個部分,首先水平地分為三個部分,然後垂直地劃分。然後在每個列或行中計算活動像素,並創建直方圖。還有一個添加的第7直方圖,其傾斜,以幫助更好地檢測位點4和7處的橫向線。

只需3毫秒來為每個數字構建七個直方圖,並將它們與預先記錄的表進行比較,計算暗示中斷錯誤的總和並對結果進行排序。要使開發和調試更容易,所有直方圖都繪製到屏幕上。

在比較結果進行分類後,我們將獲勝者獲得每個數字(在本案件8和5)中,但我們的工作並未完成,直到一個更多的事情發生。必須評分的讀數質量,因此控制器可以估計結果是否足夠可靠。

如果球上的數字只有一個數字,則每個數字(0 … 9)的錯誤表被排序,並將“獲獎者”與第二個(近代)進行比較。如果比率很高,這意味著識別成功。在我們的情況下,它是147%,這意味著第二額定候選人比最好的候選人更多的錯誤更多。例如,第一個有100個“錯誤單位”,第二個有247.這是一個很好的評級,雖然許多評級是北北300%。通常,高於80%的評級應該被認為足夠安全。

但如果有兩位數是怎麼辦?鏈條只有其最薄弱的聯繫,所以該計劃將忽略更成功的識別數字(比率較高),並使用較弱的一個來實現成功的最終決定。

控制器有兩種基本的操作模式。在快速模式下,只有一個讀數,只有在第一次讀數不足的情況下才會重複(在球旋轉之後)。在較慢(“安全”)模式中,有兩種​​讀數的結果應該匹配。

讀者在Eleks-M公司在貝爾格萊德評估,生產賭場設備。測試是用一個額外的靜止式攝像機進行,該攝像機自動記錄每個球讀數,然後是按字母順序排序圖像(除了識別的球號而包含的文件名)進行了按字母順序排序,並且最終檢查手動進行。

整個測試持續了240小時,除了讀者之外,這將有助於壓力測試賓果鼓風機的耐用性。 10天后讀出115,000次,只有一個錯誤的讀數(球37被讀為7),讀者設置為快速模式。在安全模式下測試將毫無意義,因為可能永遠不會發生錯誤。

機械概念

賓果球的物理路徑是c

Leave a Reply

Your email address will not be published.

Related Post

下載Moviebox 3.3無越獄,支持iPhone 6以及幾天后的6 plus下載Moviebox 3.3無越獄,支持iPhone 6以及幾天后的6 plus

,我們讓您了解Moviebox在iPhone,iPad以及運行iOS 8.2的iPod touch小工具上也可以訪問由於不再需要買入越獄才能起床和跑步。現在,庫存就緒版本已更新為3.3版,添加了許多功能,而Moviebox v3.3現在已經敲了一段時間了,這是第一次非jailbreakers能夠獲得在該行為中。休息後可以看到完整的細節。 Moviebox 3.1的無越獄小工具在本週早些時候深入了,但是版本3.2和3.3(兩者都在Cydia中都存在了一段時間 – 現在可以通過那些沒有利用小工具利用小工具的人來訪問taig,pangu或pp之類的人。 您可能想像,3.1版至版本3.3是一個重大的飛躍。跳躍,您將能夠從帶來iPhone 6以及iPhone 6的許多Moviebox 3.2.x發行版中獲得好處如您所見,Moviebox 3.3也使用了相當大的善良斑點。 例如,v3.3讓個人查明播放服務器,該播放服務器必須付費給您可能遇到的任何類型的揮之不起的播放問題,而一個錯誤觸發了從下載的電影中觸發丟失的圖片的錯誤也已經得到了照顧。 不過,這還不是所有普通的航行。正如發行版所指出的那樣,目前其中一台服務器的問題以及直到解決的時間都存在問題,您可能會出現某些電影的問題。顯然,正在完成工作,以確保即將進行維修,以及如果您在非jailbrebroken設備上運行3.1版,那麼現在是關於更新的時間。 哦,就像您感覺越獄並設置標準方式一樣,只要您運行PRE-OIS 8.1.3或iOS 8.2 BETAS 1或2,就可以走這條路。 您可以掌握Vshare的當前Moviebox更新。 您可能同樣喜歡檢查: Moviebox下載iOS 8.2發布,無需越獄 請務必檢查我們的iPhone應用程序畫廊以及iPad應用程序畫廊,以查看更多的iPhone,iPad和iPod Touch應用程序。 您可以在Twitter上遵守我們,在Google+上添加我們到您的圈子中,或者喜歡我們的Facebook頁面,以使自己了解Microsoft,Google,Apple以及Web的所有電流。

Hackaday獎品進入:DIY ARM科學計算器Hackaday獎品進入:DIY ARM科學計算器

黑客在他或她想要的事情時會做什麼,但是不能為此付出代價?當然,他們一起攻擊一個。或者,在[RamónCalvo]的情況下,他們若有所思地計劃和原型。 [RamónCalvo]期望一個科學計算器,但不能支付一個,所以他創造了自己和自己開發的。 [Ramón]開始使用Arduino,然而,首先升級到飛思卡爾的靈活性KL25Z進步板升級到使用MBED編程的ARM Cortex-M0 +編程。屏幕是電子組件DOGL-128 128×64像素LCD。 [ramón]在PCB上做了幾個迭代,從一個大型DIY購買的Arduino版本工作,到了當前,較小的臂芯片用手焊接SMD組件。之後,[Ramón]查看解析數學輸入所需的算法。他解決了分流園子算法,將輸入轉換為反向波蘭符號(RPN),這對軟件應用程序更容易使用。 [Ramón]有一定的功能,包括您的基本添加,減去,乘法以及劃分操作,平方根,第n個根以及指數,三角學,日誌以及log10,以及階乘(!)是待辦事項列表中的一些東西,例如低功耗以及圖形模式,以及系統中還有幾個錯誤,但是常規系統均已啟動和運行。 [Ramón]在他的Hackaday.io作業頁面上提出了原理圖以及KICAD數據,以及物資的費用。 我們在計算器類型中有一些Hackaday獎品入口,例如與Nixie Tubes以及模擬70年代HP計算器的獎金。 Hackadayprize2017贊助:

今天在玻璃和金色今天在玻璃和金色

簽名時簽名並不是它的時間。今天幾個乙烯基字母粘在一塊板玻璃上的任何類型的店面都有足夠的店面,有時候服務前的指示是藝術品,包括許多技能以及許多交易者創造。 [David Smith]是最後一次住在舊學校的登錄人員之一,以及他的創作和一個世紀以前的精美跡像一樣可愛。 方法[David]利用製作他的跡象與完成的產品優雅的不同。他將圖案化的凹槽切成玻璃,帶有金剛石或陶瓷的輪子以及彎曲形狀的玻璃在極大的窯中開發。 除了切割,塑造以及磨削玻璃,[大衛]同樣地繪製他的指示 – 反向背面,通過層構建他的風格層。他的一些款式中的非常非常第一層是金箔,這是一種堅韌的材料然而[大衛]開發了自己的葉子塗抹器,使任務更容易。 真正令人驚嘆的藝術作品,並且絕對比這些天塑料廢話更適當地扮演的任何塑料廢話更為複雜。