CN115714915A - 基于人工智能的图像稳定化方法及其相机模块 - Google Patents

基于人工智能的图像稳定化方法及其相机模块 Download PDF

Info

Publication number
CN115714915A
CN115714915A CN202210961410.7A CN202210961410A CN115714915A CN 115714915 A CN115714915 A CN 115714915A CN 202210961410 A CN202210961410 A CN 202210961410A CN 115714915 A CN115714915 A CN 115714915A
Authority
CN
China
Prior art keywords
data
neural network
stabilization
artificial neural
camera module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210961410.7A
Other languages
English (en)
Inventor
金錄元
金有俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tipu Aikesi Co ltd
Original Assignee
Tipu Aikesi Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020220064967A external-priority patent/KR20230026246A/ko
Application filed by Tipu Aikesi Co ltd filed Critical Tipu Aikesi Co ltd
Publication of CN115714915A publication Critical patent/CN115714915A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • H04N23/683Vibration or motion blur correction performed by a processor, e.g. controlling the readout of an image memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • H04N23/685Vibration or motion blur correction performed by mechanical compensation
    • H04N23/687Vibration or motion blur correction performed by mechanical compensation by shifting the lens or sensor position
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B5/00Adjustment of optical system relative to image or object surface other than for focusing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/092Reinforcement learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/12Details of acquisition arrangements; Constructional details thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02KDYNAMO-ELECTRIC MACHINES
    • H02K41/00Propulsion systems in which a rigid body is moved along a path due to dynamo-electric interaction between the body and a magnetic field travelling along the path
    • H02K41/02Linear motors; Sectional motors
    • H02K41/035DC motors; Unipolar motors
    • H02K41/0352Unipolar motors
    • H02K41/0354Lorentz force motors, e.g. voice coil motors
    • H02K41/0356Lorentz force motors, e.g. voice coil motors moving along a straight path
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/50Constructional details
    • H04N23/54Mounting of pick-up tubes, electronic image sensors, deviation or focusing coils
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/50Constructional details
    • H04N23/55Optical parts specially adapted for electronic image sensors; Mounting thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/681Motion detection
    • H04N23/6812Motion detection based on additional sensors, e.g. acceleration sensors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • H04N23/685Vibration or motion blur correction performed by mechanical compensation
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/64Imaging systems using optical elements for stabilisation of the lateral and angular position of the image
    • G02B27/646Imaging systems using optical elements for stabilisation of the lateral and angular position of the image compensating for small deviations, e.g. due to vibration or shake
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B2205/00Adjustment of optical system relative to image or object surface other than for focusing
    • G03B2205/0007Movement of one or more optical elements for control of motion blur
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B2205/00Adjustment of optical system relative to image or object surface other than for focusing
    • G03B2205/0053Driving means for the movement of one or more optical element
    • G03B2205/0069Driving means for the movement of one or more optical element using electromagnetic actuators, e.g. voice coils

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Signal Processing (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Neurology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Combustion & Propulsion (AREA)
  • Power Engineering (AREA)
  • Electromagnetism (AREA)
  • Chemical & Material Sciences (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Studio Devices (AREA)

Abstract

涉及一种基于人工智能的图像稳定化方法及其相机模块。提供了一种基于人工智能的图像稳定化的方法。该方法包括:从两个或更多个传感器获取关于图像的震动检测数据;使用人工神经网络模型输出稳定化数据,该人工神经网络模型被训练为基于震动检测数据而输出用于补偿图像抖动的稳定化数据;以及使用稳定化数据补偿图像抖动。

Description

基于人工智能的图像稳定化方法及其相机模块
技术领域
本发明涉及一种图像稳定化方法及其相机模块,并且特别地,涉及一种基于人工智能的图像稳定化方法及其相机模块。
背景技术
图像稳定器(IS)应用于相机以补偿相机抖动,从而解决由于人手抖动而导致的拍摄的图像模糊的问题。
图像稳定技术包括光学图像稳定器(OIS)和使用图像传感器的稳定化技术。
应用了OIS技术的相机模块通过诸如陀螺仪传感器的导航传感器来检测振动,并使用检测线圈和磁体之间的间距(separation)变化的霍尔传感器来产生补偿信号。基 于补偿信号,图像抖动得以稳定。
特别地,相机模块可以通过使用以下方法来补偿振动:固定图像传感器并使镜头移位以补偿振动的镜头移动方法,以及同时倾斜图像传感器和镜头以补偿振动的相机 旋转方法。
发明内容
[技术方案]
通常,OIS***可以实现为其上固定有镜头和图像传感器两者的OIS***或其上固定有图像传感器的OIS***。
具体地,其中镜头和图像传感器固定在一起的相机倾斜架构型OIS***可以包括光电传感器和致动器,并且可以通过使镜头和图像传感器同时固定到其上的结构倾斜 来对图像抖动进行稳定。
具体地,其中固定有传感器的桶形移位架构型OIS***可以包括致动器、霍尔传感器和磁体,并且可以通过利用磁体使镜头移位来对图像抖动进行稳定。
该OIS***使用基于检测图像抖动的传感器的检测信号来生成稳定化信号的简单反馈算法来执行稳定化。
本公开的发明人已经认识到,如果使用这种简单的反馈算法来执行稳定化,则算法的性能可能会受到限制。
因此,本公开的一个目的是提供一种基于人工智能的图像稳定化方法及其相机模块,该方法能够最大化用于补偿图像抖动的操作的处理速度并降低功耗。
因此,本公开的另一目的是提供一种基于人工智能的图像稳定化方法及其处理器, 该方法能够最大化用于补偿图像抖动的操作的处理速度并降低功耗。
因此,本公开的又一目的是提供一种基于人工智能的图像稳定化方法及其处理器, 该方法能够通过人工智能强化学习来补偿各种使用环境中的多个震动模式。
因此,本公开的又一目的是提供一种基于人工智能的图像稳定化方法和设备,该方法和设备能够通过人工智能训练最大化用于补偿图像抖动的操作的处理速度并降 低功耗。
因此,本公开的又一目的是提供一种基于人工智能的图像稳定化方法和设备,该方法和设备能够通过利用人工智能技术训练特定模式来最大化用于补偿图像抖动的 操作的处理速度并降低功耗。
然而,本公开不限于此,并且本领域技术人员将从以下描述清楚地理解其他问题。
可以提供一种基于人工智能的图像稳定化的方法。该方法可以包括:从两个或更多个传感器获取关于图像的震动检测数据;使用人工神经网络模型输出稳定化数据, 该人工神经网络模型被训练为基于震动检测数据而输出用于补偿图像抖动的稳定化 数据;以及使用稳定化数据补偿图像抖动。
人工神经网络模型可以基于强化学习。
震动检测数据可以包括用于检测相机模块和镜头的位置变化的信号。
两个或更多个传感器可以包括陀螺仪传感器和霍尔传感器。
人工神经网络模型可以是基于用于学习的训练数据的经训练的模型,使得由于图像抖动导致的误差值收敛到预定值。
人工神经网络模型可以通过接收震动检测数据作为输入而输出用于控制相机模块中包括的镜头的移动以补偿图像抖动的控制信号。
人工神经网络模型可以通过接收震动检测数据作为输入而输出用于控制相机模块中包括的图像传感器的移动以补偿图像抖动的控制信号。
人工神经网络模型可以接收震动检测数据作为输入,以同时执行用于推断稳定化数据的训练操作和针对稳定化数据的推断操作。
人工神经网络模型可以包括输入了震动检测数据的输入节点、用于执行输入节点的人工智能(AI)操作的隐藏层、以及用于输出稳定化数据的输出节点。
可以提供一种相机模块。该相机模块可以包括:镜头;图像传感器,其被配置为 输出通过镜头捕获的图像;两个或更多个传感器,其被配置为输出震动检测数据;控 制器,其被配置为基于震动检测数据而输出稳定化数据;以及稳定化单元,其被配置 为使用稳定化数据来补偿图像抖动,其中,控制器被配置为使用人工神经网络模型输 出稳定化数据,人工神经网络模型被训练为基于震动检测数据而输出稳定化数据。
两个或更多个传感器可以包括陀螺仪传感器、霍尔传感器和光电传感器中的至少两个。
震动检测数据可以包括通过陀螺仪传感器的x轴和y轴旋转移动以及霍尔传感器的x轴和y轴旋转移动检测的信号。
可以根据震动检测数据训练人工神经网络模型,使得由于图像抖动导致的误差值收敛到预定值。
误差值可以基于陀螺仪传感器的x轴移动和霍尔传感器的x轴移动之间的差以及陀螺仪传感器的y轴移动和霍尔传感器的y轴移动之间的差。
经训练的模型可以包括第一模型和第二模型,第一模型被训练为基于震动检测数据而推断其中误差值收敛到预定值的稳定化数据,第二模型被训练为评价稳定化数据 的结果。
控制器可以被配置为通过训练收集误差值,并且使用收集的误差值更新人工神经网络模型。
相机模块可以包括用于感测温度的温度传感器。
控制器可以被配置为基于震动检测数据和通过温度传感器获取的温度数据,使用人工神经网络模型输出稳定化数据。
震动检测数据可以包括:通过陀螺仪传感器的x轴和y轴旋转移动以及霍尔传感器的x轴、y轴和z轴旋转移动检测的信号。
控制器可以被配置为:根据图像的频率分量获得散焦量数据,并且基于震动检测数据和散焦量数据,使用人工神经网络模型输出稳定化数据。
人工神经网络模型可以使用图像的调制传递函数(MTF)数据作为用于训练的训练数据。
[有益效果]
根据本公开,通过使用人工神经网络模型来推断用于补偿图像抖动的补偿信号,可以最大化稳定化速度并降低功耗。
此外,根据本公开,通过使用人工神经网络模型考虑各种变量(例如温度、散焦量、图像的MTF等)以及传感器的检测信号来补偿图像抖动,可以提供具有提高的 精度的图像稳定化方法。
此外,根据本公开,可以通过执行焦点调节以及图像稳定化来提供具有提高的效率的图像稳定化方法。
此外,根据本公开,可以通过处理经过训练的人工神经网络模型的处理器来快速提供图像稳定化。
此外,根据本公开,可以在通过处理经过训练的人工神经网络模型的推断专用处理器来快速提供图像稳定化的同时减少功耗。
此外,根据本公开,可以通过由人工智能强化学习训练的各种使用环境的多个震动模式来执行图像稳定化。
附图说明
图1是示出包括根据本公开的一个示例的相机模块的设备的示意概念图。
图2是示出根据本公开的一个示例的相机模块的示意概念图。
图3是示出根据本公开的一个示例的人工神经网络模型的示意概念图。
图4是示出根据本公开的一个示例的人工神经网络模型的训练方法的示意概念图。
图5是示出根据本公开的一个示例的人工神经网络模型的特定训练操作的示意概念图。
图6是示出根据本公开的一个示例的使用经过训练的人工神经网络模型来补偿图像抖动的方法的示意概念图。
图7是示出根据本公开的另一示例的人工神经网络模型的示意概念图。
图8是示出根据本公开的另一示例的人工神经网络模型的训练方法的示意概念图。
图9是示出根据本公开的另一示例的使用经过训练的人工神经网络模型来补偿图像抖动的方法的示意概念图。
图10是示出根据本公开的另一示例的相机模块的示意概念图。
图11是示出根据本公开的另一示例的人工神经网络模型的示意概念图。
图12是示出根据本公开的另一示例的人工神经网络模型的训练方法的示意概念图。
图13是示出根据本公开的另一示例的人工神经网络模型的特定训练操作的示意概念图。
图14是示出根据本公开的另一示例的使用经过训练的人工神经网络模型来补偿图像抖动的方法的示意概念图。
图15是示出本公开的一个示例中的相机模块的图像稳定化的方法的流程图。
图16是示出根据本公开的神经处理单元的示意概念图。
具体实施方式
在本公开或本申请中公开的根据本公开的构思的示例的特定的结构描述或逐步描述仅仅是为了解释根据本公开的构思的示例的目的而例示的。
根据本公开的构思的示例可以以各种形式实施,并且不应被解释为限于本公开或本申请中描述的示例。
由于根据本公开的构思的示例可以具有各种修改并且可以具有各种形式,所以特定示例将在附图中示出,并且在本公开或本申请中详细描述。然而,这并不旨在针对 特定的公开形式来限制根据本公开的构思的示例,并且应当理解为包括落入本公开的 精神和范围内的所有修改、等同物和替代物。
诸如第一和/或第二的术语可以用来描述各种元件,但是这些元件不应受到这些术语所限制。
上述术语仅是为了例如将一个元件与另一个元件区分开,并且在不脱离根据本公开的构思的范围的情况下,第一元件可以称为第二元件,并且类似地,第二元件也可 以称为第一元件。
当元件被称为与另一个元件“连接”或“接触”时,应当理解,该元件可以直接与该另一个元件连接或接触,但是其间也可以设置其他元件。另一方面,当提到某个元件 与另一个元件“直接连接”或“直接接触”时,应当理解其间不存在其他元件。
描述元件之间的关系的其他表述(例如,“在……之间”和“紧接在……之间”或“与……相邻”和“与……直接相邻”等)应当类似地进行解释。
在本文献中,诸如“A或B”、“A或/和B中的至少一个”或“A或/和B中的一个或 更多个”的表述可以包括一起列出的项的所有可能的组合。例如,“A或B”、“A和B 中的至少一个”或“A或B中的至少一个”可以指(1)包括至少一个A,(2)包括至少 一个B,或(3)包括至少一个A和至少一个B两者中的所有情况。
如本文所使用的那样,诸如“第一”、“第二”、“第一或第二”的表述可以修饰各种元素,而与顺序和/或重要性无关。此外,这种表述仅用于区分一个组件和其他组件, 而非限制这些组件。
例如,第一用户设备和第二用户设备可以代表不同的用户设备,而与顺序或重要性无关。例如,在不脱离本文献中描述的权利范围的情况下,第一组件可以被命名为 第二组件,并且类似地,第二组件也可以被重命名为第一组件。
本公开中使用的术语仅用于描述特定示例,而并不旨在限制其他示例的范围。
单数表述可以包括复数表述,除非上下文另有明确规定。本文使用的术语(包括技术术语或科学术语)可以具有与本文献中描述的本领域普通技术人员通常所理解的 含义相同的含义。
在本文献中使用的术语中,在通用词典中定义的术语可以被解释为具有与相关技术的背景中的含义相同或相似的含义。此外,除非在本文献中明确定义,否则不应以 理想或过于形式的意义来解释这些术语。在某些情况下,即使本文献中定义的术语也 不能被解释为排除本文献的示例。
本文使用的术语仅用于描述特定的示例,而并不旨在限制本公开。
单数表述包括复数表述,除非上下文另有明确规定。在本说明书中,诸如“包括”或“具有”的术语旨在表示所述及的特征、数量、步骤、动作、组件、部件或其组合的 存在。因此,应当理解,不排除一个或更多个其他特征或数量、步骤、操作、组件、 部件或其组合的存在或添加。
除非另有定义,否则本文使用的所有术语(包括技术术语或科学术语)具有与本公开所属领域的普通技术人员通常所理解的含义相同的含义。
术语(例如,在常用词典中定义的术语)应当被解释为具有与相关技术的上下文中的含义一致的含义,并且不应被解释为理想的或过于形式的含义,除非在本公开中 明确定义。
如本领域技术人员将完全理解的那样,本公开的各种示例的每个特征可以部分或全部组合或彼此组合,并且可以在技术上进行各种互锁和驱动。此外,每个示例可以 彼此独立地实现,或者可以以相关的关系一起实现。
在描述示例时,可以省略对在本公开所属的技术领域中公知的并且与本公开不直接相关的技术内容的描述。这是为了更清楚地传达本公开的要点,而不会因为省略了 不必要的描述而模糊本公开的要点。
在下文中,将通过参照附图描述本公开的优选示例来详细描述本公开。在下文中,将参照附图详细描述本公开的示例。
图1是示出根据本公开的一个示例的包括相机模块的装置的示意概念图。
参照图1,设备A可以包括相机模块1000。
设备A可以包括相机模块1000、处理器140和第一存储器3000。根据各种示例, 设备A可以被配置为还包括与第一存储器3000分开的第二存储器4000。也就是说, 设备A可以被配置为选择性地包括或排除第二存储器4000。
相机模块1000是用于拍摄图像的单元,并且可以包括用于检测和补偿图像抖动的OIS***。例如,OIS***可以包括至少两个或更多个用于检测图像抖动的传感器 和用于补偿图像抖动的补偿单元。
具体地,OIS***可以包括作为运算单元的处理器140。处理器140可以用各种 修改来实现。
例如,处理器140可以是诸如中央处理单元(CPU)或应用处理器(AP)的计 算装置。
例如,处理器140可以是诸如微处理单元(MPU)的计算装置。
例如,处理器140可以是诸如微控制器单元(MCU)的计算装置。
例如,处理器140可以是诸如神经处理单元(NPU)的计算装置。
例如,处理器140可以是诸如图像信号处理器(ISP)的计算装置。
例如,处理器140可以是集成了诸如CPU和NPU的各种计算装置的片上*** (SoC)。
例如,处理器140可以实现为集成了上述计算装置的集成芯片(IC)的形式。然 而,本公开的示例不限于处理器140。
处理器140可以与相机模块1000和第一存储器3000可操作地通信。此外,处理 器140可以与第二存储器4000可操作地通信。
处理器140可以对应于诸如CPU或AP的计算装置。此外,处理器140可以实 现为集成芯片的形式,例如集成了各种计算装置(例如,CPU、GPU和NPU)的SoC。 在各种示例中,处理器140可以作为OIS***的计算装置进行操作。
处理器140可以实现为集成芯片的形式,在该集成芯片中集成了例如ISP和CPU 各种运算装置,各种运算装置接收作为相机模块的输出图像的拜耳图案并且输出转换 成RGB图像或YUV图像的数据。
也就是说,根据本公开的示例的处理器140可以指专用处理器和/或集成的异构处理器。
相机模块1000可以实现为与处理器140集成的集成芯片的形式。
第一存储器3000是安装在半导体管芯上的存储器,并且可以是用于缓存或存储在片上区域中处理的数据的存储器。第一存储器3000可以包括诸如ROM、SRAM、 DRAM、电阻RAM、磁阻RAM、相变RAM、铁电RAM、闪存存储器和高带宽存 储器(HBM)的存储器中的一种。第一存储器3000可以包括至少一个存储单元。第 一存储器3000可以被配置为同构存储单元或异构存储单元。
第一存储器3000可以被配置为内部存储器或片上存储器。
第二存储器4000可以包括诸如ROM、SRAM、DRAM、电阻RAM、磁阻RAM、 相变RAM、铁电RAM、闪存存储器和HBM的存储器中的一种。第二存储器4000 可以包括至少一个存储单元。第二存储器4000可以被配置为同构存储单元或异构存 储单元。
第二存储器4000可以被配置为主存储器或片外存储器。
在下文中,将参照图2详细描述相机模块1000。
图2是示出根据本公开的一个示例的相机模块的示意概念图。
参照图2,相机模块1000可以包括镜头100、图像传感器110、第一传感器120、 VCM驱动器(例如,音圈电机驱动器)130、处理器140和VCM致动器200。
然而,如图1所示,处理器140可以包括在相机模块1000中,或者被配置为设 置在相机模块1000外部。也就是说,图2的处理器140可以从相机模块1000中排除, 并且处理器140可以被配置为从外部与相机模块1000通信。
镜头100被配置为在收集或分布来自对象的光时形成光学图像。图像传感器110是将通过镜头接收的光转换成数字信号的组件,并且可以包括电荷耦合器件(CCD) 传感器、互补金属氧化物半导体(CMOS)传感器等。
第一传感器120是用于检测相机模块1000或设备A的抖动的传感器。第一传感 器120可以是测量对象的旋转速度的角速度传感器,例如陀螺仪传感器。换句话说, 通过第一传感器120获得的移动信号可以包括关于第一传感器120的x轴移动和y 轴移动的信息。
VCM驱动器130可以被配置为向VCM致动器200发送控制信号,以正确地调 节镜头100的位置。
VCM致动器200可以包括镜头架210、磁体220、第二传感器230、线圈架240 和线圈250。
具体地,镜头架210可以被配置为安装镜头100,并且磁体220可以被配置为使 用磁力来调节镜头100的位置。
第二传感器230是用于检测VCM致动器200的抖动的传感器,并且可以是用于 检测OIS线圈250和磁体220之间的间距变化的霍尔传感器。
线圈架240被配置为使得OIS线圈250被安装,并且OIS线圈250被设置成与 磁体220相对以控制磁体220的磁力。
处理器140可以被配置为考虑镜头100、图像传感器110、第一传感器120、VCM 驱动器(例如,音圈电机驱动器)130和VCM致动器200来处理相机模块1000的整 体操作。
具体地,处理器140可以被配置为通过人工神经网络来执行用于补偿图像抖动的操作。
具体地,处理器140可以分别从相机模块1000中包括的至少两个或更多个传感 器(即,第一传感器120和第二传感器230)获得移动信号(即,震动(tremor)检 测信号)。处理器140可以使用人工神经网络模型来生成推断的补偿信号,该人工神 经网络模型被训练为基于每个获得的移动信号来推断用于补偿图像抖动的补偿信号。 可以基于由处理器140推断的补偿信号来补偿图像抖动。
这里,移动信号可以包括霍尔传感器的x轴值和y轴值以及陀螺仪传感器的x 轴值和y轴值。此外,处理器140还可以包括内部存储器(未示出)并存储用于补偿 图像抖动的各种数据。
根据本公开的各种示例,相机模块1000可以实现为包括NPU和NPU存储器的 边缘装置。
在下文中,将参照图3至图6详细描述由处理器140使用人工神经网络模型来补 偿图像抖动的方法。
图3是示出根据本公开的一个示例的人工神经网络模型的示意概念图。
参照图3,人工神经网络模型300可以接收作为震动检测数据310的输入数据, 其包括通过第一传感器120获得的相机模块1000的移动信号和通过第二传感器230 获得的镜头100的移动信号。
详细而言,由于图像传感器110固定到相机模块1000,所以当通过第一传感器 120感测到相机模块1000的震动时,可以实质上检测到图像传感器110的震动。因 此,可以通过检测相机模块1000的震动来实质上感测图像传感器110的震动。
具体地,由于镜头100固定到镜头架210,所以当通过第二传感器230感测到镜 头架210的震动时,可以实质上检测到镜头100的震动。因此,可以通过检测镜头架 210的抖动来实质上感测镜头100的抖动。
这里,震动检测数据例如可以包括针对相机模块1000的x轴旋转角和y轴旋转 角,以及针对VCM致动器200的x轴旋转角和y轴旋转角。
在此意义上,VCM致动器200的震动检测数据实际上表示镜头100的震动检测 数据。
此外,尽管在图2中示出了镜头100包括在相机模块1000中,但是这仅考虑了 在相机模块1000中的镜头100功能,并且应当理解,镜头100固定到镜头架210。
在本公开的示例中,人工神经网络模型300可以接收震动检测数据310,推断用 于补偿图像抖动的稳定化数据,并且输出推断的稳定化数据320。
VCM驱动器130可以接收推断的稳定化数据320,并且输出用于使镜头100的 抖动稳定的控制信号。例如,人工神经网络模型300还可以包括用于将稳定化数据 320转换成控制信号的转换单元,并且稳定化数据320可以通过转换单元转换成控制 信号并且输出。
根据本公开的各种示例,稳定化数据320可以作为用于控制VCM驱动器130的 控制信号输出,以基于推断的稳定化数据320补偿图像传感器110的位置。在本公开 的示例中,稳定化数据320可以作为用于补偿镜头100和图像传感器110的位置的控 制信号输出。
在本公开的示例中,人工神经网络模型300可以是要通过强化学习而训练的模型。
例如,人工神经网络模型300可以是诸如RNN、CNN、DNN、MDP、DP、MC、 TD(SARSA)、QL、DQN、PG、AC、A2C、A3C等的模型。
然而,本公开不限于此,并且可以是被训练成通过输入震动检测数据作为输入来推断位置补偿数据的各种人工神经网络模型。
根据本公开的各种示例的人工神经网络模型300可以是从多个人工神经网络模型中选择的模型。多个人工神经网络模型可以表示将在后面描述的行为者(Actor) 模型。
在下文中,将参照图4详细描述训练人工神经网络模型的方法。
图4是示出根据本公开的一个示例的人工神经网络模型的训练方法的示意概念图。在所呈现的示例中,假设人工神经网络模型400是基于强化学习的模型,例如行 为者-评价者(Actor-Critic)模型。具体地,下面将要描述的操作可以由处理器140 执行。
参照图4,可以训练人工神经网络模型400以在给定环境或状态下选择最优动作。
这里,人工神经网络模型400可以基于行为者-评价者算法。人工神经网络模型400可以包括当在给定环境中给出状态S时确定动作的第一模型(例如,行为者模型), 以及评价状态S的值的第二模型(例如,评价者模型)。
给定环境可以包括当前状态St、下一可选状态St+1、在任何条件下都可以采取 的动作a、在某个状态下进行的动作的奖励r、以及确定在给定状态下采取特定动作 的概率的策略。
具体地,通过传感器410获得相机模块1000的第一移动信号θYaw和θPitch,以 及镜头100的第二移动信号θHSx和θHSy。这里,第一移动信号θYaw和θPitch可以 从第一传感器120获得,并且第二移动信号θHSx和θHSy可以从第二传感器230获 得。
例如,第一移动信号θYaw和θPitch可以包括针对相机模块1000的x轴旋转角 θPitch和y轴旋转角θYaw。
例如,第二移动信号θHSx和θHSy可以包括针对镜头100的x轴旋转角θHSx 和y轴旋转角θHSy。
这里,第一移动信号θYaw和θPitch是用于实质上检测图像传感器110的抖动的 信号。第二移动信号θHSx和θHSy是用于实质上感测镜头100的抖动的信号。
处理器140可以通过使用获得的震动检测数据(θYaw、θPitch、θHSx、θHSy) 来确定包括当前状态St、下一状态St+1、动作at,奖励rt+1和策略的环境数据,并 且将其存储在批存储器420中。
这里,批存储器420可以是用于存储环境数据以将人工神经网络模型400训练为批数据(batch data)的存储器。
当前状态St的数据表示当前获取的震动检测数据(θYaw,θPitch,θHSx,θHSy), 并且下一状态St+1的数据可以指在针对当前状态采取动作之后所获得的震动检测数 据。动作at的数据表示可以基于震动检测数据(θYaw,θPitch,θHSx,θHSy)推断 的镜头100的稳定化数据(+Xaxis,-Xaxis,+Yaxis,-Yaxis),并且奖励rt+1的数据 表示基于相机模块1000的x轴旋转角θPitch和镜头100的x轴旋转角θHSx之间的 差值以及相机模块1000的y轴旋转角θYaw和镜头100的y轴旋转角θHSy之间的差 值的误差值。
随后,将来自批存储器420的关于当前状态St和下一状态St+1的数据作为训练 数据输入到人工神经网络模型的第一模型(例如,行为者模型)和第二模型(例如, 评价者模型)中的每一个。
处理器140训练人工神经网络模型400,以在此基础上确定使奖励rt+1最大化的策略(即,动作)。这里,使奖励rt+1最大化的策略(即,动作)可以指其中误差值 收敛到预定值的稳定化数据。例如,预定值可以是零。在本公开中,当误差值收敛到 零时,可以确定没有震动。
具体地,第一模型(例如,行为者模型)基于输入的震动检测数据(θYaw、θPitch、 θHSx、θHSy)来推断稳定化数据。第一模型(例如,行为者模型)确定当基于推断 的稳定化数据补偿镜头100的位置时误差值收敛到预定值的概率。
第二模型(例如,评价者模型)评价基于输入第一模型(例如,行为者模型)的 震动检测数据((θYaw,θPitch,θHSx,θHSy))推断的稳定化数据的值。将该值的 评价结果发送到第一模型(例如,行为者模型),使得第一模型(例如,行为者模型) 能够用于确定后续动作。
在训练阶段,可以以各种形式提供震动检测数据。
例如,用于强化学习的相机模块1000可以固定到特定的夹具,并且被编程为以 特定模式振动。
例如,至少一个用户可以握住用于强化学习的相机模块1000,并使其振动特定 时间。
例如,对于强化学习,可以提供虚拟震动检测数据。
这里,特定模式可以是坐、走、跑、船的运动、汽车的运动、摩托车的运动等。
在强化学习时段期间,可以应用至少一个特定模式。
在强化学习期间,可以顺序地或随机地应用至少一个特定模式。
通过第一模型(例如,行为者模型)推断的稳定化数据被发送到VCM驱动器130, 并且VCM驱动器130向VCM致动器200发送用于补偿VCM致动器200的振动的 控制信号。
在本公开中,稳定化数据可以被转换成能够输入到VCM驱动器130使得VCM 驱动器130控制VCM致动器200的电压(vx,vy),并且被发送。
接收这些电压(vx,vy)的VCM驱动器130向VCM致动器200发送用于在x 轴和y轴上控制VCM致动器200的控制信号。这里,控制信号可以包括用于在x轴 上控制VCM致动器200的电流cx和用于在y轴上控制VCM致动器200的电流cy。 通过由接收电流cx和cy的VCM致动器200来补偿镜头100的位置,能够补偿图像 抖动。
在下一步骤中,可以通过传感器410获取震动检测数据,并且可以重复执行上述训练操作。可以执行这些训练操作,直至达到成功标准或纪元(epoch)的最大数量, 但是不限于此。例如,成功标准可以包括其中基于推断的稳定化数据确定的误差值收 敛到零的标准。
根据本公开的各种示例,处理器140可以通过收集在训练操作期间获得的误差值并且使用收集的误差值进一步训练人工神经网络模型400来更新人工神经网络模型 400。
根据本公开的各种示例,处理器140可以获取图像的调制传递函数(MTF)数据, 并且基于所获取的MTF数据训练第二模型(例如,评价者模型)。
可以通过强化学习来定制根据本公开的各种示例的第一模型(例如,行为者模型)。
在下文中,将参照图5详细描述人工神经网络模型400的特定学习操作。
图5是示出根据本公开的一个示例的人工神经网络模型的特定训练操作的示意概念图。
参照图5,第一模型500和第二模型510中的每一个接收当前获取的震动检测数 据(θYaw,θPitch,θHSx,θHSy)st和在对当前状态采取动作之后获得的震动检测 数据st+1作为训练数据。
第一模型500接收震动检测数据(st,st+1)作为输入,并且输出动作和策略。 这里,动作表示推断的稳定化数据,并且策略包括在当前状态St下采取动作at的概 率πθ(at|St),以及在被更新至批(batch)之前在第一模型500的当前状态St下采取 动作at的概率πθold(at|St)。
第二模型510接收震动检测数据(st,st+1)作为输入,并且输出震动检测数据(st,st+1)的值Vυ(St)和Vυ(St+1),以及针对输出值Vυ(St)和Vυ(St+1) 的预期收益(例如,优势)
Figure BDA0003793346340000141
这里,值Vυ(St)表示当前状态下的震动检测数 据St的值,并且值Vυ(St+1)表示下一状态下的震动检测数据St+1的值。
第一模型500可以基于πθ(at|St)、πθold(at|St)和第二模型510的输出
Figure BDA0003793346340000142
来 确定损失LCLIP(θ)。这里,θ可以表示指示第一模型500的所有权重和偏差的参数 向量。损失LCLIP(θ)可以由下面的<式1>表示。
<式1>
Figure BDA0003793346340000143
这里,ft(θ)可以表示
Figure BDA0003793346340000144
并且
Figure BDA0003793346340000145
可以表示 λ{(r+γVu(st))-Vu(st+1)}。随后,r表示奖励,并且γ表示折扣因子。
第一模型500可以使用前述损失LCLIP(θ)来更新第一模型500的参数向量θ。
第二模型510可以使用值Vυ(St)和Vυ(St+1)来确定损失LV(u)。这里,υ 可以表示第二模型510的参数向量。损失LV(u)可以由下面的<式2>表示。
<式2>
LV(u)=Vu(st+1)-(r+γVu(st))
第二模型510可以通过使用上述损失LV(u)来更新第二模型510的参数向量υ。
作为从第一模型500传送的动作的推断的稳定化数据通过转换单元520改变成能够从VCM驱动器130输入的电压vx和vy。例如,稳定化数据可以被转换成用于控 制VCM驱动器130的模拟电压或数字信号。当从转换单元520输出的电压切换时, 可能发生过冲或振铃。为了解决这个问题,转换单元520可以使用被训练为使得电压 倾斜(例如,下降或升高(damped or boosted))以补偿过冲或振铃并且输出的人工神 经网络模型。
VCM驱动器130发送控制信号cx和cy,使得VCM致动器200补偿镜头的位置, 此后,可以执行如图4所示的训练操作。
在下文中,将参照图6详细描述使用如参照图4和图5所述而训练的人工神经网 络模型来补偿图像抖动的方法。
在经过训练的人工神经网络模型中,在已经训练了权重数据的状态下,不再更新权重数据。
更详细地,处理器140可以是多个处理器,从而可以使用不同的处理器分别执行训练和执行推断。
例如,根据本公开的示例执行训练的处理器140可以是GPU,并且执行推断的 处理器140可以是NPU。也就是说,在机器学习过程中使用的处理器和在机器学习 完成之后在推断过程中使用的处理器可以彼此不同。
例如,实现为NPU的处理器140可以是用于推断操作的专用处理器,其具有相 对较快的处理速度和降低的功耗,但不支持机器学习算法。
实现为NPU的处理器140不用于训练,而是实现为高速、低功率处理器140, 并且具有可以实现为各种边缘装置的优点。此外,通过利用能够进行机器学习的处理 器140执行附加机器学习,并且然后将更新的权重数据提供给实现为NPU的处理器 140,可以解决不受支持的机器学习算法的问题。
更详细地,根据本公开的示例的第一模型(例如,行为者模型)可以被配置为由 实现为内置在相机模块1000中的NPU的处理器140处理。
更详细地,根据本公开的示例的第二模型(例如评价者模型)可以被配置为由仅训练的处理器140处理。这里,仅训练的处理器140可以是设置在相机模块1000外 部的独立处理器。然而,本公开的示例不限于此。
图6是示出根据本公开的一个示例的使用经过训练的人工神经网络模型来补偿图像抖动的方法的示意概念图。下面将要描述的操作可以通过实现为NPU的处理器 140执行。然而,根据本公开的示例的处理器140不限于NPU。
在图6的示例中,可以排除第二模型(例如,评价者模型)。因此,可以仅使用 第一模型(例如,行为者模型)来执行推断。在这种情况下,可以完成第一模型(例 如,行为者模型)的权重的训练。此外,当仅使用第一模型(例如,行为者模型)时, 可以排除训练步骤,并且可以排除第二模型(例如,评价者模型),从而可以改善功 耗、计算量和处理速度。此外,可以通过应用实现为NPU的低功率处理器140来实 现高速和低功率的相机模块1000。
参照图6,通过传感器600获得对应于环境的震动检测数据St,并且将获得的震 动检测数据St存储在批存储器610中。
将存储在批存储器610中的震动检测数据St作为稳定化信号发生器620的输入 数据输入。例如,稳定化信号发生器620可以包括具有四个输入节点、多个隐藏层和 四个输出节点的第一模型(例如行为者模型)。然而,第一模型(例如,行为者模型) 的结构不限于此。
当从四个输入节点中的每一个输入(θYaw,θPitch,θHSx,θHSy)时,第一模 型(例如,行为者模型)推断使误差值r收敛到预定值的稳定化数据(+Xaxis,-Xaxis, +Yaxis,-Yaxis)。因此,第一模型(例如,行为者模型)可以输出推断的稳定化数据 (+Xaxis,-Xaxis,+Yaxis,-Yaxis)。
这里,误差值r可以是相机模块1000的x轴旋转角θPitch和镜头100的x轴旋 转角θHSx之间的差值(errx)以及相机模块1000的y轴旋转角θYaw和镜头100的 y轴旋转角θHSy之间的差值(erry)的和值。例如,误差值可以由例如-(|errx+erry|) 的方程式表示。
转换单元Transpose可以将从第一模型(例如,行为者模型)推断的稳定化数据 (+Xaxis,-Xaxis,+Yaxis,-Yaxis)改变为可用于VCM驱动器130的输入的电压。 转换单元Transpose使用转换公式或查找表将稳定化数据转换成电压vx和vy,并且 将转换后的电压vx和vy作为控制信号输出。例如,这些电压(vx,vy)在0V到5V 之间的范围内,并且对应的范围可以对应于VCM驱动器130的输入标准。
例如,当输入+Xaxis时,稳定化电压vx的电压可以增加一阶(例如,0.001V)。 例如,当输入-Xaxis时,稳定化电压vx的电压可以减少一阶(例如,0.001V)。
例如,当输入+Yaxis时,稳定化电压vy的电压可以增加一阶(例如,0.001V)。 例如,当输入-Yaxis时,稳定化电压vy的电压可以减少一阶(例如,0.001V)。也就 是说,稳定化电压可以以预设电压阶(preset voltage step)为单位而变化。可以根据 电压阶的单位和电压阶更新的间隔来确定稳定化速度。
然而,本公开的示例不限于电压阶和时间间隔。
当输入电压vx和vy时,VCM驱动器130可以根据稳定化数据输出用于补偿VCM 致动器200的震动的控制信号。该控制信号可以是用于控制VCM致动器200的电流 (cx,cy)。例如,电流(cx,cy)可以是-100mA到100mA,并且对应的范围可以 对应于VCM致动器200的输入标准。
当输入电流(cx,cy)时,VCM致动器200操作为根据输入的电流来补偿镜头 100的位置,从而执行图像稳定化。
在下文中,将参照图7至图9详细描述设备A还包括用于测量温度的传感器并 通过进一步考虑温度数据来补偿图像抖动的方法。
图7是示出根据本公开的另一示例的人工神经网络模型的示意概念图。
参照图7,人工神经网络模型700包括通过第一传感器120获得的相机模块1000 的移动信号和通过第二传感器230获得的镜头100的移动信号。将包含的震动检测数 据710和通过温度传感器获得的温度数据720作为输入数据输入。
更详细地,由于图像传感器110固定到相机模块1000,所以当通过第一传感器 120感测到相机模块1000的振动时,可以实质上检测到图像传感器110的振动。因 此,可以通过检测相机模块1000的震动来实质上感测图像传感器110的震动。
更详细地,由于镜头100固定到镜头架210,所以当通过第二传感器230感测到 镜头架210的振动时,可以实质上感测到镜头100的振动。因此,可以通过检测镜头 架210的震动来实质上感测镜头100的震动。
这里,震动检测数据可以指上面参照图3描述的震动检测数据。用于测量温度数据的温度传感器可以是相机模块1000中包括的传感器、处理器140中包括的传感器 或专用传感器,但不限于此。
在本公开的示例中,人工神经网络模型700可以通过输入震动检测数据710和温度数据720作为输入来推断用于补偿图像抖动的稳定化数据,并且人工神经网络模型 可以输出推断的稳定化数据730。
在下文中,将参照图8详细描述图7的人工神经网络模型700的训练方法。
图8是示出根据本公开的另一示例的人工神经网络模型的训练方法的示意概念图。在所呈现的示例中,假设人工神经网络模型800是基于诸如行为者-评价者的强 化学习的模型。特别地,下面将要描述的操作可以由处理器140执行。
参照图8,通过传感器810获得相机模块1000的第一移动信号θYaw和θPitch、 镜头100的第二移动信号θHSx和θHSy以及温度数据Temp。
这里,从第一传感器120获得第一移动信号θYaw和θPitch,从第二传感器230 获得第二移动信号θHSx和θHSy,并且从温度传感器获得温度信号Temp。
这里,第一移动信号θYaw和θPitch是用于实质上检测图像传感器110的抖动的 信号。第二移动信号θHSx和θHSy是用于实质上感测镜头100的抖动的信号。
处理器140可以通过使用获得的震动检测数据(θYaw,θPitch,θHSx,θHSy) 和温度数据Temp来确定环境数据并且将其存储在批存储器820中,环境数据包括当 前状态St、下一状态St+1、动作at,奖励rt+1和策略。
这里,关于当前状态St的数据可以表示当前获取的震动检测数据(θYaw、θPitch、θHSx、θHSy)和温度数据Temp。下一状态St+1的数据可以指在针对当前状态采取 动作之后获得的振动检测数据和温度数据。
关于动作at的数据表示可以基于震动检测数据(θYaw,θPitch,θHSx,θHSy) 和温度数据Temp推断的镜头100的稳定化数据(+Xaxis,-Xaxis,+Yaxis,-Yaxis)。
奖励rt+1的数据表示基于针对相机模块1000的x轴旋转角θPitch和针对镜头100的x轴旋转角θHSx之间的差值、针对相机模块1000的y轴旋转角θYaw和针对镜头 100的y轴旋转角θHSy之间的差值以及温度数据Temp的误差值。
随后,将来自批存储器820的关于当前状态St和下一状态St+1的数据作为训练 数据输入人工神经网络模型400的第一模型(例如,行为者模型)和第二模型(例如, 评价者模型)中的每一个。
处理器140训练人工神经网络模型400,以在此基础上确定使奖励rt+1最大化的策略(即,动作)。具体地,第一模型(例如,行为者模型)基于输入的震动检测数 据(θYaw、θPitch、θHSx、θHSy)和温度数据Temp来推断稳定化数据。第一模型(例 如,行为者模型)确定当基于推断的稳定化数据来补偿镜头100的位置时误差值收敛 到预定值的概率。
第二模型(例如,评价者模型)评价基于输入第一模型(例如,行为者模型)的 振动检测数据(θYaw、θPitch、θHSx、θHSy)和温度数据Temp推断的稳定化数据的 值。
将来自第二模型的值的评价结果发送到第一模型(例如,行为者模型),使得第 一模型(例如,行为者模型)能够用于确定后续动作。
在训练阶段,可以以各种形式提供震动检测数据。
例如,用于强化学习的相机模块1000可以固定到特定的夹具,并且被编程为以 特定模式移动。
例如,至少一个用户可以握住用于强化学习的相机模块1000,并使其移动特定 时间。
例如,对于强化学习,可以提供虚拟震动检测数据。
这里,特定模式可以是坐、走、跑、船的运动、汽车的运动、摩托车的运动等。
在强化学习时段期间,可以应用至少一个特定模式。
在强化学习期间,可以顺序地或随机地应用至少一个特定模式。
通过第一模型(例如,行为者模型)推断的稳定化数据被发送到VCM驱动器130, 并且VCM驱动器130向VCM致动器200发送用于补偿VCM致动器200的振动的 控制信号。接收这些电压vx和vy的VCM驱动器130向VCM致动器200发送用于 在x轴和y轴上控制VCM致动器200的控制信号。通过由接收控制信号的VCM致 动器200补偿镜头100的位置,可以补偿图像抖动。
在下一步骤中,可以通过传感器810获取震动检测数据和温度数据,并且可以重复执行上述训练操作。可以执行这些训练操作,直至达到成功标准或纪元的最大数量, 但是不限于此。例如,成功标准可以包括其中基于推断的稳定化数据确定的误差值收 敛到零的标准。
在下文中,将参照图5详细描述人工神经网络模型800的具体训练操作。人工神 经网络模型800可以以参照图5描述的相同方式执行训练。
参照图5,第一模型500和第二模型510中的每一个接收当前状态St和下一状态 St+1作为训练数据,当前状态St包括当前获取的震动检测数据(θYaw,θPitch,θHSx, θHSy)和温度数据Temp,下一状态St+1包括在对当前状态采取动作之后获得的震 动检测数据和温度数据。
第一模型500输出通过输入震动检测数据和温度数据(st,st+1)而推断的稳定 化数据,以及在当前状态St下采取动作的概率πθ(at|St)和在被更新至批之前在第 一模型500的当前状态St下采取动作的概率πθold(at|St)。
第二模型510接收震动检测数据和温度数据(st,st+1)作为输入,并且输出震 动检测数据(st,st+1)的值Vυ(St)和Vυ(St+1)以及预期收益(例如,优势)
Figure BDA0003793346340000201
第一模型500可以基于πθ(at|St)、πθold(at|St)和第二模型510的输出
Figure BDA0003793346340000202
来 确定损失LCLIP(θ),并且通过使用确定的损失LCLIP(θ),可以更新第一模型500的 参数向量θ。可以通过使用上述<式1>来更新损失LCLIP(θ)。
第二模型510可以使用值Vυ(St)和Vυ(St+1)来确定损失LV(u),并且通过 使用确定的损失LV(u),可以更新第二模型510的参数向量υ。可以使用上述<式2> 来计算损失。
从第一模型500发送的稳定化数据通过转换单元520被转换成能够由VCM驱动 器130输入的电压(vx,vy)并且输出,VCM驱动器130发送控制信号(cx,cy), 使得VCM致动器200补偿镜头的位置,此后,可以如图8所描述地执行训练操作。
在下文中,将参照图9详细描述使用如参照图5和图8所述而学习的人工神经网 络模型来补偿图像抖动的方法。
图9是示出根据本公开的另一示例的使用经过训练的人工神经网络模型来补偿图像抖动的方法的示意概念图。稍后将描述的操作可以通过处理器140执行。
在图9的示例中,可以排除第二模型(例如,评价者模型)。因此,可以仅使用 第一模型(例如,行为者模型)来执行推断。在这种情况下,可以完成第一模型(例 如,行为者模型)的权重的训练。
此外,当仅使用第一模型(例如,行为者模型)时,可以排除训练步骤,并且可 以排除第二模型(例如,评价者模型),从而可以改善功耗、计算量和处理速度。此 外,可以通过应用实现为NPU的低功率处理器140来实现高速低功率的相机模块 1000。
参照图9,通过传感器900获得对应于环境的震动检测数据和温度数据St,并且 将获得的震动检测数据和温度数据St存储在批存储器910中。
将存储在批存储器910中的震动检测数据和温度数据St作为稳定化信号发生器920的输入数据输入。稳定化信号发生器920可以包括具有包括五个输入节点、多个 隐藏层和四个输出节点的第一模型(例如,行为者模型)。然而,第一模型(例如, 行为者模型)的结构不限于此。
当从五个输入节点中的每一个输入θYaw、θPitch、θHSx、θHSy和Temp时,第 一模型(例如,行为者模型)推断使误差值r收敛到预定值的稳定化数据(+Xaxis, -Xaxis,+Yaxis,-Yaxis),并且输出推断的稳定化数据(+Xaxis,-Xaxis,+Yaxis,-Yaxis)。 这里,误差值r是相机模块1000的x轴旋转角θPitch和镜头100的x轴旋转角θHSx 之间的差值errx以及相机模块1000的y轴旋转角θYaw和镜头100的y轴旋转角θHSy 之间的差值erry的和值。例如,误差值可以由诸如-(|errx+erry|)的方程式表示。
稳定化信号发生器920还可以包括转换单元Transpose,其被配置为将推断的稳定化数据(+Xaxis,-Xaxis,+Yaxis,-Yaxis)改变为可用于VCM驱动器130的输入 的电压。转换单元Transpose使用转换公式或查找表将稳定化数据转换成电压(vx, vy),并且输出转换后的电压(vx,vy)作为控制信号。
当输入电压(vx,vy)时,VCM驱动器130可以根据稳定化数据输出用于补偿 VCM致动器200的震动的控制信号。这些控制信号可以是用于控制VCM致动器200 的电流(cx,cy)。
当输入电流(cx,cy)时,VCM致动器200操作为根据输入的电流来补偿镜头 100的位置,从而执行图像稳定化。
在下文中,设备A还可以包括用于自动聚焦(AF)的线圈,并且将参照图10 至图14详细描述基于人工智能神经网络来控制AF和OIS的方法。
图10是示出根据本公开的另一示例的相机模块的示意概念图。在呈现的示例中,为了便于描述,可以省略如上所述的冗余元件的描述。
参照图10,相机模块1000可以包括镜头100、图像传感器110、第一传感器120、 VCM驱动器130、处理器140和VCM致动器200。VCM致动器200还可以包括AF 线圈260。
AF线圈260可以设置为对应于AF磁体(未示出),并且可以施加用于控制AF 磁体的位置的电压。
处理器140可以从相机模块1000中包括的至少两个或更多个传感器(即,第一 传感器120和第二传感器230)获得移动信号,根据图像的频率分量确定散焦量,并 且使用被训练为推断用于补偿图像抖动和聚焦的震动补偿信号的人工神经网络模型 来推断震动补偿信号。随后,处理器140可以基于推断的震动补偿信号来补偿图像抖 动和聚焦。这里,移动信号还可以包括用于聚集调节的霍尔传感器的z轴值。
在下文中,将参照图11至图14详细描述通过在处理器140中使用人工神经网络 模型来补偿图像抖动并调节聚焦的方法。
图11是示出根据本公开的另一示例的人工神经网络模型的示意概念图。
参照图11,在人工神经网络模型1100中,将震动检测数据1110和散焦量数据(defocus amount data)1120作为输入数据输入,震动检测数据1110包括通过第一传 感器120获得的相机模块1000的移动信号和通过第二传感器230获得的镜头100的 移动信号,散焦量1120根据图像的频率分量确定。这里,震动检测数据还可以包括 通过霍尔传感器获得的z轴旋转角。
在本公开的示例中,人工神经网络模型1100可以通过接收震动检测数据1110和散焦量数据1120作为输入来补偿图像抖动,推断用于调节聚焦的稳定化数据,并且 可以输出推断的稳定化数据1130。
在下文中,将参照图12详细描述图11的人工神经网络模型1100的训练方法。
图12是示出根据本公开的另一示例的人工神经网络模型的训练方法的示意概念图。在所呈现的示例中,假设人工神经网络模型1200是基于诸如行为者-评价者的强 化学习的模型。具体地,下面将要描述的操作可以通过处理器140执行。
参照图12,通过传感器1210获得相机模块1000的第一移动信号(θYaw,θPitch) 和镜头100的第二移动信号(θHSx,θHSy,θHSz),并且获得根据图像的频率分量 确定的散焦量数据。散焦量数据可以由处理器140、图像传感器或图像信号处理器(ISP) 获取。
处理器140可以通过使用获得的震动检测数据(θYaw、θPitch、θHSx、θHSy)、 镜头聚焦数据θHSz和散焦量数据defocus_amount来确定包括当前状态St、下一状态 St+1、动作at、奖励rt+1和策略的环境数据,然后所确定的环境数据可以存储在批存 储器1220中。这里,关于当前状态St的数据可以表示当前获取的震动检测数据(θYaw、 θPitch、θHSx、θHSy)、镜头聚焦数据θHSz和散焦量数据defocus_amount。下一状态 St+1的数据可以表示在对当前状态采取动作之后获得的震动检测数据和散焦量数据。 动作at的数据可以表示能够基于震动检测数据(θYaw,θPitch,θHSx,θHSy)、镜头 聚焦数据θHSz和散焦量数据defocus_amount推断的镜头100的稳定化数据(+Xaxis, -Xaxis,+Yaxis,-Yaxis,+Zaxis,-Zaxis),并且奖励rt+1的数据可以表示相机模块 1000的x轴旋转角θPitch和镜头100的x轴旋转角θHSx之间的差值、相机模块1000 的y轴旋转角θYaw和镜头100的y轴旋转角θHSy之间的差值,以及基于散焦量数 据的误差值。
随后,将来自批存储器420的当前状态St和下一状态St+1的数据作为训练数据 输入到人工神经网络模型1200的第一模型(例如,行为者模型)和第二模型(例如, 评价者模型)中的每一个。
处理器140在此基础上训练人工神经网络模型1200,以推断其中误差值收敛到 预定值的稳定化数据。
具体地,第一模型(例如,行为者模型)基于输入的震动检测数据(θYaw、θPitch、 θHSx、θHSy)、镜头聚焦数据θHSz和散焦量数据defocus_amount来推断稳定化数据。 第一模型(例如,行为者模型)确定当基于推断的稳定化数据补偿镜头100的位置时 误差值收敛到预定值的概率。
第二模型(例如,评价者模型)评价由第一模型(例如,行为者模型)输入的基 于震动检测数据(θYaw,θPitch,θHSx,θHSy)、镜头聚焦数据(θHSz)和散焦量数 据(defocus_amount)推断的稳定化数据的值。将该值的评价结果发送到第一模型(例 如,行为者模型),使得第一模型(例如,行为者模型)能够用于确定后续动作。
在训练阶段,可以以各种形式提供震动检测数据。
例如,用于强化学习的相机模块1000可以固定到特定的夹具,并且被编程为以 特定模式振动。
例如,至少一个用户可以握住用于强化学习的相机模块1000,并使其振动特定 时间。
例如,对于强化学习,可以提供虚拟震动检测数据。
这里,特定模式可以是坐、走、跑、船的运动、汽车的运动、摩托车的运动等。
在强化学习时段期间,可以应用至少一种特定模式。
在强化学习期间,可以顺序地或随机地应用至少一个特定模式。
通过第一模型(例如,行为者模型)推断的稳定化数据被发送到VCM驱动器130, 并且VCM驱动器130向VCM致动器200发送用于补偿VCM致动器200的振动的 控制信号。在本公开中,稳定化数据可以被转换成能够输入到VCM驱动器130以使 得VCM驱动器130控制VCM致动器200的电压(vx,vy,vz)并且被发送。接收 这些电压(vx,vy,vz)的VCM驱动器130向VCM致动器200发送用于在x轴、y 轴和z轴上控制VCM致动器200的控制信号。这里,控制信号可以包括用于在x轴 上控制VCM致动器200的电流cx、用于在y轴上控制VCM致动器200的电流cy 和用于在z轴上控制VCM致动器200的电流cz。
接收这些电流cx、cy和cz的VCM致动器200操作为使得镜头100的位置得到 补偿,从而补偿图像抖动。
在下一步骤中,在通过传感器1210获取震动检测数据(θYaw,θPitch,θHSx,θHSy)和镜头聚焦数据θHSz,并且根据图像的频率分量获得散焦量数据defocus_amount之 后,可以重复执行上述训练操作。可以执行这些训练操作,直至达到成功标准或纪元 的最大数量,但不限于此。例如,成功标准可以包括其中基于推断的稳定化数据确定 的误差值收敛到零的标准。
在下文中,将参照图13详细描述人工神经网络模型1200的具体训练操作。
图13是示出根据本公开的另一示例的人工神经网络模型的具体训练操作的示意概念图。
参照图13,第一模型1300和第二模型1310中的每一个接收当前状态St和下一 状态St+1作为训练数据,当前状态St包括当前获取的震动检测数据(θYaw、θPitch、 θHSx、θHSy)、镜头聚焦数据θHSz和散焦量数据defocus_amount,下一状态St+1包 括在对当前状态采取动作之后获得的震动检测数据和散焦量数据。
第一模型1300输出通过输入震动检测数据和散焦量数据(st,st+1)而推断的稳定化数据,以及在当前状态St下采取动作的概率πθ(at|St)和在被更新至批之前在 第一模型1300的当前状态St下采取动作的概率πθold(at|St)。
第二模型1310接收震动检测数据和散焦量数据(st,st+1)作为输入,并且输出 震动检测数据(st,st+1)的值Vυ(St)和Vυ(St+1)以及预期收益(例如,优势)
Figure BDA0003793346340000241
第一模型1300可以基于πθ(at|St)、πθold(at|St)和第二模型1310的输出
Figure BDA0003793346340000242
来确定损失LCLIP(θ),并且通过使用所确定的损失LCLIP(θ),可以更新第一模型500 的参数向量θ。可以通过使用上述的<式1>来更新损失LCLIP(θ)。
第二模型1310可以使用值Vυ(St)和Vυ(St+1)来确定损失LV(u),并且通过 使用所确定的损失LV(u),可以更新第二模型1310的参数向量υ。可以使用上述的< 式2>计算损失。
从第一模型1300发送的稳定化数据通过转换单元520被转换成能够由VCM驱 动器130输入的电压(vx,vy,vz)并且输出,VCM驱动器130发送控制信号(cx, cy,cz),使得VCM致动器200补偿镜头的位置,此后,可以如图12所述地执行训 练操作。
在下文中,将参照图14详细描述使用如参照图12和图13所述而训练的人工神 经网络模型来补偿图像抖动的方法。
图14是示出根据本公开的另一示例的使用经过训练的人工神经网络模型来补偿图像抖动的方法的示意概念图。稍后将描述的操作可以通过处理器140执行。
参照图14,通过传感器1400获得震动检测数据,并且在根据图像的频率分量获 得散焦量数据St之后,将获得的震动检测数据和散焦量数据St存储在批存储器1410 中。
在图14的示例中,可以排除第二模型(例如,评价者模型)。因此,可以仅使用 第一模型(例如,行为者模型)来执行推断。在这种情况下,可以完成第一模型(例 如,行为者模型)的权重的训练。此外,当仅使用第一模型(例如,行为者模型)时, 可以排除训练步骤,并且可以排除第二模型(例如,评价者模型),从而可以减少功 耗,可以减少计算量,并且可以提高处理速度。此外,可以通过应用实现为NPU的 低功率处理器140来实现高速低功率相机模块1000。
将存储在批存储器1410中的震动检测数据和散焦量数据St作为稳定化信号发生器1420的输入数据输入。稳定化信号发生器1420可以包括具有六个输入节点、多个 隐藏层和六个输出节点的第一模型(例如,行为者模型)。然而,第一模型(例如, 行为者模型)的结构不限于此。
当从六个输入节点中的每一个输入θYaw、θPitch、θHSx、θHSy、θHSz和 defocus_amount时,第一模型(例如,行为者模型)推断使误差值r收敛到预定值的 稳定化数据(+Xaxis,-Xaxis,+Yaxis,-Yaxis,+Zaxis,-Zaxis),并且输出推断的稳 定化数据(+Xaxis,-Xaxis,+Yaxis,-Yaxis,+Zaxis,-Zaxis)。这里,误差值r可以 是通过将相机模块1000的x轴旋转角θPitch和镜头100的x轴旋转角θHSx之间的 差值errx以及相机模块1000的y轴旋转角θYaw和镜头100的y轴旋转角θHSy之 间的差值erry的和值与散焦量(defocus_amount)相加而获得的值。例如,误差值可 以由诸如-(|errx+erry|)的方程式表示。
可以根据电压vz值来调节defocus_amount。AF线圈260可以根据对应于电压vz 的cz值来调节AF线圈260的z轴。因此,固定到设置有AF线圈260的镜头架210 的镜头100的z轴可以移动。因此,可以调节defocus_amount。
稳定化信号发生器1420还可以包括转换单元Transpose,其被配置为将推断的稳定化数据(+Xaxis,-Xaxis,+Yaxis,-Yaxis,+Zaxis,-Zaxis)改变为可用于VCM驱 动器130的输入的电压。转换单元Transpose使用转换公式或查找表将稳定化数据转 换成电压(vx,vy,vz),并且输出转换后的电压(vx,vy,vz)作为控制信号。
当输入电压(vx,vy,vz)时,VCM驱动器130可以根据稳定化数据输出用于 补偿VCM致动器200的振动的控制信号。这些控制信号可以是用于控制VCM致动 器200的电流(cx,cy,cz)。
当输入电流(cx,cy,cz)时,VCM致动器200操作为根据输入的电流来补偿 镜头100的位置,从而稳定图像并且调节聚焦。
根据本公开的各种示例的相机模块1000可以通过传感器获得震动检测数据 (θYaw、θPitch、θHSx、θHSy)和温度数据Temp,并且根据镜头聚焦数据θHSz和 图像的频率分量获得散焦量数据defocus_amount。
相机模块1000可以使用人工神经网络模型输出稳定化数据,该人工神经网络模型被训练为基于所获得的震动检测数据、温度数据、镜头聚焦数据和散焦量数据来推 断用于图像稳定化和聚焦调节的稳定化数据。
在下文中,将参照图15描述相机模块的图像稳定化方法。
图15是示出本公开的一个示例中的相机模块的图像稳定化方法的流程图。稍后将在呈现的示例中描述的操作可以由相机模块1000的处理器140执行。
参照图15,处理器140从两个或更多个传感器获取图像相关的震动检测数据1500。根据本公开的示例的两个或更多个传感器可以包括陀螺仪传感器、霍尔传感器和光电 传感器中的至少两个或更多个。这里,震动检测数据可以包括通过陀螺仪传感器的x 轴和y轴旋转移动以及霍尔传感器的x轴和y轴旋转移动检测到的信号。
处理器140使用人工神经网络模型输出稳定化数据,该人工神经网络模型被训练为基于所获得的震动检测数据来输出用于补偿图像抖动的稳定化数据(S1510)。
接着,处理器140使用输出的稳定化数据来补偿图像抖动S1520。
图16是示出根据本公开的神经处理单元的示意概念图。
图16所示的神经处理单元(NPU)是专用于执行人工神经网络的操作的处理器。
人工神经网络是指人工神经元的网络,其在接收到多个输入或刺激时,将权重相乘和相加,并且通过激活函数而对添加了附加偏差的值进行变换和发送。经过训练的 人工神经网络能够用于根据输入数据输出推断结果。
NPU可以是实现为电气/电子电路的半导体。电气/电子电路可以包括多种电子器件(例如,晶体管和电容器)。
NPU可以包括处理元件(PE)阵列11000、NPU内部存储器12000、NPU调度 器13000和NPU接口14000。多个处理元件11000、NPU内部存储器12000、NPU 调度器13000和NPU接口14000中的每一个可以是连接有多个晶体管的半导体电路。 因此,它们中的一些可能难以用肉眼识别和区分,并且可能只有通过操作才能识别。
NPU可以被配置为推断第一模型(例如,行为者模型)。
例如,特定电路可以作为多个处理元件11000进行操作,或者可以作为NPU调 度器13000进行操作。NPU调度器13000可以被配置为执行控制器的功能,该控制 器被配置为控制NPU的人工神经网络推断操作。
NPU可以包括:多个处理元件11000;NPU内部存储器12000,其被配置为存储 能够由多个处理元件11000推断的人工神经网络模型;以及NPU调度器13000,其 被配置为基于人工神经网络模型的数据位置信息或结构相关信息来控制多个处理元 件11000和NPU内部存储器12000。这里,人工神经网络模型可以包括关于人工神 经网络模型的数据位置信息或结构的信息。人工神经网络模型可以指被训练为执行特 定推断功能的AI识别模型。
多个处理元件11000可以执行针对人工神经网络的操作。
NPU接口14000可以与通过***总线连接到NPU的各种元件(例如,存储器) 通信。
NPU调度器13000可以被配置为控制用于神经处理单元的推断操作的多个处理 元件11000的操作以及NPU内部存储器12000的读取操作和写入操作的顺序。
NPU调度器13000可以被配置为基于人工神经网络模型的数据位置信息或结构 相关信息来控制多个处理元件11000和NPU内部存储器12000。
NPU调度器13000可以分析要在多个处理元件11000中操作的人工神经网络模 型的结构,或者可以接收预分析的信息。例如,能够包括在人工神经网络模型中的人 工神经网络的数据可以包括每个层的节点数据(即,特征图)、层的布置数据、位置 信息或结构信息、以及连接每个层的节点的各个连接网络的权重数据(即,权重核) 中的至少一部分。人工神经网络的数据可以存储在NPU调度器13000或NPU内部存 储器12000内部设置的存储器中。
NPU调度器13000可以基于人工神经网络模型的数据位置信息或结构信息来调 度将由NPU执行的人工神经网络模型的操作顺序。
NPU调度器13000可以基于人工神经网络模型的数据位置信息或结构信息来获 取其中存储了人工神经网络模型的层的特征图和权重数据的存储器地址值。例如, NPU调度器13000可以获得其中存储了存储器中所存储的人工神经网络模型的层的 特征图和权重数据的存储器地址值。因此,NPU调度器13000可以从存储器发送要 驱动的人工神经网络模型的层的特征图和权重数据,并且将其存储在NPU内部存储 器12000中。
每个层的特征图可以分别具有对应的存储器地址值。
每个权重数据可以分别具有对应的存储器地址值。
NPU调度器13000可以基于人工神经网络模型的数据位置信息或结构相关信息(例如,人工神经网络模型的层的布局的数据位置信息或人工神经网络模型的结构相 关信息)来调度多个处理元件11000的操作顺序。
NPU调度器13000可以基于人工神经网络模型的数据位置信息或结构相关信息 进行调度,使得NPU调度器可以以不同于常规CPU的调度构思的方式进行操作。考 虑公平、效率、稳定性和反应时间,常规CPU的调度操作为提供最高效率。也就是 说,考虑优先级和操作时间,常规CPU进行调度以在相同时间内执行最多的处理。
传统的CPU使用考虑诸如每个处理的优先级或操作处理时间的数据来调度任务的算法。
相反,NPU调度器13000可以基于人工神经网络模型的数据位置信息或结构相 关信息来确定处理顺序。
此外,NPU调度器13000可以根据基于人工神经网络模型的数据位置信息或结 构相关信息和/或NPU的数据位置信息或信息的确定的处理顺序来操作NPU。
然而,本公开不限于NPU的数据位置信息或结构相关信息。
NPU调度器13000可以被配置为存储关于人工神经网络模型的数据位置信息或 结构的信息。
也就是说,即使仅提供关于人工神经网络模型的数据位置信息或结构的信息,NPU调度器13000也可以确定处理顺序。
此外,NPU调度器13000可以考虑关于人工神经网络模型的数据位置信息或结 构的信息以及NPU的数据位置信息或结构相关信息来确定NPU的处理顺序。此外, 还可以在确定的处理顺序中优化NPU的处理。
多个处理元件11000可以指其中设置了多个处理元件PE1至PE12的配置,多个 处理元件PE1至PE12被配置为计算人工神经网络的特征图和权重数据。每个处理元 件可以包括乘法和累加(MAC)运算器和/或算术逻辑单元(ALU)运算器。然而, 根据本公开的示例不限于此。
每个处理元件可以被配置为可选地进一步包括用于处理附加特殊功能的附加特殊功能单元。
例如,处理元件PE还可以被修改和实现为进一步包括批归一化单元、激活功能 单元、插值单元等。
虽然在图16中示意性地示出了多个处理元件,但是也可以通过替换一个处理元件中的MAC而将实现为多个乘法器和加法器树的运算器配置为并行布置。在这种情 况下,多个处理元件11000可以被称为包括多个运算器的至少一个处理元件。
多个处理元件11000被配置为包括多个处理元件PE1至PE12。图16中示出的多 个处理元件PE1至PE12仅仅是为了便于描述的示例,并且多个处理元件PE1至PE12 的数量不限于此。可以由多个处理元件PE1至PE12的数量来确定处理元件阵列的大 小或数量。处理元件阵列的大小可以以N×M矩阵的形式实现。这里,N和M是大于 零的整数。处理元件阵列可以包括N×M个处理元件。也就是说,可以存在至少一个 处理元件。
可以考虑NPU在其中操作的人工神经网络模型的特性来设计多个处理元件 11000的大小。
多个处理元件11000可以被配置为执行人工神经网络操作所需的功能,例如加法、乘法和累加。换句话说,多个处理元件11000可以被配置为执行乘法和累加(MAC) 操作。
根据本公开的各种示例,可以基于强化学习技术来训练人工神经网络模型。
根据本公开的各种示例,震动检测数据可以包括用于检测相机模块和镜头的位置变化的信号。
根据本公开的各种示例,可以根据震动检测数据来训练人工神经网络模型,使得由于图像抖动导致的误差值收敛到预定值。这里,误差值可以基于陀螺仪传感器的x 轴移动和霍尔传感器的x轴移动之间的差以及陀螺仪传感器的y轴移动和霍尔传感器 的y轴移动之间的差。
根据本公开的各种示例,人工神经网络模型可以通过接收震动检测数据作为输入来输出用于控制相机模块中包括的镜头的移动以补偿图像抖动的控制信号。
根据本公开的各种示例,人工神经网络模型可以通过接收震动检测数据作为输入来输出用于控制相机模块中包括的图像传感器的移动以补偿图像抖动的控制信号。
根据本公开的各种示例,训练的模型可以包括第一模型和第二模型,第一模型被训练为基于震动检测数据来推断其中误差值收敛到预定值的稳定化数据,第二模型被 训练为评价稳定化数据的结果。
根据本公开的各种示例,人工神经网络模型可以同时执行通过输入震动检测数据作为输入来推断稳定化数据的训练和推断稳定化数据。
根据本公开的各种示例,人工神经网络模型可以包括输入了震动检测数据的输入节点、执行AI运算(例如,卷积运算)的隐藏层以及输出稳定化数据的输出节点。
根据各种示例,处理器140可以被配置为通过训练收集误差值,并且使用收集的误差值更新人工神经网络模型。
根据本公开的各种示例,相机模块可以包括用于感测温度的温度传感器,并且处理器140可以被配置为基于震动检测数据和通过温度传感器获取的温度数据,使用人 工神经网络模型来输出稳定化数据。
根据本公开的各种示例,震动检测数据可以包括通过陀螺仪传感器的x轴和y 轴旋转移动以及霍尔传感器的x轴、y轴和z轴旋转移动检测的信号,并且处理器140 可以被配置为从图像的频率分量获得散焦量数据,并且基于震动检测数据和散焦量数 据使用人工神经网络模型而输出稳定化数据。
根据本公开的各种示例,人工神经网络模型可以使用图像的调制传递函数(MTF)数据作为用于训练的训练数据。
MTF数据可以是通过使散焦量量化而获得的数据。
提供说明书和附图中示出的示例仅是为了便于描述本公开的主题并且提供特定示例以帮助理解本公开,而并不旨在限制本公开的范围。对于本公开所属领域的普通 技术人员来说显而易见的是除了本文公开的示例之外,还可以实现基于本公开的技术 精神的其他修改。
相关申请的交叉引用
本申请要求于2021年8月12日向韩国知识产权局提交的韩国专利申请No. 10-2021-0106909和2022年5月26日向韩国知识产权局提交的韩国专利申请No. 10-2022-0064967的优先权,这些申请的公开内容通过引用并入本文。

Claims (19)

1.一种基于人工智能的图像稳定化的方法,所述方法包括以下步骤:
从两个或更多个传感器获取关于图像的震动检测数据;
使用人工神经网络模型输出稳定化数据,所述人工神经网络模型被训练为基于所述震动检测数据而输出用于补偿图像抖动的所述稳定化数据;以及
使用所述稳定化数据补偿所述图像抖动。
2.根据权利要求1所述的方法,
其中,所述人工神经网络模型基于强化学习。
3.根据权利要求1所述的方法,
其中,所述震动检测数据包括用于检测相机模块和镜头的位置变化的信号。
4.根据权利要求1所述的方法,
其中,所述两个或更多个传感器包括陀螺仪传感器和霍尔传感器。
5.根据权利要求1所述的方法,
其中,所述人工神经网络模型是基于用于学习的训练数据的经训练的模型,使得由于所述图像抖动而导致的误差值收敛到预定值。
6.根据权利要求1所述的方法,
其中,所述人工神经网络模型通过接收所述震动检测数据作为输入而输出用于控制相机模块中包括的镜头的移动以补偿所述图像抖动的控制信号。
7.根据权利要求1所述的方法,
其中,所述人工神经网络模型通过接收所述震动检测数据作为输入而输出用于控制相机模块中包括的图像传感器的移动以补偿所述图像抖动的控制信号。
8.根据权利要求1所述的方法,
其中,所述人工神经网络模型接收所述震动检测数据作为输入,以同时执行用于推断所述稳定化数据的训练操作和针对所述稳定化数据的推断操作。
9.根据权利要求1所述的方法,
其中,所述人工神经网络模型包括输入了所述震动检测数据的输入节点、用于执行所述输入节点的人工智能AI操作的隐藏层、以及用于输出所述稳定化数据的输出节点。
10.一种相机模块,所述相机模块包括:
镜头;
图像传感器,所述图像传感器被配置为输出通过所述镜头捕获的图像;
两个或更多个传感器,所述两个或更多个传感器被配置为输出震动检测数据;
控制器,所述控制器被配置为基于所述震动检测数据而输出稳定化数据;以及
稳定化单元,所述稳定化单元被配置为使用所述稳定化数据来补偿图像抖动,
其中,所述控制器被配置为使用人工神经网络模型输出所述稳定化数据,所述人工神经网络模型被训练为基于所述震动检测数据而输出所述稳定化数据。
11.根据权利要求10所述的相机模块,
其中,所述两个或更多个传感器包括陀螺仪传感器、霍尔传感器和光电传感器中的至少两个。
12.根据权利要求10所述的相机模块,
其中,所述震动检测数据包括通过陀螺仪传感器的x轴和y轴旋转移动以及霍尔传感器的x轴和y轴旋转移动而检测的信号。
13.根据权利要求11所述的相机模块,
其中,根据所述震动检测数据训练所述人工神经网络模型,使得由于所述图像抖动导致的误差值收敛到预定值。
14.根据权利要求13所述的相机模块,
其中,所述误差值基于所述陀螺仪传感器的x轴移动和所述霍尔传感器的x轴移动之间的差以及所述陀螺仪传感器的y轴移动和所述霍尔传感器的y轴移动之间的差。
15.根据权利要求13所述的相机模块,
其中,经训练的所述模型包括第一模型和第二模型,所述第一模型被训练为基于所述震动检测数据而推断其中所述误差值收敛到所述预定值的所述稳定化数据,所述第二模型被训练为评价所述稳定化数据的结果。
16.根据权利要求13所述的相机模块,
其中,所述控制器被配置为通过训练收集所述误差值,并且使用收集的所述误差值更新所述人工神经网络模型。
17.根据权利要求10所述的相机模块,
所述相机模块还包括用于感测温度的温度传感器,
其中,所述控制器被配置为基于所述震动检测数据和通过所述温度传感器获取的温度数据,使用所述人工神经网络模型输出所述稳定化数据。
18.根据权利要求10所述的相机模块,
其中,所述震动检测数据包括:
通过陀螺仪传感器的x轴和y轴旋转移动以及霍尔传感器的x轴、y轴和z轴旋转移动而检测的信号,并且
其中,所述控制器被配置为:
根据所述图像的频率分量获得散焦量数据,并且
基于所述震动检测数据和所述散焦量数据,使用所述人工神经网络模型输出所述稳定化数据。
19.根据权利要求10所述的相机模块,
其中,所述人工神经网络模型使用所述图像的调制传递函数MTF数据作为用于训练的训练数据。
CN202210961410.7A 2021-08-12 2022-08-11 基于人工智能的图像稳定化方法及其相机模块 Pending CN115714915A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2021-0106909 2021-08-12
KR20210106909 2021-08-12
KR10-2022-0064967 2022-05-26
KR1020220064967A KR20230026246A (ko) 2021-08-12 2022-05-26 인공지능 기반 영상 안정화 방법 및 이에 대한 카메라 모듈

Publications (1)

Publication Number Publication Date
CN115714915A true CN115714915A (zh) 2023-02-24

Family

ID=85177673

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210961410.7A Pending CN115714915A (zh) 2021-08-12 2022-08-11 基于人工智能的图像稳定化方法及其相机模块

Country Status (3)

Country Link
US (2) US11750927B2 (zh)
KR (1) KR20230047355A (zh)
CN (1) CN115714915A (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11750927B2 (en) * 2021-08-12 2023-09-05 Deepx Co., Ltd. Method for image stabilization based on artificial intelligence and camera module therefor

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5378807B2 (ja) * 2009-01-08 2013-12-25 セミコンダクター・コンポーネンツ・インダストリーズ・リミテッド・ライアビリティ・カンパニー 防振制御回路
US9628713B2 (en) * 2014-03-17 2017-04-18 Invensense, Inc. Systems and methods for optical image stabilization using a digital interface
CN104331442A (zh) * 2014-10-24 2015-02-04 华为技术有限公司 视频分类方法和装置
JP6435581B2 (ja) * 2015-01-29 2018-12-12 パナソニックIpマネジメント株式会社 転移学習装置、転移学習システム、転移学習方法およびプログラム
JP6590541B2 (ja) * 2015-06-11 2019-10-16 オリンパス株式会社 ぶれ補正装置
JP6613697B2 (ja) * 2015-08-06 2019-12-04 株式会社リコー 画像処理装置、プログラムおよび記録媒体
JP6504036B2 (ja) * 2015-11-27 2019-04-24 カシオ計算機株式会社 移動検出装置、移動検出方法、及び、プログラム
JP6582926B2 (ja) * 2015-11-27 2019-10-02 カシオ計算機株式会社 移動情報取得装置、移動情報取得方法、及び、プログラム
JP6655401B2 (ja) * 2016-01-21 2020-02-26 オリンパス株式会社 撮像装置、像ブレ補正方法
KR102493994B1 (ko) 2016-01-27 2023-02-02 (주)엠아이웨어 영상 흔들림 보정 기능을 구비한 자동차용 영상 저장 장치
US10728453B2 (en) * 2016-08-03 2020-07-28 Samsung Electronics Co., Ltd. Motion stabilized image sensor, camera module and apparatus comprising same
KR102639757B1 (ko) * 2017-01-09 2024-02-23 엘지이노텍 주식회사 카메라 모듈 및 이를 포함하는 광학기기
US11574164B2 (en) * 2017-03-20 2023-02-07 International Business Machines Corporation Neural network cooperation
US10890734B1 (en) 2017-03-29 2021-01-12 Apple Inc. Camera actuator for lens and sensor shifting
US10453220B1 (en) * 2017-12-29 2019-10-22 Perceive Corporation Machine-trained network for misalignment-insensitive depth perception
JP2019145956A (ja) * 2018-02-19 2019-08-29 キヤノン株式会社 撮像装置およびその制御方法ならびにプログラム
CN109000887B (zh) * 2018-05-25 2021-04-23 京东方科技集团股份有限公司 一种图案检测装置及方法、图案化控制***及方法
KR102545667B1 (ko) * 2018-10-30 2023-06-21 삼성전자주식회사 인공 신경망을 이용한 이미지 처리 방법 및 이를 지원하는 전자 장치
KR102581210B1 (ko) * 2019-01-10 2023-09-22 에스케이하이닉스 주식회사 이미지 신호 처리 방법, 이미지 신호 프로세서 및 이미지 센서 칩
KR20200101180A (ko) * 2019-02-19 2020-08-27 삼성전자주식회사 이미지 안정화를 위한 전자 장치 및 그의 동작 방법
KR20200110906A (ko) 2019-03-18 2020-09-28 삼성전자주식회사 자동 초점 조절 기능을 제공하기 위한 전자 장치 및 그 동작 방법
US11127127B2 (en) * 2019-06-03 2021-09-21 Uchicago Argonne, Llc Full-field imaging learning machine (FILM)
KR20190104104A (ko) 2019-08-19 2019-09-06 엘지전자 주식회사 영상 재생 방법 및 장치
JP2021057815A (ja) * 2019-09-30 2021-04-08 キヤノン株式会社 撮像装置及びその制御方法、プログラム、記憶媒体
US10936916B1 (en) * 2019-10-31 2021-03-02 Booz Allen Hamilton Inc. System and method for classifying image data
JP2021105660A (ja) * 2019-12-26 2021-07-26 キヤノン株式会社 レンズ装置、撮像装置、制御方法、およびプログラム
KR102528547B1 (ko) * 2020-02-07 2023-05-04 포항공과대학교 산학협력단 조기 지진 감지 장치 및 방법
CN113452898B (zh) * 2020-03-26 2023-07-18 华为技术有限公司 一种拍照方法及装置
WO2021190752A1 (en) * 2020-03-26 2021-09-30 Eaton Intelligent Power Limited Tremor cancellation
KR20210127409A (ko) * 2020-04-14 2021-10-22 삼성전기주식회사 싱글 센서와 멀티 드라이버간의 동기화 기능을 갖는 ois 회로, ois 장치 및 그 동작방법
KR102447562B1 (ko) 2020-04-14 2022-09-26 엘지이노텍 주식회사 광학적 손떨림 보정 카메라 모듈 구조
JP2021180453A (ja) * 2020-05-15 2021-11-18 キヤノン株式会社 撮像装置、撮像装置の制御方法、及び、プログラム
JP2022070684A (ja) * 2020-10-27 2022-05-13 キヤノン株式会社 撮像装置およびその制御方法、プログラム
KR102241321B1 (ko) 2020-11-30 2021-04-16 삼성전기주식회사 손떨림 보정 반사모듈 및 이를 포함하는 카메라 모듈
JP2022142980A (ja) * 2021-03-17 2022-10-03 キヤノン株式会社 電子機器、制御方法、およびプログラム
CN115307853A (zh) * 2021-03-23 2022-11-08 索尼集团公司 用于抑制车辆振动的***、方法和计算机程序
US11750927B2 (en) * 2021-08-12 2023-09-05 Deepx Co., Ltd. Method for image stabilization based on artificial intelligence and camera module therefor

Also Published As

Publication number Publication date
KR20230047355A (ko) 2023-04-07
US11750927B2 (en) 2023-09-05
US20230353874A1 (en) 2023-11-02
US20230050618A1 (en) 2023-02-16

Similar Documents

Publication Publication Date Title
US11062470B2 (en) Apparatus and method for depth estimation based on thermal image, and neural network learning method therefof
US20230353874A1 (en) Processor for image stabilization based on artificial intelligence and device including the same
JP4546157B2 (ja) 情報処理方法、情報処理装置、撮像装置
KR101856947B1 (ko) 촬영장치, 움직임 추정장치, 영상 보정 방법, 움직임 추정방법 및 컴퓨터 판독가능 기록매체
US11068394B2 (en) Neural network system including data moving controller
CN102170524A (zh) 对焦控制装置以及对焦控制方法
TW202141363A (zh) 用於機器學習模型的執行的自我調整量化
KR20200048609A (ko) 인공 신경망을 이용한 이미지 처리 방법 및 이를 지원하는 전자 장치
CN110012214A (zh) 摄像设备和控制方法
WO2020085028A1 (ja) 画像認識装置および画像認識方法
JP2019155561A (ja) ロボットの動作制御装置
KR20240037225A (ko) 이미지 안정화를 위한 프로세서 및 이를 포함하는 장치
CN117152691A (zh) 一种基于改进yolov7的红外船舶目标检测方法
CN115755490A (zh) 摄像头模组及其控制方法、电子设备
US20230080638A1 (en) Systems and methods for self-supervised learning of camera intrinsic parameters from a sequence of images
US20060268145A1 (en) CMOS image sensor capable of auto focus control and camera device including the same
JP2022543783A (ja) イメージセンサー、カメラモジュール及びカメラモジュールを含む光学機器
CN109891872A (zh) 用于成像设备的图像稳定化控制设备
JP4046707B2 (ja) 撮像装置における像ぶれ補正装置
US20160162754A1 (en) Image processing apparatus and image processing method
CN111897213A (zh) 一种模型不确定下的汽车自适应巡航控制方法
CN118075602A (zh) 驱动装置、图像采集模组和电压调整方法
Mody et al. Low cost and power CNN/deep learning solution for automated driving
KR102644294B1 (ko) 다차원 인체 센싱용 카메라 임베디드 시스템 및 이를 활용하는 초소형 광각 카메라
US20230156336A1 (en) Camera module, portable electronic device, and position control system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination