遠端紅外熱成像app

2021-10-10 16:19:08 字數 2372 閱讀 7998

碼雲位址

本次紅外感測器比較小只有64個畫素,無法準備描繪出物體輪廓,所以才需要插值提公升畫素。
感測器資料直接通過mqtt傳送給移動端或者伺服器通過mqtt中轉給移動端,都可以做到無重新整理實時顯示熱成像畫面。

本次測試使用的是5hz,感測器每秒傳送5次資料,移動端每秒渲染5次熱成像畫面。實時度高的場景可以增加次數。

由於紅外感測器上報給伺服器的資料是一維陣列,要想顯示影象就需要將資料轉為二維陣列矩陣    

//感測器橫軸畫素

int sourcepixelrowcount = 8;

int len = temperaturelist.length;

//感測器縱軸畫素

int linenum = len % sourcepixelrowcount == 0

? (len ~/ sourcepixelrowcount).toint()

: ((len / sourcepixelrowcount) + 1).floor();

for (var i = 0; i < linenum; i++)

如果不進行映象翻轉,顯示的畫面將和實際的畫面是相反的,左右相反
插值提公升畫素,銳化邊緣後,提公升後畫素為32×32,看下基本可以看到物體輪廓了。 

//計算權重

static dynamic getcubicweight(double v) else if (val < 2)

ws[i] = w;

}return ;

}

//將溫度轉為rgb,用64將顏色分為4個區間,可以分為更多區間比如51

rgb graytopsecolor(int grayvalue)

if (grayvalue < 0)

if ((grayvalue >= 0) && (grayvalue <= 63)) else if ((grayvalue >= 64) && (grayvalue <= 127)) else if ((grayvalue >= 128) && (grayvalue <= 191)) else if ((grayvalue >= 192) && (grayvalue <= 255))

return rgb(0, 0, 0);

}

//二維溫度陣列

list> temperaturescale;

//每個畫素點大小

final static double pixel;

//最低溫度

static double temperaturemin = 10;

//最高溫度

static double temperaturemax = 38;

//計算最大溫度差

double difference = temperaturemax - temperaturemin;

@override

void paint(canvas canvas, size size)

left = 0;

//畫筆向下移動乙個畫素

紅外熱成像技術讓全天候監控變為可能

紅外熱像儀的核心部件為紅外探測器,目前主要有兩種探測器氧化釩和多晶矽探測器,氧化釩探測器主要的優勢是對於紅外光線的光電轉換效率更高,相比於多晶矽探測器擁有更高的訊雜比和強光保護能力。氧化釩探測器的溫度穩定性好 壽命長,溫度漂移小。譬如森林防火專用測溫告警雙波段熱成像,因其一般放置於森林等野外環境中,...

「防疫神器」,紅外熱成像測溫方案,構築防疫堅固防線

現階段防疫工作已進入了關鍵時刻,隨著延後的假期即將結束,大量的工廠復工 學校開學,各地都將會迎來大規模人員流動。在新型冠狀病毒嚴防嚴控的形勢下,對流動人員進行快速有效的體溫篩查,利用生物識別技術,進行熱成像測溫的人體熱成像體溫篩查方案很快推出。高精度 高效率 低成本 靈活布控 安全可靠,能夠實現有效...

智慧型無感紅外熱成像人體測溫初篩系統

背景 目前,新型冠狀病毒感染的肺炎疫情防控處於關鍵階段,抗擊疫情期間,戴口罩 測體溫成為人們進出公共場所必做的 兩件大事 目前體溫檢測手段較單一,主要以接觸式的耳溫槍和水銀溫度計為主,在人員較多的情況下,人工測量體溫不僅需要投入大量的人力物理,成本高,部署複雜,同時也增加了人員接觸帶來的安全風險。為...