|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
机器学习的本质是让计算机能够更有效率的模仿人类的行为,特别在图像分类、图像识别、语音识别等领域,机器学习能够在分秒之间,集中处理数以百万计的计算。过去在合理的成本下,这样的处理能力是无法想象的,直到最近几年才能够实现。这主要是因为,如若这些处理不在边缘实现,就要放到云端来进行。数据要被上传到云端,这样的话,我们就会担心谁会看到这些数据。我们相信云端服务期的运营商和负责人吗?显然答案是否定的,因此在本地进行边缘计算,用户隐私就能够更好的被保护,响应速度也会更快,可靠性也会更强,因为即便服务器断电,本地设备依然可以稳定工作,甚至设备可以在没有网络的偏远地区正常工作。
! i7 @* U# Z$ M T& Z7 ~- L9 m1 b4 c4 t1 ~5 H2 l+ y1 B
6 q3 Q$ d: F% L+ H3 W' }( R, r: O0 O, W* g2 m' T
, `, `+ \+ a9 ^: Y8 n
3 h. C1 `1 [3 [. t
( g1 A1 {7 D2 `, X. p x5 e& E$ {3 W' _: b0 A9 ~
![]()
2 U5 O# c8 A4 ] F9 F
7 t; b# Z7 Q( T/ [( F; _% v& f! X9 L( b" i( {8 d, K
% L4 l; W: X @! U6 d% l$ J
, N/ S; C% s7 r- y3 }- \+ A: H$ A" S
- R% f" }& s& M
$ c' q u) U+ A
* h+ p! {1 O, f9 @* ?& p/ d+ a8 J0 O8 v, y! Q# M+ J, \4 r$ ^) i2 X8 ]/ {
i.MX8M Plus 应用处理器$ G% n+ _5 c' C% J
" E, N0 |* S0 L2 h. g' V/ O0 x- Q
% D% T" ^' O) K8 A
6 ~$ D' T% `6 v1 E通过i.MX8M Plus ,NXP将机器学习带到了边缘设备中,这款产品不仅仅是达到了2万亿次每秒这样的强大计算能力。只是做到这样的计算性能并不困难,但NXP所实现的是带来了模型压缩的优化以及针对稀疏性的优化,稀疏指的是机器学习算法参数或者数据中有大量权重为0,进而能够避免在推理时支付这些模型系数的存储费用,计算效率将会大大增加。模型压缩同样也很重要,鉴于计算过程中存在大量的数据交换,如果足够压缩,那么对于系统内存的占用就会降到最低。另外同样牵涉到系统内存的一点是i.MX8M Plus 搭载 DRAM 控制器能够进行每秒4G 处理,是 NXP有史以来 DRAM 速度之最。& [. \' i/ P5 k# m, T/ f$ k
5 \, F3 c3 [7 Q0 K
/ b) V% W4 [+ _( ?% U9 z4 @, r5 _% V
i.MX8M Plus 与机器学习、机器视觉
7 K8 q }- a6 v& R( J% q! n" c2 D/ f$ I- Z
: u- _! g! a) r: P5 Z, j( i/ H
3 Q( ?7 d5 H& `" b9 v4 o
机器学习是基于图像数据的,数据的来源通常是一个系统中的摄像头模块,而摄像头模块需要一个图像处理单元,也就是ISP。谈到 i.MX8M Plus 的ISP 单元,在很多系统中,摄像头可能距离目标非常远,为了得到你需要的细节,其分辨率必须足够高,比如4K分辨率,也就是800万像素。7 I9 E! p/ L/ B) b5 A
8 L9 `* X4 ]) [. Q6 x
) o8 A* c8 i, ]7 f
^ t% z, u1 k* Y6 n; b/ `
8 Z8 n2 M# y" F- h5 t' T
5 _8 D0 G$ ]5 X3 I$ o3 k( j" ^) J8 S( x) M2 e% i
" b8 Q; M4 U' I% }0 l1 t* \ 7 J/ @. g, Z. F
9 v/ S8 D1 s6 R) W$ l* E X w8 J
' S4 @: B ^/ @/ l& P! m) N/ z- K- G5 z: |
$ a$ B- v9 l5 R( V8 I( H2 g* t* w9 t3 e. P
% r- G. j* r" Q, Q
6 u- N' [$ I! V% l. f9 W
6 q5 m( j; Z* C' E6 ~
2 e5 ?( c* h5 j; W7 c' H3 E% O8 O
, T9 f: T T- [* H& k8 s" A8 [处理如此高清的影像数据,就需要ISP 的协助。可能对于低分辨率的视频,ISP 并非必需,在很多系统中,用户可能并没有意识到,摄像模块是否集成ISP。但在高分辨率下,就需要 ISP 被集成在处理器中,就像i.MX8M Plus 这样。有趣的是,NXP i.MX8MPlus 中实际上集成了两个 ISP,两路摄像头输入。因而在大多数的应用场景下,将会获得更立体的图像,就像人的两只眼睛一样,可以感知图像的深度。另外一个应用是两路摄像头,其一作为广角或者鱼眼视角,另一路则聚焦某一场景的特写。除此之外,还有其它的应用需要用到这样的功能。
& l4 N. E% X. C7 z& ~( R M1 l, ?3 [
图像处理需要很强的计算能力,ISP的功能理论上也可以由 CPU 或 GPU 来实现,但要将这样的计算量,将这些数据转化为系统可识别的形式和参数再进行计算和处理,涉及到的工作量太大了。因此在这样的系统下,必须使用一个专门处理图像任务的单元,也就是 ISP,就像 i.MX8M Plus所做的那样。
* R; R& }' l8 K5 P( x2 u& {: I2 E4 n) Z. K* d7 h% Y0 ]5 g2 z
3 Y4 i; R" C9 p1 n- r) f, D) M& R5 [$ P. }4 z% \
i.MX8M Plus 高动态范围(HDR)支持
# N" h, {7 F4 z& S) q
& u8 a* P# h: L6 n Z! v6 l" [* N @' \. v. Q8 ?4 J K+ w
, V- e/ k' U2 t" |( j% g( _6 b
i.MX8MPlus还有一个重点是HDR,也就是高动态范围,你可能在很多手机上看到过这个词,但在嵌入式应用以及消费类产品甚至工业应用中HDR 都非常重要。HDR 主要是融合多重曝光的图像,具体表现为拍摄亮度不同的两张图像,一张是长曝光,一张是短曝光,其中一张能够帮助获得更好的高光部分的细节,另一张则获得更好的低亮度区域的细节。甚至可以拍三张或者更多,来融合成为一张图像。这样高光和暗部的细节都可以保留,这在某些特定场景中非常重要,比如在家里,窗户边很亮,有的地方却很暗,有了 HDR,所有的细节你都可以看清楚。
7 ~1 r. f3 x, G3 y* P6 P' N2 n1 c+ K/ S W
% p9 k! ], ~' M, U) N
* L& k- H; o; _# j2 L
9 D" Z o5 u) w* l+ k) }& I+ N# C4 Q2 [) j q. ] U! `# v3 z7 n
, D! c6 l. b: R6 J! O- a5 \0 \
% D- [3 `* b4 e: w4 R$ N
![]()
9 X) p3 L% X7 \- Y; O9 h$ f, W5 u0 a) K2 d6 y- l
6 T/ t& s$ Q7 d- j6 b" ~
/ T9 e7 ?& M8 d' R% n" d2 B- X, }; s3 O; V3 r% w
+ f) Q. V) M5 f; z+ Z- ~+ c0 W/ @) O* Q& a- W3 M
& U/ a3 Q: R) b; z. d" s
! |5 F& x# e- u* f" n% ?% ~0 K, g3 `; Q U9 c" `0 }0 l4 W& r" u- G0 F0 D
扭曲矫正带来更好的图像
- O8 O( o* L& E* Q, `6 b1 n6 m5 h1 r% I. y8 d6 I
1 y& a7 M" f* ^) ~7 r5 [% \3 }8 J* l, M; {8 A1 {; Y
在摄像头相关应用中,扭曲矫正是一个非常重要的功能。摄像头接收到的图像可能是扭曲的,类似观看鱼缸的场景。你可以看到很多的东西,但它们都是扭曲的。扭曲矫正,可以将图像恢复为人类、机器学习可以识别的正常形状,直线曲线区别分明,也没有倒置的现象,这就是扭曲矫正引擎所负责的。但引擎能做的不仅仅是这些,除了能够矫正这些意外的干扰,同时它也可以矫正由于摄像头问题导致的图像不清晰、变形等。. U* m1 W ~: L* @1 Y
$ I: f- u T& S2 \. @4 Y5 K
引擎同样可以对像素进行处理,获得更好的图像质量。针对i.MX8MPlus 的 ISP 架构我们的设计保证了所有的处理都以流的形式进行,也就是说ISP直接从摄像头接收图像进行处理,将它们输出到系统内存。ISP 几乎不需要从系统重新构建图像再进行处理输出,这样就可以带来非常低的延迟表现,以及非常高效的针对图像的处理表现。iSP 针对图像增强,进行了非常多的处理,比如降噪处理,这在暗光环境中非常重要。在这样的环境下,很多像素都会被进行涂抹,但你不能对太多区域都进行涂抹,否则你的图像将会变得非常模糊。所以你必须使用 ISP 来分辨,哪里是可以进行涂抹处理的,哪里则是需要清晰呈现的内容。其它的处理任务包括,检测图像传感器的坏点,确保正常工作,以及白平衡的调节,分辨出不同的光照环境,例如日光、灯光等等。还有提供信息,帮助自动曝光以及对焦,所有的这些都是由ISP 来完成的。
# \2 M" i! ^8 S
2 j4 P) g& B+ T4 N7 x O
# f' i- K/ l5 ~. [0 @
9 Y0 r! k; w/ } V/ @: UH.265视频编码
/ s8 H. K* E0 U8 G7 x. {3 @" y0 q( l4 b
: j9 E' W6 D: a
# W4 C5 S3 e% f1 T: I+ R; t在许多应用中,摄像头接入系统,数据被送入机器学习算法或是直接被存储在网络中。不管图像被送入何处,它们还是需要被存储在某些地方,比如服务器或者是本地设备。你不可能直接保存原始文件,因为原始的文件实在是太大了,因此必须对数据进行编码,i.MX8M plus 的视频编码是非常高效的。我们支持 h.265编码算法,比起业内广泛使用的 h.264更加先进和高效。* E5 ~! [, F, L
9 t* }. P& }& h. g: s: C5 A% G
, a' `, z- |8 }5 `* I+ j2 H" b2 K4 _# g/ O
+ C3 w. |0 v+ q& d, k
% E9 Y2 I) ?8 E1 S. C' B2 d
2 X1 j" p4 j5 j, }1 K
/ I6 `/ y$ h0 i! @1 F4 { : ^3 K, _# q. i& ~9 t
& f& [# |" m& M1 Q H8 }
% U- p) z/ N( j" Q. ]
9 z: Z) }4 U3 M d+ I& O3 d
2 Y& ?7 t9 F6 B* c; e t w' C$ k
. j7 G' S X# s; D9 f: X ^
3 D4 V- E% T+ K* M
3 C3 A- g. x$ |" Y/ D* n2 E * S' H+ e, Z7 N$ Q1 B1 u
, F# `1 t' q! ?) A6 c
iMX8M Plus在工业应用中的特色
) M; l( G- U* ^0 g y' y6 M& @+ X1 K$ [1 { [! W
3 S% ^: X) o+ p1 b7 V
! m' ~0 {: w) l7 i3 mi.MX8M Plus有一些针对工业应用的特色,其一就是 ECC,也就是错误纠正代码。用来在用户无需感知的情况下,检测出内存的错误,甚至进行修复。* ^9 }5 E4 ^ c4 W1 S; d
$ s4 E# X( p- v
这异常的重要,因为在某些应用中内存的错误会带来严重的后果,虽然不会导致硬件的永久损坏,但当读取内存的软件和程序时有可能会崩溃。
4 B: d+ _- e, t( g& E# @' p) B y4 d$ {
为了避免这些情况的发生,你就需要ECC 来进行检测和修复,这样软件的错误率,也就是我们常说的 SER将会大大降低。i.MX8M Plus在缓存和片上RAM 中都带有ECC,而DRAM 总线还支持在线 ECC,它不需要存储任何额外的位,就能够将ECC 算法与主数据同时发送出去。
4 T/ ~7 Z& J" A
7 Q; [4 j" N. t8 G
' C/ j2 E# U8 w7 r$ Y, |) z9 A$ ]6 n; c* _1 E1 c" x
TSN也是 i.MX8M plus 中的亮点,tsn 指的是时间敏感网络。在工业应用中你希望可以确保能够在对的时间点将数据发送出去,而通常以太网中任何人在任何时间都有可能正在发送数据。可能会造成拥堵,可能你需要晚一些再发一次,在工业应用中,这无疑是会带来问题的。而 TSN 则能够很好的解决这样的困扰。i.MX8M Plus同样也支持一些工业级的外设,我们甚至集成了800MHz的 Cortex-M7协处理器来协助组合。组合运行操作系统,M7内核同时可以进行一些实时性的控制,来确保低延迟。我们还有两路 CANFD用于本地与系统或是与网络低延迟的通信。
# x: y1 D; E, g2 r! R. m- G9 ^" J/ Y' {' l0 A. `
i.MX8M Plus所提供的所有的这些特性和外设,能够助力工业及应用的设计为工业应用带来无限的可能。
; Y8 ]" b% p8 l4 @8 ~
# s% j0 E7 ~ h* P* F : `, e: b3 A& E9 H; b+ U+ ]
6 ]+ @8 V: U: }* c% c5 [; A# L; {9 i如何测评 i.MX8MPlus
% D. `* ^5 H' ? K: w k' R/ e! s* P X1 [' ^% V2 l( @, E
5 P7 P5 p/ v( O0 l+ p* b
8 T/ u# F% g/ w# v) u作为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等接口面面俱到。
) ~5 X' R; g/ a' R4 H: N+ ^7 E8 [& X) M; C0 E' @% D+ y1 x
, C6 I* T! {# u8 O# b
" }1 x! R/ @; [/ q4 O* p/ e) ~' N. a# Q! F4 s1 C. }
0 ?; I0 A3 V& c, r
' p* V* X' t& i$ P& {: e
8 f, ?& S7 d7 G% @* |; B1 G: V5 `1 ?6 R5 m7 x2 J! c1 U4 E
6 _" _5 w; |0 v2 S3 }9 S# h A. ^6 r
6 x( ~4 O+ s; a( x1 o9 \% z
' P" s2 X3 W9 u& x: ` |
|