数字图像相关(Digital Image Correlation, DIC)中的非线性优化方法IC-GN的数值解计算

article/2025/11/8 0:08:28

目录


前言

由于本人近期正在展开数字图像相关技术用于测量材料形变方向的研究,其中需要对别人现有算法的复现和调研,尽管其中很多算法都已经非常成熟,但对于初学者而言即使明白其中的原理,无法上手实践和操作的话,依然无法能够将其完全的应用起来或者在上面进行创新,我希望能将自己作为一个初学者复现他人代码和学习该原理的过程记录下来,方便每一个涉足该领域的人能更快应用这些知识。

本文的论述基础建立在我的前一篇文章数字图像相关(Digital Image Correlation, DIC)中的非线性优化方法(FA-GN与IC-GN)。推荐先通过这篇帖子了解DIC非线性迭代优化方法后,再阅读本文。

数字图像相关专栏目录:

  1. Matlab实现二维数字图像相关(2D Digital Image Correlation, 2D-DIC)【ADIC2D代码复现及原理介绍】
  2. 数字图像相关(Digital Image Correlation, DIC)中的非线性优化方法(FA-GN与IC-GN)
  3. 数字图像相关(Digital Image Correlation, DIC)中的非线性优化方法IC-GN的数值解计算
  4. 用MATLAB绘制随机散斑图案【源码+正确的椭圆旋转公式】

由于本人的论文已经完工,如果本文对你有所帮助,欢迎届时关注或引用我的论文。


内容回顾

为保证阅读的通畅,我会将上一篇帖子中IC-GN的算法逻辑在本章节进行简要的回顾与展示,便于在后面的公式推导中方便随时回头查看。
在这里插入图片描述
形函数相关参数说明:

  1. 0阶形函数 W S F 0 ( Δ x i x 0 , P S F 0 ) = [ 1 0 u 0 1 v ] [ Δ x i Δ y i 1 ] \boldsymbol{W}^{S F 0}\left(\Delta \boldsymbol{x}^{i} \boldsymbol{x}^{0}, \boldsymbol{P}^{S F 0}\right)=\left[\begin{array}{ccc} 1 & 0 & u \\ 0 & 1 & v \end{array}\right]\left[\begin{array}{c} \Delta x_{i} \\ \Delta y_{i} \\ 1 \end{array}\right] WSF0(Δxix0,PSF0)=[1001uv]ΔxiΔyi1
  2. 1阶形函数 W S F 1 ( Δ x i x 0 , P S F 1 ) = [ 1 + u x u y u v x 1 + v y v ] [ Δ x i Δ y i 1 ] \boldsymbol{W}^{S F 1}\left(\Delta \boldsymbol{x}^{i} \boldsymbol{x}^{0}, \boldsymbol{P}^{S F 1}\right)=\left[\begin{array}{ccc} 1+u_{x} & u_{y} & u \\ v_{x} & 1+v_{y} & v \end{array}\right]\left[\begin{array}{c} \Delta x_{i} \\ \Delta y_{i} \\ 1 \end{array}\right] WSF1(Δxix0,PSF1)=[1+uxvxuy1+vyuv]ΔxiΔyi1
  3. 2阶形函数 W S F 2 ( Δ x i x 0 , P S F 2 ) = [ 1 2 u x x u x y 1 2 u y y 1 + u x u y u 1 2 v x x v x y 1 2 v y y v x 1 + v y v ] [ Δ x i 2 Δ x i Δ y i Δ y i 2 Δ x i Δ y i 1 ] \boldsymbol{W}^{S F 2}\left(\Delta \boldsymbol{x}^{i} \boldsymbol{x}^{0}, \boldsymbol{P}^{S F 2}\right)=\left[\begin{array}{cccccc} \frac{1}{2} u_{x x} & u_{x y} & \frac{1}{2} u_{y y} & 1+u_{x} & u_{y} & u \\ \frac{1}{2} v_{x x} & v_{x y} & \frac{1}{2} v_{y y} & v_{x} & 1+v_{y} & v \end{array}\right]\left[\begin{array}{c} \Delta x_{i}^{2} \\ \Delta x_{i} \Delta y_{i} \\ \Delta y_{i}^{2} \\ \Delta x_{i} \\ \Delta y_{i} \\ 1 \end{array}\right] WSF2(Δxix0,PSF2)=[21uxx21vxxuxyvxy21uyy21vyy1+uxvxuy1+vyuv]Δxi2ΔxiΔyiΔyi2ΔxiΔyi1

在上一文中我们详细推导了数字图像相关中的非线性迭代优化的算术逻辑:通过在参考图像上设置好子区 f i = F ( x o + Δ x i ) f_{i}=F\left(x^{o}+\Delta x_{i}\right) fi=F(xo+Δxi) ,基于给定的一组形函数参数初值 P r c 0 P_{rc}^{0} Prc0 P r r 0 P_{rr}^{0} Prr0,对目标函数(相关标准)不断迭代优化从而得到一个在 P r r = 0 P_{rr}=0 Prr=0的情况下的最优解 P r c ∗ P_{rc}^{*} Prc,从而得到一组在形变图像上与参考子区最佳匹配的形变子区 g i ∗ = G ( x o + W ( Δ x i , P r c ∗ ) ) g_{i}^{*}=G\left(x^{o}+\boldsymbol{W}\left(\Delta \boldsymbol{x}_{i}, \boldsymbol{P_{rc}^{*}}\right)\right) gi=G(xo+W(Δxi,Prc)),最终实现参考图像像素点与形变图像像素点的匹配。而我们针对优化 P r c P_{rc} Prc去使用的高斯牛顿法就被叫做FA-GN,而针对优化 P r r P_{rr} Prr去使用的高斯牛顿法就被叫做IC-GN。

在这里插入图片描述

采用一阶形函数 W S F 1 \boldsymbol{W}^{S F 1} WSF1零均值归一化最小距离平方标准(Zero-Normalized Sum of Squared Differences Criterion, ZNSSD) 来构建我们的数学模型

零均值归一化最小距离平方标准(Zero-Normalized Sum of Squared Differences Criterion, ZNSSD)
C ZNSSD  = ∑ i = 1 I [ f i − f ˉ f ~ − g i − g ˉ g ~ ] 2 ∈ [ 0 , 4 ] C_{\text {ZNSSD }}=\sum_{i=1}^{I}\left[\frac{f_{i}-\bar{f}}{\widetilde{f}}-\frac{g_{i}-\bar{g}}{\widetilde{g}}\right]^{2}\in [0,4] CZNSSD =i=1I[f fifˉg gigˉ]2[0,4]其中 f ˉ = ∑ i I f i I \bar{f}=\frac{\sum_{i}^{I} f_{i}}{I} fˉ=IiIfi g ˉ = ∑ i I f g I \bar{g}=\frac{\sum_{i}^{I} f_{g}}{I} gˉ=IiIfg分别代表参考图像和形变图像的灰度值均值, f ~ = ∑ i = 1 I ( f i − f ˉ ) 2 \widetilde{f}=\sqrt{\sum_{i=1}^{I}\left(f_{i}-\bar{f}\right)^{2}} f =i=1I(fifˉ)2 g ~ = ∑ i = 1 I ( g i − g ˉ ) 2 \widetilde{g}=\sqrt{\sum_{i=1}^{I}\left(g_{i}-\bar{g}\right)^{2}} g =i=1I(gigˉ)2 为子区的归一化函数【相当于没有除以总数的方差,表征了子区灰度值的离散程度】。 C ZNSSD  C_{\text {ZNSSD }} CZNSSD 数值越小,相关性越好。

