|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 Heaven_1 于 2022-1-26 11:16 编辑
. B# w4 f9 x* e4 E, k/ u( |
" J8 j1 _. Z x7 p8 B机器学习的本质是让计算机能够更有效率的模仿人类的行为,特别在图像分类、图像识别、语音识别等领域,机器学习能够在分秒之间,集中处理数以百万计的计算。过去在合理的成本下,这样的处理能力是无法想象的,直到最近几年才能够实现。这主要是因为,如若这些处理不在边缘实现,就要放到云端来进行。数据要被上传到云端,这样的话,我们就会担心谁会看到这些数据。我们相信云端服务期的运营商和负责人吗?显然答案是否定的,因此在本地进行边缘计算,用户隐私就能够更好的被保护,响应速度也会更快,可靠性也会更强,因为即便服务器断电,本地设备依然可以稳定工作,甚至设备可以在没有网络的偏远地区正常工作。
" {" f& m3 f( l; C: N( Y' R; K5 v: G) {, s; {/ a a
+ b2 l. s8 s7 D8 I! C
# c; p p7 F* G) _. Z! |$ L% `$ ?
; g8 i) R% G2 w' Y7 f; {/ n. H" [) q2 G# m* q ?
; h. b4 W, z2 f9 R9 D0 N' z& b' \& r
![]() [backcolor=rgba(18, 18, 18, 0.5)]
- Z5 y; \8 Q: p0 A; `( Z8 P( q8 t- y+ i* x
5 g: [. `# M8 R5 f
% f! q# w* y2 d编辑切换为居中
/ [- z/ c1 ^1 x# ]3 O
7 V5 {( L9 A& v k' g" L8 P
4 J- _# }1 _4 X N3 K" i; A
9 ~# k8 N6 Q$ A F c* ]8 ?* a. K4 R# r
添加图片注释,不超过 140 字(可选), {% Q$ m1 R8 O* P! w; p
4 d7 F* \0 _1 K& M1 W, A( l1 u% V* o" S( I `
7 d$ t7 _6 {3 P1 F( d# C5 t' Q
7 [; x$ ^2 h1 f' b7 x2 A% G
) f' @/ G1 Q0 x4 K
0 d B( W( Q: z. U. I
i.MX8M Plus 应用处理器- c# Y1 F* x; o- w5 r: ` u
, w$ d) s! W% k+ |/ t5 B
9 x7 }& J& k5 W" C# G, Y% `2 p
% a, [ R0 G, ?0 J+ R! n. ~通过i.MX8M Plus ,NXP将机器学习带到了边缘设备中,这款产品不仅仅是达到了2万亿次每秒这样的强大计算能力。只是做到这样的计算性能并不困难,但NXP所实现的是带来了模型压缩的优化以及针对稀疏性的优化,稀疏指的是机器学习算法参数或者数据中有大量权重为0,进而能够避免在推理时支付这些模型系数的存储费用,计算效率将会大大增加。模型压缩同样也很重要,鉴于计算过程中存在大量的数据交换,如果足够压缩,那么对于系统内存的占用就会降到最低。另外同样牵涉到系统内存的一点是i.MX8M Plus 搭载 DRAM 控制器能够进行每秒4G 处理,是 NXP有史以来 DRAM 速度之最。
: v; k1 L! x6 ^: H9 n
( u, S& t& i/ O* T9 x/ V6 ~ - }7 @/ @. ?% o* |4 [3 y
; O$ y( x7 l. ?" w& H/ [( [4 f
i.MX8M Plus 与机器学习、机器视觉, i' K4 _2 J% j! Z! t/ p
2 l6 r8 L# B0 t2 w# z" z1 t2 V5 R1 W
: @/ x5 `* t3 O* G, G; s0 n" x3 i7 s% w0 U/ g
机器学习是基于图像数据的,数据的来源通常是一个系统中的摄像头模块,而摄像头模块需要一个图像处理单元,也就是ISP。谈到 i.MX8M Plus 的ISP 单元,在很多系统中,摄像头可能距离目标非常远,为了得到你需要的细节,其分辨率必须足够高,比如4K分辨率,也就是800万像素。
' Y0 i/ |/ |0 |4 g, E8 q3 J" u0 G7 b0 _, n- W a" W! q" n3 K+ ?
/ O5 T+ N8 U( J5 o
! o4 n6 X. x1 m* |$ q7 n
% G2 c: w2 x9 c8 t% v. t: {! ?' b0 ], j& W4 B
6 z" |5 F+ \" i8 j' s. T( U
( X8 V, v. A; G) C* B* q1 C
![]() [backcolor=rgba(18, 18, 18, 0.5)]
1 ^: s! c2 T5 {$ t9 h0 t4 \* T! H% M) Z% s2 E( L
, u+ c4 Q2 Q+ z; E# ^% q
: q; f6 t! n8 l: J编辑切换为居中
8 c. l* k- _5 I" `+ g/ W
. ^7 @% ~$ o/ w7 F6 ?$ j$ y. K0 u* H2 A' q- }' R3 u2 R+ S
. }+ Y# y+ Y1 M; l n( q6 E, m" E/ K# D
添加图片注释,不超过 140 字(可选)
: \6 l {, w* p. A' Z) V# h0 p2 G+ [! I7 N$ c
& N6 n/ _# ^* j* z: Z, C! n
/ t0 G b% O n: P1 P4 c. N7 b
& U% p" z/ r6 q* K" B: }+ Y- v5 n: V5 t- l- T; P& B$ S
8 w/ r, X9 \1 R' R: y
6 X) f6 d8 f# t. o1 M2 H9 `! I+ }$ G
处理如此高清的影像数据,就需要ISP 的协助。可能对于低分辨率的视频,ISP 并非必需,在很多系统中,用户可能并没有意识到,摄像模块是否集成ISP。但在高分辨率下,就需要 ISP 被集成在处理器中,就像i.MX8M Plus 这样。有趣的是,NXP i.MX8MPlus 中实际上集成了两个 ISP,两路摄像头输入。因而在大多数的应用场景下,将会获得更立体的图像,就像人的两只眼睛一样,可以感知图像的深度。另外一个应用是两路摄像头,其一作为广角或者鱼眼视角,另一路则聚焦某一场景的特写。除此之外,还有其它的应用需要用到这样的功能。
; A* v4 a: J5 d/ ?$ [# i
0 k- R$ f" I2 `( W# n) S6 V图像处理需要很强的计算能力,ISP的功能理论上也可以由 CPU 或 GPU 来实现,但要将这样的计算量,将这些数据转化为系统可识别的形式和参数再进行计算和处理,涉及到的工作量太大了。因此在这样的系统下,必须使用一个专门处理图像任务的单元,也就是 ISP,就像 i.MX8M Plus所做的那样。% m% Y* {; ?7 r# f3 r* P# F
, q1 a$ p- Z. K, W8 c; @! i ( { M; j) S/ U1 I8 {
$ I. Z) n/ J6 |# X/ T8 @ y
i.MX8M Plus 高动态范围(HDR)支持# e2 v; S8 p5 U1 V+ X5 C
; D/ `9 W1 m" l3 |* d' ?; b; ~# h0 L7 D5 L- J4 o: X$ a
3 e6 Q* e1 K: w7 E) p+ L/ k5 b* n
i.MX8MPlus还有一个重点是HDR,也就是高动态范围,你可能在很多手机上看到过这个词,但在嵌入式应用以及消费类产品甚至工业应用中HDR 都非常重要。HDR 主要是融合多重曝光的图像,具体表现为拍摄亮度不同的两张图像,一张是长曝光,一张是短曝光,其中一张能够帮助获得更好的高光部分的细节,另一张则获得更好的低亮度区域的细节。甚至可以拍三张或者更多,来融合成为一张图像。这样高光和暗部的细节都可以保留,这在某些特定场景中非常重要,比如在家里,窗户边很亮,有的地方却很暗,有了 HDR,所有的细节你都可以看清楚。
O7 Q5 w: Q1 p6 w
0 ~- H& v8 a9 r% l" M" }
0 s- l( R8 d2 U3 e# X9 u/ q3 [9 m8 |. c
' }* M" p. A* X. ~) P L# x
% f# Z* U" Q# R( F: r" `$ T `" d
2 C1 z. u* g) {: L6 x& a# q: M7 z) \; }8 c8 J+ U% c8 Y
![]() [backcolor=rgba(18, 18, 18, 0.5)] 2 |. c+ H, i4 ~' v
K1 M( v1 a) ?
- a; I" U$ @0 e
, |. C$ N/ Q0 e! B* k编辑切换为居中; M6 ^* e5 B" L
% _1 M7 [1 Q- Q3 f' f
! g1 d6 q4 x# C1 H
/ O$ @* i. h, {: `7 t! Y
4 e' I) Q9 M8 T5 K6 n* y6 E# [添加图片注释,不超过 140 字(可选)
$ t- W! l9 `9 j0 v9 I6 C( k# G. `" B+ S: G2 \
, \! D% [6 S L0 r* g% \
2 g5 B7 |2 t5 I) Z3 \% e. D; ~& N0 u, c
$ S" T/ k+ B1 ]; ~8 {, F; l
" b+ U' l$ m; q, W6 _5 z, ? u( [$ X# B扭曲矫正带来更好的图像
$ [7 ^, p- j5 ?4 I! H- z
% U; {+ A. V! E, Z1 P
* D3 U, t }# c. d8 p# B
/ ?8 _8 v4 w2 t; B* H: |在摄像头相关应用中,扭曲矫正是一个非常重要的功能。摄像头接收到的图像可能是扭曲的,类似观看鱼缸的场景。你可以看到很多的东西,但它们都是扭曲的。扭曲矫正,可以将图像恢复为人类、机器学习可以识别的正常形状,直线曲线区别分明,也没有倒置的现象,这就是扭曲矫正引擎所负责的。但引擎能做的不仅仅是这些,除了能够矫正这些意外的干扰,同时它也可以矫正由于摄像头问题导致的图像不清晰、变形等。
; }' Q7 ~& B' Q& i2 X: |2 `: k4 q& [4 ^$ b& y8 T9 U
引擎同样可以对像素进行处理,获得更好的图像质量。针对i.MX8MPlus 的 ISP 架构我们的设计保证了所有的处理都以流的形式进行,也就是说ISP直接从摄像头接收图像进行处理,将它们输出到系统内存。ISP 几乎不需要从系统重新构建图像再进行处理输出,这样就可以带来非常低的延迟表现,以及非常高效的针对图像的处理表现。iSP 针对图像增强,进行了非常多的处理,比如降噪处理,这在暗光环境中非常重要。在这样的环境下,很多像素都会被进行涂抹,但你不能对太多区域都进行涂抹,否则你的图像将会变得非常模糊。所以你必须使用 ISP 来分辨,哪里是可以进行涂抹处理的,哪里则是需要清晰呈现的内容。其它的处理任务包括,检测图像传感器的坏点,确保正常工作,以及白平衡的调节,分辨出不同的光照环境,例如日光、灯光等等。还有提供信息,帮助自动曝光以及对焦,所有的这些都是由ISP 来完成的。
! |" B- H" O. K! p3 w4 M7 m+ r- r3 S; _
7 A- ^! R3 ]8 \) m, k1 J
- `/ @0 u' {" G. i5 G) m) }H.265视频编码
3 W* R$ @. [! u2 v% R$ ?$ B, l: m' Q2 ^5 n; F H+ k
0 V" U; Y6 O# M+ D
' q1 J- z8 D8 L' } c) f在许多应用中,摄像头接入系统,数据被送入机器学习算法或是直接被存储在网络中。不管图像被送入何处,它们还是需要被存储在某些地方,比如服务器或者是本地设备。你不可能直接保存原始文件,因为原始的文件实在是太大了,因此必须对数据进行编码,i.MX8M plus 的视频编码是非常高效的。我们支持 h.265编码算法,比起业内广泛使用的 h.264更加先进和高效。
# U6 _0 U- T& J+ V) Z8 ?* V+ L: } H& R Z' q
2 I+ g' o& m. l2 N( a7 k+ K: l9 u
, l: V) [: |$ P g- Z2 e
7 c& m. N r! u' m; w, {% z% \" ~% l$ y ?" J* [
8 J! O; ?( b! F* X/ o
8 U/ [; i9 a* U' g0 s![]() [backcolor=rgba(18, 18, 18, 0.5)] 4 `: K. j) A1 i) K$ H
! ?* B, X# W/ n9 R5 x5 K' ~
1 b- U- j( T4 u! i1 r
( L8 ?! n% X% h1 H6 _编辑切换为居中9 B$ ^. D. A, ~& ^
/ l4 l' P+ ~; M+ G) G; @* N- l6 d5 g9 p
8 }- ^5 {6 K4 h4 C1 H, ^2 W" r
n0 [" c/ V0 }$ x, m3 ?
添加图片注释,不超过 140 字(可选)
; g# U6 z' s6 \. D9 o* d& W6 R1 r
0 w$ I' b: u7 B2 r* n( f# u0 G8 N% `' X7 ^: K9 V
/ g3 f/ a+ S# N9 U7 u
9 k7 s: Q: D |
0 p. r5 J0 S% y K k% [; B$ Q' l$ }, z! E
iMX8M Plus在工业应用中的特色! V8 u# O0 t1 u0 @
. B/ T7 R; V; d8 j& o/ T$ T& y
! V9 a( z9 `& E1 e' j2 |
& i! h9 L ]# O( i% h
i.MX8M Plus有一些针对工业应用的特色,其一就是 ECC,也就是错误纠正代码。用来在用户无需感知的情况下,检测出内存的错误,甚至进行修复。! T/ h( e4 P- K2 {* ~, R D
3 f+ o, D ^, d/ A这异常的重要,因为在某些应用中内存的错误会带来严重的后果,虽然不会导致硬件的永久损坏,但当读取内存的软件和程序时有可能会崩溃。' d w$ f/ N o+ c
- ^! v7 T* R" f" ?# i& o; O$ a
为了避免这些情况的发生,你就需要ECC 来进行检测和修复,这样软件的错误率,也就是我们常说的 SER将会大大降低。i.MX8M Plus在缓存和片上RAM 中都带有ECC,而DRAM 总线还支持在线 ECC,它不需要存储任何额外的位,就能够将ECC 算法与主数据同时发送出去。" B, t( `- f3 g* i# H& ?$ y
* f$ ~6 }/ k+ w) B* Z
" s/ y. p) e: p9 X ~* i6 @+ N/ O) B4 k7 ~
TSN也是 i.MX8M plus 中的亮点,tsn 指的是时间敏感网络。在工业应用中你希望可以确保能够在对的时间点将数据发送出去,而通常以太网中任何人在任何时间都有可能正在发送数据。可能会造成拥堵,可能你需要晚一些再发一次,在工业应用中,这无疑是会带来问题的。而 TSN 则能够很好的解决这样的困扰。i.MX8M Plus同样也支持一些工业级的外设,我们甚至集成了800MHz的 Cortex-M7协处理器来协助组合。组合运行操作系统,M7内核同时可以进行一些实时性的控制,来确保低延迟。我们还有两路 CANFD用于本地与系统或是与网络低延迟的通信。1 T- Z* ]+ B/ I4 m: ^
) \2 }: Q2 P2 Z V* Ti.MX8M Plus所提供的所有的这些特性和外设,能够助力工业及应用的设计为工业应用带来无限的可能。
0 P3 E! W; F8 B" X/ s$ g2 e2 p
H8 h s( X4 [& V! @8 {7 H0 n & |: ~" G7 Q, X7 i' o- r
, @1 Z6 v/ K; K) k
如何测评 i.MX8MPlus
) X" R& `0 e6 O. Q% r
, e, T% w, R6 v+ E! S' V2 H3 L; J, r7 _. x/ z1 c
h' ^( M" z1 A2 X
作为NXP官方金牌合作伙伴,飞凌嵌入式与NXP深入合作,推出了基于i.MX 8M Plus处理器的开发套件OKMX8MP-C开发板与FETMX8MP-C核心板,除了继承了上述CPU能力外,飞凌嵌入式在iMX8MPlus核心板上还集成了LPDDR4、eMMC、PMIC等关键元器件,形成了可以独立运行的最小系统;同时,考虑低成本基础应用以及高端NPU应用的不同需求,DDR可选择2GB、4GB、6GB、8GB多种版本;这款核心板的优势不仅仅在于性能上,其功能也是十分的丰富,双千兆以太网、双CAN-FD、2个USB3.0、PCIe3.0、LVDS、HDMI、MIPI-DSI、MIPI-CSI等接口面面俱到。
1 o8 [3 W1 y. d2 D6 y& J! d$ k) S# M) J3 _3 j' I- d/ K. D3 l
原文链接:NXP(恩智浦)iMX8M Plus 处理器介绍 完整版/ U3 _. e1 n5 h) K
* M& l3 e( R( b; p9 G
q$ g1 K" n4 \. U* A/ g7 t |
|