fastMapper 計算流程

2021-10-06 15:38:05 字數 975 閱讀 2225

下面的說明都是以二維畫素圖為例,svg向量圖會有不同;我再寫一篇文章討論向量的情況

將會場中的坐位清空

當會場中還有坐位時,選取乙個最有可能被坐的坐位安排最想坐此坐位的人,此時會場中的空坐減一

知道會場中沒有空坐位,計算完成,得到會場中所有人的坐位分布情況

最重要是如何選取乙個最有可能被坐的坐位和安排最想坐此坐位的人

採用最小熵的方式進行計算

單獨一篇文章寫這個,先放一張圖

讀取輸入的二維影象,得到含uint_8型別的二維矩陣

處理二維矩陣,得到乙個碎片矩陣,並且得到碎片的出現頻率

對於所有碎片的所有方向的所有碎片,判斷他們在該方向上的相交畫素是否全等,如全等,就加入propagator

進行計算

進行觀察,取位置的最小熵的位置,如果取不到,這返回success的狀態碼,如取到,則進行如下的觀察

依據影象中的最小熵的位置,按照該位置碎片現有頻率,確定該位置的乙個碎片

標識該位置已經計算,對於該位置的其它碎片,將{位置id,碎片id}加入傳播佇列,更新對應的熵

進行傳播

如果傳播佇列不為空,取傳播佇列的top元素{位置id,碎片id},作為當前傳播元素,佇列頂端出棧

對於傳播元素的所有方向進行計算,記對應方向的為計算元素 {該方向的位置id,碎片id}

如果計算元素無效,即陣列越界,跳過(忽略影象邊界外的部分)

如果計算元素有效,減少一次該碎片此方向上的碎片可能數量,如果此碎片此方向上的可能出現的數量為0,則ban掉此方向,並更新對應的熵

狀態碼為success,計算完成;狀態為continue,接著算

計算完,輸出影象

計算機啟動流程

系統啟動流程 我們幾乎每天都要開啟電源啟動機器,面對螢幕上出現的一幅幅啟動畫面,我們一點兒也不會感到陌生,但是,計算機在顯示這些啟動畫面時都做了些什麼工作呢?開啟計算機機電源後到計算機準備接受你發出的命令之間計算機所執行的過程稱為引導 boot 過程。我們知道,當關閉電源後,ram的資料將丟失,因此...

計算機啟動流程

啟動 英文是boot,其本意是靴子的意思,這裡boot是bootstrap 鞋帶 的縮寫,來自諺語 pull oneself up by one s bootstraps 譯為 拽著鞋帶把自己拉起來 最早的時候,工程師們用它來比喻計算機啟動的矛盾過程 必須先執行程式,然後計算機才能啟動,但是計算機不...

雲計算HDFS的讀流程和寫流程

雲計算hdfs的讀流程和寫流程。1 寫流程 如上 client表示客戶端,namenode為主,datanode為從,要儲存的資料為data 1 客戶端向namenode發起請求,需要儲存資料data 2 因為namenode中是記錄了所有datanode的相關資訊的,而資料最終要儲存的地方就是da...