设上一次迭代的到的形函数参数为 P o l d \boldsymbol{P^{old}} Pold,由于这一次是针对 P r r P_{rr} Prr来做,故求解的增量 Δ P \Delta \boldsymbol P ΔP即为 P r r P_{rr} Prr,其每次的起点都是原参考子区,即形函数参数零点,如此我们的目标函数为 C ZNSSD  ( Δ P ) C_{\text {ZNSSD }}(\boldsymbol{\Delta \boldsymbol P}) CZNSSD (ΔP),即
C ZNSSD  ( Δ P ) = ∑ i = 1 I [ F ( x o + W ( Δ x i x 0 , Δ P ) ) − f ˉ ∑ i = 1 I ( F ( x o + W ( Δ x i x 0 , Δ P ) ) − f ˉ ) 2 − G ( x o + W ( Δ x i x 0 , P o l d ) ) − g ˉ ∑ i = 1 I ( G ( x o + W ( Δ x i x 0 , P o l d ) ) − g ˉ ) 2 ] 2 C_{\text {ZNSSD }}(\boldsymbol{\Delta \boldsymbol P})=\sum_{i=1}^{I}\left[\frac{F\left(\boldsymbol x^{o}+\boldsymbol{W}\left(\Delta \boldsymbol{x}^{i} \boldsymbol{x}^{0}, \Delta \boldsymbol P\right)\right) -\bar{f}}{\sqrt{\sum_{i=1}^{I}\left(F\left(\boldsymbol x^{o}+\boldsymbol{W}\left(\Delta \boldsymbol{x}^{i} \boldsymbol{x}^{0}, \Delta \boldsymbol P\right)\right)-\bar{f}\right)^{2}}}-\frac{G\left(\boldsymbol x^{o}+\boldsymbol{W}\left(\Delta \boldsymbol{x}^{i} \boldsymbol{x}^{0}, P^{old}\right)\right)-\bar{g}}{\sqrt{\sum_{i=1}^{I}\left(G\left(\boldsymbol x^{o}+\boldsymbol{W}\left(\Delta \boldsymbol{x}^{i} \boldsymbol{x}^{0}, P^{old}\right)\right)-\bar{g}\right)^{2}}}\right]^{2} CZNSSD (ΔP)=i=1Ii=1I(F(xo+W(Δxix0,ΔP))fˉ)2 F(xo+W(Δxix0,ΔP))fˉi=1I(G(xo+W(Δxix0,Pold))gˉ)2 G(xo+W(Δxix0,Pold))gˉ2根据IC-GN算法可以得到在该算法中目标函数在0处的梯度为:
∇ C ZNSSD  ( 0 ) = d C ZNSSD  ( 0 ) d Δ P ≈ 2 ∑ i = 1 I ( F ( x o + W ( Δ x i x 0 , 0 ) ) − f ˉ ) 2 ∑ [ [ F ( x o + W ( Δ x i x 0 , 0 ) ) − f ˉ ∑ i = 1 I ( F ( x o + W ( Δ x i x 0 , 0 ) ) − f ˉ ) 2 − G ( x o + W ( Δ x i x 0 , P o l d ) ) − g ˉ ∑ i = 1 I ( G ( x o + W ( Δ x i x 0 , P o l d ) ) − g ˉ ) 2 ] [ d F ( x o + W ( Δ x i x 0 , 0 ) ) d Δ P ] ] \begin{aligned} \nabla C_{\text {ZNSSD }}(\boldsymbol{0})&=\frac{\mathrm{d}C_{\text {ZNSSD }}(0)}{\mathrm{d} \Delta \boldsymbol P} \\ &\approx \frac{2}{ \sqrt{\sum_{i=1}^{I}\left(F\left(\boldsymbol x^{o}+\boldsymbol{W}\left(\Delta \boldsymbol{x}^{i} \boldsymbol{x}^{0}, 0\right)\right)-\bar{f}\right)^{2}}}\sum \left [\left [ \frac{F\left(\boldsymbol x^{o}+\boldsymbol{W}\left(\Delta \boldsymbol{x}^{i} \boldsymbol{x}^{0}, 0\right)\right) -\bar{f}}{\sqrt{\sum_{i=1}^{I}\left(F\left(\boldsymbol x^{o}+\boldsymbol{W}\left(\Delta \boldsymbol{x}^{i} \boldsymbol{x}^{0}, 0\right)\right)-\bar{f}\right)^{2}}}-\frac{G\left(\boldsymbol x^{o}+\boldsymbol{W}\left(\Delta \boldsymbol{x}^{i} \boldsymbol{x}^{0}, P^{old}\right)\right)-\bar{g}}{\sqrt{\sum_{i=1}^{I}\left(G\left(\boldsymbol x^{o}+\boldsymbol{W}\left(\Delta \boldsymbol{x}^{i} \boldsymbol{x}^{0}, P^{old}\right)\right)-\bar{g}\right)^{2}}} \right ] \left [ \frac{\mathrm{d}F\left(\boldsymbol x^{o}+\boldsymbol{W}\left(\Delta \boldsymbol{x}^{i} \boldsymbol{x}^{0}, 0\right)\right) }{\mathrm{d}\Delta \boldsymbol P} \right ]\right ] \end{aligned} CZNSSD (0)=dΔPdCZNSSD (0)i=1I(F(xo+W(Δxix0,0))fˉ)2 2i=1I(F(xo+W(Δxix0,0))fˉ)2 F(xo+W(Δxix0,0))fˉi=1I(G(xo+W(Δxix0,Pold))gˉ)2 G(xo+W(Δxix0,Pold))gˉ[dΔPdF(xo+W(Δxix0,0))]
在IC-GN中,所使用的目标函数在0处的Hessian为:
∇ ∇ C ZNSSD  ( 0 ) ≈ 2 ∑ i = 1 I ( F ( ( x o + W ( Δ x i x 0 , 0 ) ) − f ˉ ) 2 ∑ [ d F ( x o + W ( Δ x i x 0 , 0 ) ) d Δ P ] [ d F ( x o + W ( Δ x i x 0 , 0 ) ) d Δ P ] T \nabla\nabla C_{\text {ZNSSD }}(0) \approx \frac{2}{\sum_{i=1}^{I}\left(F\left((\boldsymbol x^{o}+\boldsymbol{W}\left(\Delta \boldsymbol{x}^{i} \boldsymbol{x}^{0}, 0\right)\right)-\bar{f}\right)^{2}} \sum \left [ \frac{\mathrm{d}F\left(\boldsymbol x^{o}+\boldsymbol{W}\left(\Delta \boldsymbol{x}^{i} \boldsymbol{x}^{0}, 0\right)\right)}{\mathrm{d}\Delta \boldsymbol P} \right ] \left [ \frac{\mathrm{d}F\left(\boldsymbol x^{o}+\boldsymbol{W}\left(\Delta \boldsymbol{x}^{i} \boldsymbol{x}^{0}, 0\right)\right)}{\mathrm{d}\Delta \boldsymbol P} \right ]^{T} CZNSSD (0)i=1I(F((xo+W(Δxix0,0))fˉ)22[dΔPdF(xo+W(Δxix0,0))][dΔPdF(xo+W(Δxix0,0))]T
根据得到的梯度和Hessian,我们便可以利用 Δ P = − ∇ C ZNSSD  ( 0 ) ∗ ∇ ∇ C ZNSSD  ( 0 ) − 1 \Delta \boldsymbol P = -\nabla C_{\text {ZNSSD }}(0)*\nabla \nabla C_{\text {ZNSSD }}(0)^{-1} ΔP=CZNSSD (0)CZNSSD (0)1得出增量 Δ P \Delta \boldsymbol P ΔP之后利用如下的更新式完成对形函数参数的迭代更新,设由形函数参数 P \boldsymbol P P所形成的系数矩阵的增广矩阵为 w ( P ) \boldsymbol w(\boldsymbol P) w(P),则有更新式为
w ( P n e w ) = w ( P o l d ) w ( Δ P ) − 1 \boldsymbol w(\boldsymbol {P^{new}})=\boldsymbol w(\boldsymbol {P^{old}})\boldsymbol w(\Delta \boldsymbol P)^{-1} w(Pnew)=w(Pold)w(ΔP)1

关于不同阶数形函数参数对应的増广系数矩阵,建议参考Gao, Y.; Cheng, T.; Su, Y.; Xu, X.; Zhang, Y.; Zhang, Q. High-efficiency and high-accuracy digital image correlation for three-dimensional measurement. Opt. Lasers Eng. 2015, 65, 73–80.

一.IC-GN中增量 Δ P \Delta \boldsymbol P ΔP的数值解

从内容回顾中,可以知道只要得到增量 Δ P \Delta \boldsymbol P ΔP便可以完成对于迭代的计算,但这里的 Δ P = − ∇ C ZNSSD  ( 0 ) ∗ ∇ ∇ C ZNSSD  ( 0 ) − 1 \Delta \boldsymbol P = -\nabla C_{\text {ZNSSD }}(0)*\nabla \nabla C_{\text {ZNSSD }}(0)^{-1} ΔP=CZNSSD (0)CZNSSD (0)1该怎么去书写其数值解,成为了本文的目标。

利用ZNSSD描述中的符号 f ~ , g ~ \widetilde{f},\widetilde{g} f g 对IC-GN方法中的梯度和Hessian进行简化,可以得到
∇ C ZNSSD  ( 0 ) = 2 f ~ ∑ [ [ f i − f ˉ f ~ − g i − g ˉ g ~ ] d f i d Δ P ] = 2 f ~ 2 ∑ [ [ f i − f ˉ − f ~ g ~ ( g i − g ˉ ) ] d f i d Δ P ] \begin{aligned} \nabla C_{\text {ZNSSD }}(0) &= \frac{2}{\widetilde{f}}\sum \left [ \left [ \frac{f_{i}-\bar{f}}{\widetilde{f}}-\frac{g_{i}-\bar{g}}{\widetilde{g}} \right ] \frac{\mathrm{d}f_{i}}{\mathrm{d}\Delta \boldsymbol P}\right ]\\ &= \frac{2}{\widetilde{f}^{2}}\sum \left [ \left [ f_{i}-\bar{f}-\frac{\widetilde{f}}{\widetilde{g}}\left ( g_{i}-\bar{g} \right ) \right ] \frac{\mathrm{d}f_{i}}{\mathrm{d}\Delta \boldsymbol P}\right ] \end{aligned} CZNSSD (0)=f 2[[f fifˉg gigˉ]dΔPdfi]=f 22[[fifˉg f (gigˉ)]dΔPdfi]

∇ ∇ C ZNSSD  ( 0 ) = 2 f ~ 2 ∑ [ d f i d Δ P ⋅ ( d f i d Δ P ) T ] \nabla\nabla C_{\text {ZNSSD }}(0)=\frac{2}{\widetilde{f}^{2}}\sum \left [ \frac{\mathrm{d}f_{i}}{\mathrm{d}\Delta \boldsymbol P}\cdot \left ( \frac{\mathrm{d}f_{i}}{\mathrm{d}\Delta \boldsymbol P} \right )^{T} \right ] CZNSSD (0)=f 22[dΔPdfi(dΔPdfi)T]根据 Δ P \Delta \boldsymbol P ΔP的公式,则Hessian和梯度中的系数 2 f ~ 2 \frac{2}{\widetilde{f}^{2}} f 22被消去,仅需额外计算 d f i d Δ P \frac{\mathrm{d}f_{i}}{\mathrm{d}\Delta \boldsymbol P} dΔPdfi即可得到增量 Δ P \Delta \boldsymbol P ΔP的数值结果。利用链式法则有:
d f i d Δ P = d f i d x i ⋅ d x i d Δ P \frac{\mathrm{d}f_{i}}{\mathrm{d}\Delta \boldsymbol P}=\frac{\mathrm{d}f_{i}}{\mathrm{d}\boldsymbol{x}^{i}}\cdot \frac{\mathrm{d}\boldsymbol{x}^{i}}{\mathrm{d}\Delta \boldsymbol P} dΔPdfi=dxidfidΔPdxi由于 x i \boldsymbol{x}^{i} xi代表了子区中其他像素点的坐标,因此第一项即为图像的梯度,在MATLAB中可以用imgradientxy()函数计算得到。第二项则是 x i \boldsymbol{x}^{i} xi P \boldsymbol P P中各项求偏导的结果,根据形函数表达式,以一阶形函数为例,可以得到如下的表达式
{ x i = x 0 + Δ u + ( 1 + Δ u x ) ⋅ Δ x i + Δ u y ⋅ Δ y i y i = y 0 + Δ v + ( 1 + Δ v y ) ⋅ Δ y i + Δ v x ⋅ Δ x i \left\{\begin{matrix} x_{i}=x_{0}+\Delta u+\left ( 1+ \Delta u_{x}\right )\cdot \Delta x_{i}+\Delta u_{y}\cdot \Delta y_{i}\\\\ y_{i}=y_{0}+\Delta v+\left ( 1+ \Delta v_{y}\right )\cdot \Delta y_{i}+\Delta v_{x}\cdot \Delta x_{i} \end{matrix}\right. xi=x0+Δu+(1+Δux)Δxi+ΔuyΔyiyi=y0+Δv+(1+Δvy)Δyi+ΔvxΔxi对其各项求偏导即可得到第二项,即 d x i d Δ P \frac{\mathrm{d}\boldsymbol{x}^{i}}{\mathrm{d}\Delta \boldsymbol P} dΔPdxi的数值结果,经过整理有其关于不同阶数形函数的数值表达1为:

  1. 0阶形函数 ∂ x i ∂ Δ P S F 0 = [ 1 0 0 1 ] \frac{\mathrm{\partial }\boldsymbol{x}^{i}}{\mathrm{\partial }\Delta \boldsymbol P^{SF0}}=\begin{bmatrix} 1 & 0\\ 0 & 1 \end{bmatrix} ΔPSF0xi=[1001]

  2. 1阶形函数 ∂ x i ∂ Δ P S F 1 = [ 1 Δ x i Δ y i 0 0 0 0 0 0 1 Δ x i Δ y i ] \frac{\mathrm{\partial }\boldsymbol{x}^{i}}{\mathrm{\partial }\Delta \boldsymbol P^{SF1}}=\begin{bmatrix} 1 & \Delta x_{i} & \Delta y_{i} & 0 & 0 & 0\\ 0 & 0 & 0 & 1 & \Delta x_{i} & \Delta y_{i} \end{bmatrix} ΔPSF1xi=[10Δxi0Δyi0010Δxi0Δyi]

  3. 2阶形函数
    ∂ x i ∂ Δ P S F 2 = [ 1 Δ x i Δ y i Δ x i 2 / 2 Δ x i Δ y i Δ y i 2 / 2 0 0 0 0 0 0 0 0 0 0 0 0 1 Δ x i Δ y i Δ x i 2 / 2 Δ x i Δ y i Δ y i 2 / 2 ] \frac{\mathrm{\partial }\boldsymbol{x}^{i}}{\mathrm{\partial }\Delta \boldsymbol P^{SF2}}=\begin{bmatrix} 1 & \Delta x_{i} & \Delta y_{i} & \Delta x_{i}^{2}/2 & \Delta x_{i} \Delta y_{i} & \Delta y_{i}^{2}/2 & 0 & 0 & 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 & 0 & 0 & 1 & \Delta x_{i} & \Delta y_{i} & \Delta x_{i}^{2}/2 & \Delta x_{i}\Delta y_{i} & \Delta y_{i}^{2}/2 \end{bmatrix} ΔPSF2xi=[10Δxi0Δyi0Δxi2/20ΔxiΔyi0Δyi2/20010Δxi0Δyi0Δxi2/20ΔxiΔyi0Δyi2/2]

因此要完成IC-GN非线性迭代优化数值计算,需要引入的数据有

  • 图像的梯度
  • 子区像素点相对于中心点的位移量

利用这些数据信息配合上算法,即可完成非线性迭代的数值计算了。同理FA-GN也是如此,利用类似的方法也可以计算得到FA-GN的数值解结果

二.写在最后

这部分内容主要是作为辅助,方便大家能更快的通过MATLAB来搭建完整的数字图像相关匹配算法,里面的公式也是我亲自推导验证的,如果存在错误,还希望您可以及时指正,以确保所分享知识的准确性。很多知识的数学原理都是看上去很复杂,但是细细推导也就是高数里很普通的内容,希望能通过这样的方式让自己的知识活学活用起来。

参考引用


  1. Lu H, Cary P D. Deformation measurements by digital image correlation: implementation of a second-order displacement gradient[J]. Experimental mechanics, 2000, 40(4): 393-400. ↩︎


http://chatgpt.dhexx.cn/article/b9amyD53.shtml

相关文章

数字图像处理:像素间的一些基本关系

图像分析的主要目的之一在于获取图像中感兴趣的目标并对目标之间的关系进行分析;目标是由图像中相关像素联合组成的;相关像素在空间的位置和属性都有密切关系,它们一半构成图像中连通组元;所以要分析像素之间的关系,不…

数字图像和数字图像处理

Digital Image Processing[数字图像和数字图像处理] 数字图像就是指代表图像的矩阵。 数字图像处理就是对图像矩阵进行各种数学运算。 在进行图像处理时需要一些数学基础,主要包括线性系统、傅立叶变换、沃尔什变换和小波变换等。 1. 景象:人眼所看到的外部世界。…

数字图像基本处理算法

数字图像基本处理算法 xizero00 常熟理工学院(CIT) 计算机科学与工程学院 下一代互联网实验室(NGIL Lab) Email:xizero00163.com 由于SIFT算法需要用到很多算法,所以这段时间研究了一下一些最基本的图像处理算法, 好了&…

图像理论知识_什么是数字图像处理?

数字图像处理,即数字,将图像转化为数字的形式,对图像做处理,我们平时所见到的图像,在计算机中都是一组数字,当通过相机捕获现实世界的景物时,相机会捕获现实世界的光源信号,并转化为…

数字图像简介及表示

数字图像处理 数字图像处理(Digital Image Processing)又称为计算机图像处理,是一种将图像信号数字化后利用计算进行处理的过程。图像 图像是三维世界在二维平面的表示,具体来说就是用光学器件对一个物体,一个人或是…

数字图像处理(入门篇)一 图像的数字化与表示

目录 1 人眼图像是如何形成的? 2 图像的感知与获取? 3 图像的数字化 4 数字图像的表示 1 人眼图像是如何形成的? 人眼近似为一个球体,物体的光线经过角膜和晶状体的折射,在视网膜上形成“倒立缩小”的实像。 视网膜…

数字图像处理——相关检测

原理:利用模板与图像做相关运算得到相关值矩阵,相关值最大的位置即检测出的目标位置。相关值计算公式: Matlab代码: clear,clc; car imread(car.png); mask imread(wheel.png); [h1,w1] size(car); [h2,w2] size(mask);car_e…

#DIC#数字图像相关

1.1DIC基本原理 在实验中DIC特指一种种光学测量技术,⽤于在整个⼒学试验过程中测量试样表⾯上不断变化的全场⼆维或三维坐标。测量出的坐标场可⽤于进⼀步导出位移、应变、应变率、速度和曲率等感兴趣量(Quantities-of-Interest,QOI&#xff…

二维数字图像相关算法软件Ncorr的使用心得

二维数字图像相关(2D Digital Image Correlation)是一种非接触式的光学测量方法,常应用于图像分析处理上,它可以根据变形前后的2张或多张图像,求解出规定区域 近似的位移与应变情况。 Ncorr使用流程 Ncorr下载与编译1.下载2.编译 Ncorr通用DI…

数字图像相关(Digital Image Correlation, DIC)中的非线性优化方法(FA-GN与IC-GN)

目录 前言内容回顾一. 非线性优化数学模型二. 前向累加高斯-牛顿法——FA-GN(Forward Additive Gauss-Newton method)三. 逆合成高斯-牛顿法——IC-GN(Inverse compositional Gauss-Newton method)1.非线性优化数学模型变形2.数学…

利用图像来测量的技术——数字图像相关法(DIC)

数字图像相关法 数字图像相关法(digital image correlation method,DIC)是对未变形和变形状态下的试件图像进行计算机处理,获得全场位移的一种方法。也就是说你只需要提供两张图片——一张参考图片(refference image)和一张变形状态下的图片(current image)&#x…

Matlab实现二维数字图像相关(2D Digital Image Correlation, 2D-DIC)【ADIC2D代码复现及原理介绍】

目录 前言一.数字图像相关(Digital Image Correlation)二.相关运算1.数学模型2.形函数3.相关标准其他知识 三.ADIC2D代码解释1.ImgCorr2.SubCorr 四.写在最后参考引用 前言 由于本人近期正在展开数字图像相关技术用于测量材料形变方向的研究&#xff0c…

六款练手的javaweb项目源码!

分享几个项目源码! 1,电子商城项目 采用了Struts、spring、hibernate,数据库使用了MySQL。 2,CRM客户关系管理系统 没有使用框架,采用了jsp、Servlet,数据库使用了Oracle。 3,投票管理系统…

Java版企业工程项目管理系统源码+java版本+项目模块功能清单+spring cloud +spring boot

工程项目各模块及其功能点清单 一、系统管理 1、数据字典:实现对数据字典标签的增删改查操作 2、编码管理:实现对系统编码的增删改查操作 3、用户管理:管理和查看用户角色 4、菜单管理:实现对系统菜单的增删改查操…

100个Java项目解析,带源代码和学习文档!

前言 你是否正在寻找带有源代码的Java项目的免费集合?你的搜索到这里结束,我为你提供了近100多个Java项目。 想要成为一个优秀的程序员写项目是绕不开的,毕竟工程学的最终目标都是要创造东西,所以,代码给我敲起来&am…

Java版本工程项目管理系统源码

Java版工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离 功能清单如下: 首页 工作台:待办工作、消息通知、预警信息,点击可进入相应的列表 项目进度图表:选择(总体或单个)项目显示…

java基础实现小小项目(源码自取)

实现方式: CustomerView为主模块,负责菜单的显示和处理用户操作CustomerList为Customer对象的管理模块,内部用数组管理一组Customer对象,并提供相应的添加、修改、删除和遍历方法,供CustomerView调用 Customer为实体对…

Java版工程项目管理系统源码 工程项目源码

数 据 库: MySQL 开发语言: Java 开发工具: MyEclipse 源码类型: WebForm 以甲方项目管理为中心,包括项目启动、计划、执行、控制与收尾阶段的全生命周期管理,并对范围、预…

Java项目合集—整整20套精品项目(附源码)

20款Java毕业设计系统,任你挑选,允许白嫖! 保姆级教程,手把手教你编程,助你轻松毕业~ 其中项目合集中有: 1、图书管理系统。 2、宠物领养系统。 3、叮当书城。 4、个人日记本。 5、记账系统。 6、家…

如何学习大型项目的源码?

最近有朋友突然问我一个问题 “你怎么把UE4引擎代码看的那么深入的?” 看到问题后我还愣了一下,因为这是第一次有人给我打了个”深入UE4”的标签。其实我接触虚幻引擎满打满算也就两年,确实谈不上深入。只是靠着平时的学习习惯积累&#xff…