当前位置:网站首页>Mlx90640 infrared thermal imager temperature sensor module development notes (V)
Mlx90640 infrared thermal imager temperature sensor module development notes (V)
2022-07-25 13:05:00 【51CTO】
MLX90640 Infrared thermal imager temperature measurement module development notes ( 5、 ... and ) Array interpolation - from 32*24 Pixels to 512*384 Pixels

MLX90640 Of 32*24=768 Although the pixels are bigger than before 8*8 perhaps 16*8 The pixels have been improved a lot , But if you use these pixels directly, you still can't form a thermal image very well , In order to use these pixels to smooth the image, we need to interpolate them , Use more pixels to draw the image .
Read some other people's algorithms , It feels like polynomial interpolation , Only the combination of interpolation methods is different .
Algorithm basis
The representative ones are yangfengjian from Hangzhou University of Electronic Science and Technology 《 be based on MLX90620 Low cost infrared thermal imaging system design 》, Use cubic polynomials + Bilinear interpolation , The original 16*4 Pixels are expanded to 256*64 Pixels . The essence of bilinear interpolation is primary function ( First order polynomial ). The conclusion of this article is :
(1) Bilinear interpolation method requires less computation 、 Fast , But the contrast is low 、 The details are vague .
(2) Cubic polynomial interpolation , The image effect is clear , High contrast , But it's a lot of calculation .
(3) First bilinear interpolation, then cubic polynomial interpolation , The effect is better than the above two single interpolation methods .
(4) First cubic polynomial interpolation, then bilinear interpolation , High and low temperature distribution is more obvious , The image effect tends to be more realistic . meanwhile , This article also uses an evaluation method of image quality --- entropy & Average gradient
entropy , One of the parameters in thermodynamics to represent the state of matter , Use symbols S Express , Its physical meaning is a measure of the degree of chaos in the system . It is used for image evaluation to indicate the amount of information expressed by the image . The higher the image entropy, the greater the amount of information .
Average gradient , It refers to the obvious difference in gray level near the boundary or shadow line of the image , That is, the gray change rate is large , The magnitude of this rate of change can be used to express the image sharpness . It reflects the rate of contrast change of small details in the image , That is, the rate of density change in the multidimensional direction of the image , Represent the relative clarity of the image . The higher the value, the clearer the image .
Interpolation implementation
The first pixel of each row or column is interpolated in front 2 A little bit
1~n-1 Pixels , Interpolation after each pixel 3 Point last pixel , Interpolate later 1 A little bit
n+2+(n-1)*3+1=n+2+n*3-1*3+1=4n+2-3+1=4n, namely : The pixel becomes the original 4 times
The above processing method , Insert before the first pixel 2 A little bit , Insert after the last pixel 1 A little bit , Next interpolation
when , Should be interpolated before the first 1 A little bit , Interpolation after the last pixel 2 A little bit , To achieve image balance .
The pixels after each interpolation are the pixels before interpolation 4 times , After twice interpolation , Can be 32*24 Change for 512*384 Pixels . The following is the interpolation algorithm that has been actually used , It's just using Pascal(Delphi) Written , Those who are interested can be changed to
C Linguistic , Just change the corresponding statement , Language is interlinked .

// This is a one-dimensional array interpolation algorithm
//SourceDatas:TDoubles; One dimensional array before interpolation
//Dir:Integer; In which direction and at the end 2 It's worth (0: front ;1: At the end of )
//times:Integer The number of terms of a polynomial , The first-order polynomial is 2 term , The quadratic polynomial is 3 term
// Return value : One dimensional array after interpolation ( The quantity is before interpolation *4) function PolynomialInterpolationArr(
SourceDatas:TDoubles; Dir:Integer;
times:Integer):TDoubles;// One dimensional array interpolation
var
i,j,k:Integer;
arrCount:Integer;
边栏推荐
- OAuth, JWT, oidc, you mess me up
- Selenium use -- installation and testing
- Kyligence was selected into Gartner 2022 data management technology maturity curve report
- Connotation and application of industrial Internet
- ECCV 2022 | climb to the top semantickitti! Semantic segmentation of LIDAR point cloud based on two-dimensional prior assistance
- Zero basic learning canoe panel (16) -- clock control/panel control/start stop control/tab control
- 零基础学习CANoe Panel(12)—— 进度条(Progress Bar)
- 2022 年中回顾 | 大模型技术最新进展 澜舟科技
- Common operations for Yum and VIM
- [Video] Markov chain Monte Carlo method MCMC principle and R language implementation | data sharing
猜你喜欢

如何用因果推断和实验驱动用户增长? | 7月28日TF67
![[advanced C language] dynamic memory management](/img/b7/6586b35500eb8f39a3ea8c125fb572.png)
[advanced C language] dynamic memory management

Zero basic learning canoe panel (16) -- clock control/panel control/start stop control/tab control
![SSTI template injection vulnerability summary [bjdctf2020]cookie is so stable](/img/19/0b943019fe1c959c4b79035a814410.png)
SSTI template injection vulnerability summary [bjdctf2020]cookie is so stable

Shell常用脚本:获取网卡IP地址

Zero basic learning canoe panel (12) -- progress bar

零基础学习CANoe Panel(12)—— 进度条(Progress Bar)

AtCoder Beginner Contest 261E // 按位思考 + dp

yum和vim须掌握的常用操作

What is ci/cd?
随机推荐
LeetCode 0133. 克隆图
Seven lines of code made station B crash for three hours, but "a scheming 0"
Chapter5 : Deep Learning and Computational Chemistry
clickhouse笔记03-- Grafana 接入ClickHouse
mysql函数汇总之日期和时间函数
Use of hystrix
Atcoder beginer contest 261 f / / tree array
网络空间安全 渗透攻防9(PKI)
perf 性能调试
How to understand metrics in keras
卷积核越大性能越强?一文解读RepLKNet模型
Cyberspace Security penetration attack and defense 9 (PKI)
Vim技巧:永远显示行号
R language uses wilcox The test function performs Wilcox signed rank test to obtain the confidence interval of the population median (the default output result includes the confidence interval of 95%
【AI4Code】《CoSQA: 20,000+ Web Queries for Code Search and Question Answering》 ACL 2021
Shell常用脚本:判断远程主机的文件是否存在
The programmer's father made his own AI breast feeding detector to predict that the baby is hungry and not let the crying affect his wife's sleep
EMQX Cloud 更新:日志分析增加更多参数,监控运维更省心
[rust] reference and borrowing, string slice type (& STR) - rust language foundation 12
Use vsftpd service to transfer files (anonymous user authentication, local user authentication, virtual user authentication)