熱力圖疊加優化

問題:在以前的文章中,我實現了HeatMap熱力圖的效果,可是實際使用過程當中,尤爲是屢次疊加後,效果較爲極端化(如下圖),出現了大量數據接近峯值的情況,在渲染後,看不出過渡層級變化,因而我針對這個問題,作了相關優化。

html

原效果:算法

 

原疊加算法:數組

 

  value=dst*src/255優化

 

這個算法會使得值逐漸接近於0,在灰度映射前,這個rgb值就是黑色,並且取值範圍自己就只有0-255的範圍,通過分析,咱們決定打破這個界限。spa

 

 

優化算法:htm

  一、用int數組來存儲value,這樣能夠突破上限。blog

  二、針對整個數組進行歸一化。索引

  三、由歸一化的結果從新映射灰度值。內存

  四、由灰度值映射彩色值。
資源

 

 

優化後的效果:

 

 

 

具體過程再也不贅述了,說說遇到的:

  在非託管資源轉爲託管資源的時候,我當時直接用int[],出現了大量的-1值,並且會出現句柄超出索引的狀況,拋異常「嘗試讀取或寫入受保護的內存」,我思考了好久才發現,這是4個byte轉爲一個int類型的結果,數據在物理合並以後會進行取反加一,數據必然出錯。

相關文章
相關標籤/搜索