CN111480156A - 利用深度学习选择性存储视听内容的系统和方法 - Google Patents
利用深度学习选择性存储视听内容的系统和方法 Download PDFInfo
- Publication number
- CN111480156A CN111480156A CN201980006363.7A CN201980006363A CN111480156A CN 111480156 A CN111480156 A CN 111480156A CN 201980006363 A CN201980006363 A CN 201980006363A CN 111480156 A CN111480156 A CN 111480156A
- Authority
- CN
- China
- Prior art keywords
- image
- audio
- capture device
- images
- image capture
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 103
- 238000013135 deep learning Methods 0.000 title description 2
- 230000005236 sound signal Effects 0.000 claims abstract description 151
- 230000015654 memory Effects 0.000 claims abstract description 101
- 238000010801 machine learning Methods 0.000 claims abstract description 40
- 238000013528 artificial neural network Methods 0.000 claims description 86
- 239000000872 buffer Substances 0.000 claims description 37
- 230000001815 facial effect Effects 0.000 claims description 28
- 238000001514 detection method Methods 0.000 claims description 20
- 238000010191 image analysis Methods 0.000 claims description 19
- 230000004044 response Effects 0.000 claims description 11
- 238000004458 analytical method Methods 0.000 description 53
- 238000012545 processing Methods 0.000 description 48
- 238000003860 storage Methods 0.000 description 48
- 238000003384 imaging method Methods 0.000 description 44
- 230000006835 compression Effects 0.000 description 30
- 239000000306 component Substances 0.000 description 29
- 238000007906 compression Methods 0.000 description 29
- 230000008569 process Effects 0.000 description 26
- 230000000007 visual effect Effects 0.000 description 24
- 210000000887 face Anatomy 0.000 description 19
- 238000012546 transfer Methods 0.000 description 19
- 230000014759 maintenance of location Effects 0.000 description 13
- 230000008901 benefit Effects 0.000 description 11
- 238000005259 measurement Methods 0.000 description 11
- 230000033001 locomotion Effects 0.000 description 10
- 239000000203 mixture Substances 0.000 description 10
- 241001465754 Metazoa Species 0.000 description 8
- 230000007613 environmental effect Effects 0.000 description 8
- 206010011469 Crying Diseases 0.000 description 7
- 238000012549 training Methods 0.000 description 7
- 239000013598 vector Substances 0.000 description 7
- 230000000981 bystander Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000005096 rolling process Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 230000005284 excitation Effects 0.000 description 5
- 230000014509 gene expression Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 230000007704 transition Effects 0.000 description 5
- 241000272168 Laridae Species 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 4
- 238000007664 blowing Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000005265 energy consumption Methods 0.000 description 4
- 241000272161 Charadriiformes Species 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000004438 eyesight Effects 0.000 description 3
- 235000012054 meals Nutrition 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 239000004576 sand Substances 0.000 description 3
- 101100343591 Caenorhabditis elegans lnkn-1 gene Proteins 0.000 description 2
- 241000282472 Canis lupus familiaris Species 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 238000003705 background correction Methods 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000008921 facial expression Effects 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000011045 prefiltration Methods 0.000 description 2
- 238000004321 preservation Methods 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 241000282326 Felis catus Species 0.000 description 1
- HBBGRARXTFLTSG-UHFFFAOYSA-N Lithium ion Chemical compound [Li+] HBBGRARXTFLTSG-UHFFFAOYSA-N 0.000 description 1
- 241000269400 Sirenidae Species 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000011143 downstream manufacturing Methods 0.000 description 1
- 230000005670 electromagnetic radiation Effects 0.000 description 1
- 239000003623 enhancer Substances 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 238000010195 expression analysis Methods 0.000 description 1
- 210000003811 finger Anatomy 0.000 description 1
- 230000005021 gait Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 210000004247 hand Anatomy 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 229910001416 lithium ion Inorganic materials 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000013021 overheating Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000035807 sensation Effects 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002459 sustained effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000016776 visual perception Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/41—Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/68—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/683—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/27—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
- G10L25/30—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/48—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
- G10L25/51—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
- G10L25/57—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination for processing of video signals
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/02—Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
- G11B27/031—Electronic editing of digitised analogue information signals, e.g. audio or video signals
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/19—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
- G11B27/28—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/44—Event detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Library & Information Science (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Acoustics & Sound (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Computing Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Image Analysis (AREA)
- Television Signal Processing For Recording (AREA)
- Studio Devices (AREA)
- Management Or Editing Of Information On Record Carriers (AREA)
Abstract
提供了用于编策视听内容的系统、方法和设备。移动图像捕获设备可以可操作为捕获一个或多个图像;接收音频信号;用第一机器学习模型分析音频信号的至少一部分,以确定描述音频事件的第一音频分类器标签;识别与第一音频分类器标签相关联的第一图像;用第二机器学习模型分析第一图像以确定第一图像所描绘的场景的合意性;以及至少部分地基于第一图像所描绘的场景的合意性,确定是将与第一音频分类器标签相关联的第一图像的副本存储在移动图像捕获设备的非易失性存储器中,还是在不存储第一图像的副本的情况下丢弃第一图像。
Description
相关申请的交叉引用
本发明基于申请日为2018年4月3日的美国非临时申请15/944,415并要求其权益,该申请通过引用结合于此。
技术领域
本公开总体上涉及视听内容捕获、编策(curation)和编辑系统,该系统包括智能地捕获视听内容的图像捕获设备。更具体地,本公开涉及利用机器学习在图像捕获设备处选择性地存储图像和生成编辑视频的系统和方法。
背景技术
图像捕获设备可以从各种角度捕获视听内容,这对于各种目的可能是有用的。作为一个示例应用,图像捕获设备可以用于执行生活日志记录(life logging),在生活日志记录中,由图像捕获设备在一段时间内捕获图像、图像流以及在一些实施方式中的相关联的音频,以记录用户日常生活期间发生的各种事件。可以执行生活日志记录来帮助老年人保持记忆,与他人分享用户的观点或体验,或者简单地记录用户体验的各种事件,以便用户可以在将来重访这些事件并享受他们的回忆。例如,父母可能喜欢看他们的孩子在生日蛋糕上吹灭蜡烛的照片。
因此,图像捕获设备可以用于捕获人们生活中的特定事件,其方式与人们使用传统相机来记录这些事件的方式大致相同。然而,图像捕获设备可以提供进一步的益处,即用户不必在事件期间主动操作相机来捕获事件。相反,在图像捕获设备捕获事件的图像,并且在某些情况下捕获事件的音频的同时,用户能够完全参与并享受事件。例如,父母可以享受和参与他们的孩子吹灭生日蛋糕上的蜡烛,而不用分心操作相机,同时仍然获得场景的图像供以后欣赏。
此外,与传统相机相比,图像捕获设备可能相对更擅长捕获和编策视听内容,诸如偷拍瞬间的图像。具体地,当使用相机拍摄照片时,人们通常会摆出姿势或者以其他方式不自然地改变他们的表情。从这个意义上讲,图像捕获设备可能能够捕获更准确地反映真实用户体验的图像,诸如谈话期间的笑声或纯真但短暂的微笑,而传统相机更局限于对象采用普通姿势或“说cheese”的图像。
然而,图像捕获设备的设计和使用所面临的主要挑战是它们在其中操作的环境资源有限。具体地,图像捕获设备的设计和使用通常受到以下约束:在相当长的一段时间内用于图像存储的存储量有限;处理能力或连续处理图像的能力有限;可用于延长的时间段操作的能量有限;和/或可耗散的热功率量有限(即设备温度,不应该超过该设备温度以防止设备过热或用户的不适,在某些情况下,用户可能佩戴移动图像捕获设备)。
此外,执行对由图像捕获设备捕获的视听内容的分析(诸如分析连续的图像流)可能是资源密集型的。例如,尽管在图像处理芯片的尺寸和能力方面有所进步,但是图像捕获设备通常仍然具有可以在任何给定时刻使用的有限的计算能力,此外,有限的电池资源为分析过程供电。另外,诸如图像和任何相关联的音频的视听内容的压缩、存储和传输可能是典型处理周期中消耗最大量功率的部分。例如,存储和传输全长视频文件会很快耗尽图像捕获设备的电池储备。因此,识别图像捕获机会、智能地选择用于分析的候选图像以及生成缩短的、编辑的视频文件以便以高效的方式进行不太资源密集的传输的能力是所期望的。
发明内容
本公开的方面和优点将在下面的描述中部分阐述,或者可以是从描述中显而易见的,或者可以通过实践本公开的实施例来了解。
本公开的一个示例方面涉及一种移动图像捕获设备。移动图像捕获设备可以包括网络接口、电源、图像传感器、音频传感器、至少一个处理器和存储多个机器学习模型的存储器。多个机器学习模型可以包括:第一机器学习模型,被配置为确定音频分类器标签;以及第二机器学习模型,被配置为确定图像所描绘的场景的合意性。存储器至少包括临时图像缓冲器、音频缓冲器和非易失性存储器。移动图像捕获设备可以可操作为接收音频信号。移动图像捕获设备还可以可操作为用第一机器学习模型分析音频信号的至少一部分,以确定描述音频事件的第一音频分类器标签。响应于确定描述音频事件的第一音频分类器标签,移动图像捕获设备还可以可操作为识别与描述音频事件的第一音频分类器标签相关联的第一图像。移动图像捕获设备还可以可操作为用第二机器学习模型分析第一图像,以确定第一图像所描绘的场景的合意性。移动图像捕获设备还可以可操作为至少部分地基于第一图像所描绘的场景的合意性来确定是将与第一音频分类器标签相关联的第一图像的副本存储在移动图像捕获设备的非易失性存储器中,还是丢弃第一图像而不存储第一图像的副本。第一图像可以是由移动图像捕获设备捕获的图像。
本公开的另一示例方面涉及一种生成包括环境声轨的编辑视频的方法。该方法可以包括由一个或多个计算设备获得指示包括多个序列图像帧和相关联的音频信号的视频流的数据。该方法还可以包括由一个或多个计算设备用机器学习的音频分类器模型来分析音频信号,以确定与音频信号的多个部分相关联的多个音频分类器标签。该方法还可以包括由一个或多个计算设备至少部分地基于多个音频分类器标签来生成包括音频信号的至少第一部分的环境声轨。至少部分地基于多个音频分类器标签来生成环境声轨可以包括选择音频信号的、具有与环境声音相关联的音频分类器标签的部分用于包括在环境声轨中,而拒绝音频信号的、具有与前景声音相关联的音频分类器标签的部分。该方法还可以包括由一个或多个计算设备生成图像流,该图像流包括多个序列图像帧的至少一个子集。该方法还可以包括由一个或多个计算设备生成包括环境声轨和图像流的编辑视频。
本公开的另一示例方面涉及一种用于捕获图像的方法。该方法可以包括由图像捕获设备的图像传感器捕获一个或多个图像。该方法还可以包括由图像捕获设备将一个或多个捕获图像的副本维护在图像捕获设备的临时图像缓冲器中。该方法还可以包括由图像捕获设备接收音频信号。该方法还可以包括由图像捕获设备用机器学习的音频分类器模型分析音频信号的至少一部分,以确定描述音频事件的第一音频分类器标签。响应于确定第一音频分类器标签,该方法还可以包括由图像捕获设备确定与第一音频分类器标签相关联的时间偏移量。该方法还可以包括由图像捕获设备使用时间偏移量从在临时图像缓冲器中维护的一个或多个捕获图像中识别与第一音频分类器标签相关联的第一捕获图像。第一捕获图像可以在时间上与用第一音频分类器标签标记的音频信号的部分偏移时间偏移量。该方法还可以包括由图像捕获设备将第一捕获图像的副本存储在图像捕获设备的非易失性存储器中。
本公开的其他方面涉及各种系统、装置、非暂时性计算机可读介质、用户界面和电子设备。
参考以下描述和所附权利要求,将更好地理解本公开的这些和其他特征、方面和优点。并入并构成本说明书一部分的附图示出了本公开的实施例,并与说明书一起用于解释本公开的原理。
附图说明
在参考附图的说明书中阐述了针对本领域普通技术人员的本公开的完整且可行的描述,其中:
图1描绘了根据本公开的示例方面的示例图像捕获、编策和编辑系统;
图2描绘了根据本公开的示例方面的示例音频分析器模型的框图;
图3描绘了根据本公开的示例方面的示例图像处理框架中的数据流相对于时间的视觉表示;
图4描绘了根据本公开的示例方面的示例移动图像捕获设备的示例图像捕获模式的视觉表示;
图5描绘了根据本公开的示例方面的示例图像处理框架的示意图;
图6描绘了根据本公开的示例方面的示例图像处理框架;
图7描绘了根据本公开的示例方面的示例图像处理框架;
图8描绘了根据本公开的示例方面的示例图像处理框架;
图9描绘了根据本公开的示例方面的示例图像管线(pipeline);
图10描绘了根据本公开的示例方面的示例图像管线;
图11描绘了根据本公开的示例方面的示例场景分析器;
图12描绘了根据本公开的示例方面的场景分析器中的模型的示例配置;
图13描绘了根据本公开的示例方面的示例缩短视频生成框架的视觉表示;
图14描绘了根据本公开的示例方面的示例缩短视频生成框架的视觉表示;
图15描绘了根据本公开的示例方面的示例超延时(hyper-lapse)视频生成框架的视觉表示;
图16描绘了根据本公开的示例方面的示例超延时视频生成框架的视觉表示;
图17描绘了根据本公开的示例方面的用于获得用户输入的示例用户界面;
图18描绘了根据本公开的示例方面的用于获得用户输入的示例用户界面;
图19描绘了根据本公开的示例性方面的编策在移动图像捕获设备处捕获的图像的示例方法;
图20描绘了根据本公开的示例方面的生成包括环境声轨的编辑视频的示例方法;以及
图21描绘了根据本公开的示例方面的存储由图像捕获设备捕获的图像的示例方法。
具体实施方式
本公开提供了用于选择性保留和编辑由图像捕获设备捕获的视听内容的系统和方法。具体地,本公开的示例系统可以包括图像捕获设备,该图像捕获设备是选择性地与诸如智能手机、膝上型电脑或平板电脑的用户计算设备通信地可连接的。当操作时,图像捕获设备可以连续捕获图像的帧和/或相关联的音频,并且可以选择性地保留图像和/或音频的某些这样的帧。用户计算设备可以执行图像编策、编辑、存储、共享和其他任务。该系统可以被用于生活日志记录或其他沉浸式图像捕获体验或目的。
更具体地,根据本公开的一方面,移动图像捕获设备包括设备内置(on-device)智能,其帮助仅选择某些捕获的图像和/或音频以用于压缩和存储。作为示例,移动图像捕获设备可以包括音频传感器(例如,麦克风),该音频传感器可以获得音频信号,诸如指示一个或多个音频事件的数据。音频数据(或其一部分)可以由移动图像捕获设备的音频分析器分析,以确定描述一个或多个音频事件的一个或多个音频分类器标签。然后,移动图像捕获设备可以选择与一个或多个音频分类器标签相关联的一个或多个图像以用于图像分析。移动图像捕获设备还可以包括场景分析器,该场景分析器分析图像所描绘的场景以评估这种场景的合意性,并且至少部分地基于这种合意性,确定是存储这种图像和/或一个或多个其他图像,还是丢弃这种图像和/或其他图像而不进行进一步存储。在一些实施方式中,场景分析器包括一个或多个神经网络,诸如深度神经网络或其他多层非线性模型,其输出输入图像的场景的合意性的描述符。由于图像的压缩、存储和传输是图像处理周期中需要最大能量消耗的阶段,所以在设备内置智能引导下,图像的选择性保留极大地降低了移动图像捕获设备的功耗,并且在给定有限的能量资源(例如,电池)和设备温度限制的情况下实现卓越的性能。同样,在设备内置智能的引导下,图像和/或音频的选择性保留也极大地降低了移动图像捕获设备随时间的内存消耗。此外,在图像捕获和保留过程中使用音频作为输入可以允许捕获和保留以其他方式可能未捕获的图像。
在一些实施方式中,移动图像捕获设备的音频传感器(诸如麦克风)可以获得音频信号,该音频信号然后可以由移动图像捕获设备(诸如在连续或滚动的基础上)分析。在一些实施方式中,音频信号处理管线可以通过例如一个或多个模数转换器将模拟音频信号转换成数字信号,诸如指示音频信号的数据。在一些实施方式中,指示音频信号的数据可以在分析期间临时维护在音频缓冲器中,并且可以在分析之后被丢弃。
指示音频信号的数据可以通过机器学习模型(诸如移动图像捕获设备的音频分析器神经网络)来分析。在一些实施方式中,可以使用其他类型的机器学习模型。例如,在一些实施方式中,指示音频信号的数据或其一部分可以由机器学习的音频分类器模型来分析,该机器学习的音频分类器模型被配置为确定描述一个或多个音频事件的一个或多个音频分类器标签。在一些实施方式中,可以通过在移动图像捕获设备的存储器的音频缓冲器中维护音频信号(和/或指示音频信号的数据)的副本来分析音频信号。音频信号的至少一部分可以被输入到机器学习的音频分类器模型中。然后,描述音频事件的音频分类器标签可以被接收作为机器学习的音频分类器模型的输出。在一些实施方式中,音频信号和/或指示音频缓冲器中维护的音频信号的数据可以在分析之后被丢弃,从而有助于维护旁观者隐私。
例如,在一些实施方式中,诸如通过在由音频传感器和/或音频信号处理管线获得音频信号时在滚动或连续的基础上将音频信号输入到机器学习的音频分类器模型中,指示音频信号的数据可以在数据被接收时被分析。在一些实施方式中,可以分析音频信号的滚动窗口。在一些实施方式中,可以分析音频信号的一个或多个部分。在分析之后,音频信号可以被丢弃和/或重写。
机器学习的音频分类器模型可以被配置为确定描述一个或多个音频事件的音频分类器标签。例如,音频事件可以是声音、噪声或音频信号的至少一部分的其他语义描述,并且不需要是特定的“动作”。在一些实施方式中,机器学习的音频分类器模型可以被配置为区分人类讲话和非讲话声音。例如,在一些实施方式中,机器学习的音频分类器模型可以被配置为对多个非讲话声音进行分类,诸如笑声、哭声、掌声、脚步声、开门声、地板吱嘎声、高强度声音(诸如碰撞和/或撞击声)和/或其他声音。
在一些实施方式中,机器学习的音频分类器模型可以被配置为识别一个或多个图像捕获提示(cue)并输出图像捕获提示标签。例如,倒计时序列(例如,“3…2…1…”)、歌曲(例如,“生日快乐歌”)、口头命令(“捕获图像”或“拍照”)或其他合适的音频提示或命令可以指示可能的图像捕获机会可能正在发生或即将到来。
在一些实施方式中,机器学习的音频分类器模型可以被配置为确定一个或多个个体的存在,诸如通过识别纸张响动、脚步声、讲话和/或其他声音,并因此启动图像捕获模式。例如,在一些实施方式中,移动图像捕获设备可以被配置为分析音频信号,诸如在省电模式下在连续的基础上分析,并且在识别出指示一个或多个可能的图像捕获机会的一个或多个音频事件(诸如一个或多个图像捕获提示)时,切换到图像捕获模式以捕获一个或多个图像。例如,移动图像捕获设备可以从省电模式“醒来”,开始图像捕获和分析。在图像捕获过程中使用音频信号作为输入的优点是:分析音频信号可以使用比分析图像少得多的处理能力,这有助于延长移动图像捕获设备的电池寿命。
响应于识别出描述音频事件的音频分类器标签,移动图像捕获设备可以被配置为分析与特定音频分类器标签相关联的一个或多个图像。在一些实施方式中,移动图像捕获设备可以至少部分地基于音频分类器标签来识别一个或多个捕获的图像以用于图像分析。
在一些实施方式中,音频分类器标签可以指示应该选择在时间上与音频事件偏移的一个或多个图像以用于图像分析。例如,在一些实施方式中,时间偏移可以是音频事件之前的时间段。作为示例,在识别出包括笑声的音频分类器标签时,可以选择笑声之前的一个或多个图像以用于分析。在一些实施方式中,可以分析在与音频事件相关联的时间段内捕获的所有图像。例如,可以选择在笑声前3秒拍摄的所有图像以用于图像分析。
例如,在一些实施方式中,移动图像捕获设备可以被配置为捕获一个或多个图像,并且在临时图像缓冲器中维护每个捕获图像的副本。响应于识别出包括笑声的音频分类器标签(或其他合适的标签),移动图像捕获设备可以识别在临时图像缓冲器中维护的与音频事件相关联的一个或多个捕获图像,诸如在音频事件之前的时间段捕获的图像(例如,在笑声发生前一秒捕获的图像)。类似地,包括碰撞或撞击的音频分类器标签可以被用于识别与碰撞或撞击相关联的一个或多个捕获图像。以这种方式,移动图像捕获设备可以被配置为分析可能已经捕获到笑声(或其他音频事件)的原因并因此引起个人兴趣的图像。
在一些实施方式中,时间偏移可以是音频事件之后的时间段。例如,倒计时序列、“生日快乐歌”或其他图像捕获提示可以指示在即将到来的时间捕获的一个或多个图像应该被选择以用于图像分析。例如,在“生日快乐歌”的结尾,可以捕获一个或多个图像,这些图像可能包括一个人吹灭蛋糕上的蜡烛。机器学习的音频分类器模型可以提供与这种即将到来的图像捕获机会相关联的一个或多个音频分类器标签,并且移动图像捕获设备可以捕获和识别与一个或多个音频分类器标签相关联的一个或多个图像以用于图像分析。
在一些实施方式中,移动图像捕获设备可以被配置为识别与音频事件同时捕获的一个或多个图像以用于图像分析。例如,撞击或碰撞可以表明发生了意想不到的事情,因此可以提供有趣的图像捕获机会。在一些实施方式中,移动图像捕获设备可以选择与音频事件同时捕获的一个或多个图像以用于图像分析。
以这种方式,移动图像捕获设备可以识别与描述音频事件的音频分类器标签相关联的一个或多个图像,并且可以分析与音频分类器标签相关联的一个或多个图像。例如,在一些实施方式中,移动图像捕获设备的场景分析器可以被配置为确定图像所描绘的场景的合意性,该合意性可以被用于分析与音频分类器标签相关联的一个或多个图像。
移动图像捕获设备可以根据多种不同的捕获模式进行操作,以便捕获图像以用于图像分析,诸如通过场景分析器进行图像分析。不同的捕获模式可以对应于不同的图像分辨率和帧速率的各种组合。此外,不同的捕获模式可以具有不同的能量消耗特性或曲线。例如,具有更大图像分辨率和/或帧速率的捕获模式通常需要设备消耗更大的能量。
因此,根据本公开的另一方面,移动图像捕获设备的设备内置智能(例如,场景分析器)也可以做出关于图像捕获设备的捕获模式的控制决定。例如,如果场景分析器确定最近捕获的图像描绘了非常期望的场景,则场景分析器可以将图像捕获设备转换到具有更大图像分辨率和/或帧速率的捕获模式,从而捕获期望的场景的更高分辨率的图像。以这种方式,移动图像捕获设备可以在具有相对更有趣或更期望的场景可用于图像捕获的时间段内以相对消耗更多能量的捕获模式来保持操作,而在可用于捕获的场景相对不太有趣或不期望的时间段期间以节能捕获模式进行操作。
在一些实施方式中,除了帧速率和分辨率之外,移动图像捕获设备的设备内置智能(例如,场景分析器)可以基于对捕获的图像的分析来调整图像捕获设备的曝光时间、增益、感兴趣区域或片段(crop)、binning(合并)模式或其他参数中的一个或多个。例如,可以向移动图像捕获设备的图像传感器提供控制信号,以控制上述参数。在一些实施方式中,可以在不改变图像捕获设备的捕获模式的情况下调整上述参数。然而,图像捕获设备的不同捕获模式可以分别对应于上述参数的不同设置。
在一些实施方式中,移动图像捕获设备可以具有低功耗框架,该框架对于多种不同的捕获模式分别具有不同的配置和/或工作流。因此,尽管具有电源、存储器可用性、计算能力和设备温度的限制,移动图像设备的高级场景分析和控制特征使得移动图像捕获设备能够在相当长的时间内操作。
在一些实施方式中,图像捕获设备可以包括一个或多个镜头(例如,广角镜头);图像传感器;音频传感器;包含一个或多个图像处理组件的成像管线;场景分析器;音频分析器;一个或多个惯性运动单元(inertial motion unit,IMU);网络接口;和/或诸如电池的电源。图像捕获设备还可以包括一个或多个处理器和一个或多个存储器单元,该存储器单元包括例如易失性存储器(例如,DRAM(Dynamic Random Access Memory,动态随机存取存储器))和非易失性存储器(例如,闪存)。在一些实施方式中,图像捕获设备可以是能够从一个地方移动到另一个地方的移动图像捕获设备。
在一些实施方式中,至少在一些操作模式期间,图像捕获设备连续捕获多个图像(例如,以每秒至少一帧的帧速率连续捕获图像)。然而,如上所述,移动图像捕获设备最终可以仅存储连续捕获的图像中的某些被选择的图像。
具体地,根据本公开的一个方面,在一些操作模式下,移动图像捕获设备可以可操作为捕获分别描绘多个场景的多个图像;在临时图像缓冲器中维护多个图像中的每一个的第一副本;接收音频信号;分析音频信号的至少一部分,以识别描述音频事件的一个或多个音频分类器标签;识别与一个或多个音频分类器标签相关联的一个或多个捕获图像;确定至少一个捕获图像所描绘的场景的合意性;以及至少部分地基于至少一个捕获图像的场景的合意性,确定是将这种捕获图像和/或一个或多个其他捕获图像的第二副本存储在移动图像捕获设备的非易失性存储器中,还是从临时图像缓冲器中丢弃(多个)这种图像的第一副本而不将(多个)这种图像的第二副本存储在非易失性存储器中。
更具体地,如上所述,移动图像捕获设备可以包括场景分析器,该场景分析器至少在一些操作模式下被实施为分析图像的场景的合意性,以确定是否存储这种图像和/或一个或多个其他同期图像。例如,在一个示例实施方式中,移动图像捕获设备捕获(并缓冲)在时间上彼此接近的图像帧序列(例如,以每秒15帧的3秒的“视频”)。场景分析器可以仅分析帧的子集(例如,包括在“视频”中的45个帧中的3个),以确定该帧所描绘的场景的合意性。基于这种分析,场景分析器可以确定是否保存帧序列的全部或部分。场景分析器还可以基于对(多个)捕获图像的分析来调整相机的捕获模式或其他捕获参数,诸如帧速率、分辨率、曝光、增益、感兴趣区域、片段和合并模式。另外,在一些实施方式中,场景分析器可以分析原始的、未处理的图像,并且做出或协助做出关于用成像管线来处理图像的决定。
作为示例,在一些实施方式中,移动图像捕获设备的场景分析器包括至少一个神经网络,并且如上所述,使用这种神经网络来获得每个分析图像的场景的合意性的至少一个描述符。具体地,场景分析器可以将图像输入到至少一个神经网络,并且从该至少一个神经网络接收至少一个描述符作为输出。
作为另外的示例,在一些实施方式中,场景分析器的至少一个神经网络包括至少一个卷积神经网络。作为又一个示例,在一些实施方式中,场景分析器包括多个深度神经网络或其他多层非线性模型,其分别分析每个输入图像的多个不同特性。深度神经网络中的每一个可以针对被输入到这种深度神经网络中的每个图像输出至少一个描述符。作为示例,每个神经网络可以提供描述输入图像的场景的特性的注释作为输出。可以用(多个)注释对图像进行注释。
作为示例,深度神经网络可以包括以下中的一个或多个:面部检测深度神经网络,其检测每个输入图像的场景中一个或多个面部的存在和/或位置;面部识别深度神经网络,其将每个输入图像的场景中的一个或多个面部与一个或多个其他面部相匹配;面部属性深度神经网络,其检测每个输入图像的场景中的一个或多个面部的各种面部特性;面部上镜(photogenic)模型,其输出表示面部姿势和表情的上镜(photogenicness)水平的分数;面部标志检测深度神经网络,其检测一个或多个面部标志,诸如眼睛位置、鼻子位置或其他面部标志;图像内容深度神经网络,其输出描述每个输入图像的场景的一个或多个语义标签;以及照片质量深度神经网络,其输出描述每个输入图像的各种照片质量特性的照片分数。也可以实施或使用分析输入图像的各种其他特性的各种其他神经网络。神经网络可以是非递归的、递归的、或其组合。此外,在一些实施方式中,上述某些神经网络(例如,面部检测神经网络)可以包括或被实施为多个神经网络的级联,而不是单个神经网络。
在一些实施方式中,场景分析器包括至少一个多头深度神经网络,其接收单个输入集合并提供多个输出。多个输出可以分别包括每个输入图像的场景的合意性的多个描述符。作为一个示例,上述神经网络中的两个或更多个可以组合形成多头深度神经网络。例如,面部识别深度神经网络可以与面部属性深度神经网络相结合,以形成多头神经网络。具体地,作为一个示例,基于来自面部检测深度神经网络的输出选择的图像部分(例如,包含由面部检测深度神经网络检测到的面部的图像的片段)可以用作多头神经网络的输入,该多头神经网络表示面部识别深度神经网络和面部属性深度神经网络的组合。面部识别深度神经网络和面部属性深度神经网络的多头组合可以输出面部识别输出(例如,面部嵌入)和面部属性信息两者,而不是针对这两个目的具有两个单独的网络。
在一些实施方式中,来自场景分析器的各个部分的输出可以用于在处理图像的成像管线内做出更好的决定。例如,面部检测深度神经网络的输出可以用于以面部被良好曝光的方式来设置或调整成像管线中的曝光。
根据本公开的另一方面,在场景分析器包括多个模型(诸如神经网络)的一些实施方式中,场景分析器还可以包括模型选择器,该模型选择器控制图像被输入以用于场景分析的模型(如果有的话)。模型选择器可以根据包括计算消耗考虑、能量消耗考虑和/或图像场景的初始分析结果的许多标准来选择采用哪些模型。作为一个示例,模型选择器可以简单地实施预定义的时间表,或者可以实施关于要采用的模型的排序或配置的一些定义的逻辑。作为另一个示例,模型选择器本身可以是模型(例如,神经网络),诸如多层非线性模型(例如,深度神经网络)。
在一些实施方式中,模型选择器包括仅分析输入图像的一部分的注意力模型。注意力模型可以输出每个输入图像是否应该被输入到下游模型中的至少一个以用于进一步场景分析的指示。因此,注意力模型可以作为场景分析器中包括的其他深度神经网络的预过滤器。作为一个示例,注意力模型可以是递归深度神经网络,其通过一连串图像跟踪面部,并输出每个分析的图像描绘面部经历快乐的概率。注意力模型还可以输出注意力模型应该分析下一个输入图像的哪个部分的描述。另外,在一些实施方式中,注意力模型还可以输出在捕获和分析第二图像之前应该经过多长时间。
以这种方式使用注意力模型可以极大地降低移动图像捕获设备的能量消耗,因为注意力模型(其将其捕获和/或分析限制为图像的仅一部分)防护某些下游模型,这些下游模型可以分析图像的整体和/或需要更大的计算开销。此外,在再次捕获和分析图像之前,延迟由注意力模型推荐的时间段可以节省电能。在其他实施方式中,注意力模型可以用来代替其他模型来指导图像存储和/或捕获模式决定。在进一步的实施方式中,上面讨论的各种深度神经网络中的一个或多个可以被这种网络的注意力模型版本代替。
因此,场景分析器可以包括许多模型,这些模型分析输入图像所描绘的场景,并输出描述输入图像的场景的合意性(例如,描述影响场景的合意性的各种图像特性)的各种描述符(例如,注释)。如上所述,场景分析器可以基于这种描述符做出关于图像存储和/或捕获模式的智能决定。具体地,场景分析器可以包括保存控制器、传送控制器和/或模式控制器。保存控制器可以将来自模型的所有注释作为输入,并使用这种注释来决定是否处理、压缩和/或存储图像。传送控制器可以将来自模型的所有注释作为输入,并使用这种注释来决定是否传送图像。在其他实施方式中,传送控制器被包括在用户计算设备中,而不是图像捕获设备中。模式控制器可以基于这种注释来确定是否改变移动图像捕获设备的捕获模式。保存控制器、传送控制器和模式控制器可以是独立的组件,也可以组合成单个组件。
根据本公开的附加方面,在一些实施方式中,移动图像捕获设备的计算设备和/或另一计算设备还可以被配置为生成包括环境声轨的编辑视频。例如,在一些实施方式中,移动图像捕获设备可以在视频流模式下操作,其中移动图像捕获设备捕获多个序列图像帧和相关联的音频信号。在一些实施方式中,多个序列图像帧可以以适合平滑观看的速率被捕获,诸如每秒15、30或60帧。同期音频信号可以由移动图像捕获设备的音频传感器(诸如麦克风)捕获。
在一些实施方式中,音频信号可以由音频分析器(诸如音频分类器神经网络)分析,以确定与音频信号的一个或多个部分相关联的一个或多个音频分类器标签。例如,在一些实施方式中,诸如环境或背景声音的非讲话声音可以被音频分析器识别和标记。作为示例,这种声音可以包括环境声音(诸如海浪、风、雨、雷、树叶沙沙声等);动物声音(诸如鸟叫、虫鸣或其他动物声音);人类活动噪音(诸如车辆交通、鼓掌、脚步声、喋喋不休声、餐厅用餐、大笑、哭泣等);和/或其他声音。音频分析器可以被配置为分析音频信号并为音频信号的一个或多个部分确定一个或多个音频分类器标签。
一个或多个计算设备还可以至少部分地基于一个或多个音频分类器标签来生成包括音频信号的至少一部分的环境声轨。在一些实施方式中,一个或多个计算设备可以被配置为使用一个或多个机器学习模型(诸如一个或多个神经网络)来智能地生成环境声轨。例如,在一些实施方式中,一个或多个计算设备可以被配置为选择一个或多个背景或环境音频部分,这些部分捕获视频流被捕获的地方的本质或感觉。例如,对于在海滩捕获的视频流,音频信号可以包括海浪撞击海滩的声音、海鸥的叫声、风吹沙子的声音和/或其他声音。在一些实施方式中,环境声轨可以包括一个或多个音频部分,这些音频部分包括海浪、海鸥和/或风的声音。
在一些实施方式中,某些声音可以被分类和拒绝或者从环境声轨中排除。例如,可以识别和分类前景声音,诸如大声碰撞、撞击或人类语音,并且一个或多个计算设备可以从环境声轨中排除包含这种声音的音频部分。通过排除某些声音(诸如讲话声),旁观者的隐私可以得到维护。
在一些实施方式中,可以至少部分地基于来自用户的音频选择输入来生成环境声轨。例如,在一些实施方式中,移动图像捕获设备的音频分析器可以识别与音频信号的一个或多个部分相关联的一个或多个音频分类器标签,并且选择一个或多个候选声音用于用户输入选择。移动图像捕获设备可以被配置为通过网络将指示一个或多个候选声音的数据(诸如一个或多个音频分类器标签)传达到用户计算设备(诸如智能手机或膝上型电脑)。在一些实施方式中,可以提供用户界面,以允许用户查看与一个或多个音频部分相关联的一个或多个音频分类器标签,并且选择将哪些音频部分和/或每个部分的多少包括在环境声轨中。例如,可以在用户界面中提供各种用户输入选项,诸如选择框、滑动条、百分比或其他用户输入选项。用户可以选择一个或多个音频分类器标签,并且用户输入选择可以被传达到图像捕获设备。然后,可以通过选择具有所选择的音频分类器标签的音频信号的一个或多个部分用于包括在环境声轨中来生成环境声轨。通过识别用于包括在环境声轨中的一个或多个候选声音并将候选声音的描述而不是声音本身传达给用户带来的优点是:可以减少获得用户输入选择所需的处理能力和其他资源的量。
在一些实施方式中,可以选择多个音频部分用于包括在环境声轨中。例如,音频信号的第一部分(诸如海浪撞击海滩的声音)可以被选择用于包括在环境声轨中,并且音频信号的第二部分(诸如海鸥的叫声)也可以被选择用于包括在环境声轨中。在一些实施方式中,可以通过从第一部分过渡到第二部分来生成环境声轨。例如,包括海浪撞击海滩的声音的第一部分可以首先被包括在环境声轨中,并且包括海鸥的第二部分可以被包括在第一部分之后的环境声轨中。在一些实施方式中,可以通过从第一部分过渡到第二部分来生成环境声轨,诸如从第一部分到第二部分的淡入淡出(cross-fading)。
在一些实施方式中,一个或多个计算设备可以分析多个序列图像帧的至少一部分,以确定描述场景的一个或多个图像标签,并且至少部分地基于一个或多个图像标签来生成环境声轨。例如,如本文所述,一个或多个神经网络可以被用于分析一个或多个图像帧。在一些实施方式中,一个或多个神经网络可以被配置为识别图像的各个方面,诸如识别描述图像帧的场景的一个或多个语义标签(即图像标签)。例如,分析海洋场景中包括一个或多个波浪的图像的神经网络可以识别这样的波浪,并且提供描述波浪的一个或多个语义标签。在一些实施方式中,一个或多个计算设备可以至少部分地基于一个或多个图像标签来生成环境声轨。例如,在一些实施方式中,可以选择包括波浪声的音频部分来对应于包括描述海浪的一个或多个语义图像标签的图像帧。
一个或多个计算设备还可以生成包括多个连续图像帧的至少一个子集的图像流。例如,在一些实施方式中,子集可以用于生成加速或超延时图像流。
例如,一个或多个计算设备可以从多个序列图像帧中选择多个非序列图像帧,并连续地排列非序列图像帧。例如,在一些实施方式中,每隔一帧、每三帧、每四帧等可以被选择和被连续地排列以生成超延时图像流。在一些实施方式中,可以基于每个图像帧的一个或多个属性来选择和连续地排列单独的非序列图像帧,以生成超延时图像流,从而提高超延时图像流的可观看性。例如,不是根据图案来选择图像帧(例如,每三个图像帧),而是可以选择单独的图像帧来更平滑地从一个场景过渡到另一个场景或者从一个帧过渡到另一个帧。
在一些实施方式中,一个或多个计算设备可以选择序列图像帧的第一子集,选择序列图像帧的第二子集,并且生成包括连续排列的序列图像帧的第一子集和序列图像帧的第二子集的缩短的图像流。例如,一个或多个计算设备可以选择与视频流的第一部分(例如,海滩的一部分)相对应的图像帧的第一子集,并且选择与视频流的第二部分(例如,公园的一部分)相对应的图像帧的第二子集,并且排列它们以供连续观看。每个子集可以以常规回放速度播放,诸如与图像帧的子集被捕获的速度相对应的速度。
一个或多个计算设备还可以将图像流(诸如超延时图像流或缩短的图像流)与环境声轨组合,以生成编辑视频。在一些实施方式中,一个或多个计算设备可以将在超延时模式下捕获的多个序列图像帧与环境声轨组合,以生成编辑视频。例如,可以播放图像流(例如,超延时或缩短的图像流)来提供体验的视觉概括,而环境声轨可以帮助提供“在那里是什么样子”的感觉。
在一些实施方式中,包括在环境声轨中的音频部分可以从视频流的一部分中选择,该视频流的一部分与也为编辑视频选择的一个或多个图像帧不同期。例如,基于图像中描绘的场景的合意性,可以选择描绘海滩场景的图像帧的子集用于包括在内。然而,同期获得的音频部分可能包括不期望的音频,诸如大声噪声或人类讲话。一个或多个计算设备可以被配置为选择要与描绘海滩场景的图像帧同时播放的非同期音频部分(诸如包括海浪声的音频部分),并且在编辑视频中组合这两者,该编辑视频捕获体验的本质或感觉,而没有不必要的、令人分心的或刺耳的前景声音。
在一些实施方式中,用户可以提供用户输入来选择要生成哪种类型的编辑视频(诸如超延时或缩短的编辑视频)和/或视频长度。例如,可以在诸如智能手机的用户计算设备上提供用户界面,用户可以从该用户界面中选择视频类型和/或视频长度。在一些实施方式中,用户输入可以在第一计算设备(例如,智能手机)上被接收,并通过网络传达到第二计算设备(例如,移动图像捕获设备)。在一些实施方式中,然后,第二计算设备(例如,移动图像捕获设备)可以至少部分地基于用户输入来生成编辑视频。
在一些实施方式中,移动图像捕获设备可以获得包括多个序列图像帧和相关联的音频信号的视频流,并且智能地生成编辑视频。例如,移动图像捕获设备可以被配置为获得视频流,分析音频流以生成一个或多个音频分类器标签,至少部分地基于一个或多个音频分类器标签来生成包括音频信号的至少一部分的环境声轨,生成包括多个序列图像帧的至少一个子集的图像流,以及生成包括环境声轨和图像流的编辑视频。例如,移动图像捕获设备可以通过使用一个或多个神经网络,至少部分地基于图像帧中描绘的场景的合意性智能地选择序列图像帧的一个或多个子集来生成图像流。类似地,移动图像捕获设备可以通过使用机器学习的音频分类器模型智能地选择一个或多个音频部分来生成环境声轨。以这种方式,移动图像捕获设备可以生成包括环境声轨和图像流的编辑视频。
通过在移动图像捕获设备上执行图像分析和/或音频分析以生成编辑视频所带来的优点是:可以减少发送视频流所需的处理能力和能量的量。此外,通过在生成编辑视频之前识别和排除某些前景声音(诸如人类讲话)可以增强旁观者的隐私。
根据本公开的示例方面的系统和方法可以提供许多技术效果和益处。例如,本文提供的系统和方法允许在智能图像捕获过程中使用音频信号。例如,音频信号的分析可以用于识别要分析以进行图像捕获和保留的图像帧,包括时间上偏移的图像帧。因此,可以分析和捕获那些可能没有被考虑捕获和保留的图像,诸如捕获笑声之前的有趣事件的图像。另外,本公开的系统和方法可以允许减少移动图像捕获设备消耗的功率,诸如通过允许移动图像捕获设备在节能模式下操作,在该节能模式中,设备在接收到某些音频信号时“醒来”。
此外,本公开的系统和方法可以允许由移动图像捕获设备生成智能编辑视频。例如,可以生成超延时或缩短的视频,该视频通过包括环境声轨来捕获特定体验的本质或感觉。此外,旁观者的隐私可以通过排除和丢弃某些音频部分(诸如讲话)来维护。
此外,通过利用一个或多个神经网络,本公开的系统和方法可以增加移动图像捕获设备的计算效率。例如,机器学习的音频分类器模型可以被包括在移动图像捕获设备上,该机器学习的音频分类器模型可以被训练来对某些声音进行分类,这些声音然后可以在智能图像捕获过程中使用。另外,一个或多个神经网络可以被包括在移动图像捕获设备上,以分析由移动图像捕获设备捕获的一个或多个图像所描绘的场景的合意性。以这种方式,可以以有效的方式捕获、识别和存储期望的图像。
本公开的系统和方法还提供了对计算技术的改进。具体地,包括一个或多个处理器和存储器的移动图像捕获设备可以接收音频信号,并且用第一神经网络分析音频信号的至少一部分,以识别描述音频事件的第一音频分类器标签。然后,移动图像捕获设备可以用第二神经网络分析与描述音频事件的第一音频分类器标签相关联的第一图像,以确定第一图像所描绘的场景的合意性。在一些实施方式中,第一图像可以在时间上与音频事件偏移,诸如与音频事件之前或之后的时间段偏移。在一些实施方式中,第一图像可以是由移动图像捕获设备捕获的已经被维护在临时图像缓冲器中的图像。然后,动图像捕获设备可以至少部分地基于第一图像所描绘的场景的合意性来确定是存储与第一音频分类器标签相关联的第一图像的副本还是丢弃第一图像。例如,移动图像捕获设备可以决定是将第一图像的副本存储在非易失性存储器中还是丢弃第一图像。
此外,一个或多个计算设备可以获得指示包括多个序列图像帧和相关联的音频信号的视频流的数据。在一些实施方式中,视频流可以经由移动图像捕获设备而获得。在一些实施方式中,一个或多个计算设备可以是可以生成编辑视频的移动图像捕获设备。一个或多个计算设备可以用机器学习的音频分类器模型来分析音频信号,以确定与音频信号的一个或多个部分相关联的一个或多个音频分类器标签。一个或多个计算设备可以至少部分地基于一个或多个音频分类器标签来生成包括音频信号的至少一部分的环境声轨。例如,具有与环境声音相关联的音频分类器标签的音频信号的部分可以被选择用于包括在环境声轨中,而具有与前景声音相关联的音频分类器标签的部分可以被拒绝或从环境声轨中排除。一个或多个计算设备可以生成至少包括多个连续图像帧的子集的图像流。在一些实施方式中,图像流可以是超延时图像流或缩短的图像流。一个或多个计算设备可以生成包括环境声轨和图像流的编辑视频。
现在参考附图,将更详细地讨论本公开的示例实施例。
图1描绘了根据本公开的示例实施例的示例视听内容捕获、编策和编辑系统100。系统100可以包括至少一个图像捕获设备102和用户计算设备130。图像捕获设备102可以是例如移动图像捕获设备102。系统100还可以包括一个或多个附加的移动图像捕获设备104和106和/或服务器计算设备150。
移动图像捕获设备可以包括一个或多个处理器112和存储器114。一个或多个处理器112可以是任何合适的处理设备,并且可以是一个处理器或可操作地连接的多个处理器。在一些实施方式中,处理器112包括专用视觉处理平台,其在功率受限的环境中传递高性能机器视觉和视觉感知。例如,处理器112可以是为高性能、低功率计算成像而设计的片上系统(system-on-a-chip,SoC)。在一些实施方式中,处理器112包括硬件、软件和/或固件,其可选择性地用于在芯片上执行完整的图像处理管线。在一些实施方式中,处理器112包括针对视觉处理工作负载而优化的多个矢量处理器。
存储器114可以包括一个或多个非暂时性计算机可读介质,诸如RAM(randomaccess memory,随机存取存储器)、ROM(read only memory,只读存储器)、EEPROM(electrically erasable programmable read only memory,可编程只读存储器)、EPROM(electrically programmable read only memory,可编程只读存储器)、闪存设备、磁盘等、以及它们的组合。在一些示例实施方式中,存储器114至少包括第一DRAM存储器和第二非易失性存储器。例如,第一DRAM存储器可以被用于临时存储各种类型的数据,诸如图像数据和/或音频数据,而第二非易失性存储器可以被用于非临时存储各种类型的数据。在一些实施方式中,非易失性存储器包括闪存卡。在一些实施方式中,闪存卡是安全数字(SecureDigital,SD)卡。
移动图像捕获设备102还可以包括镜头盖116、一个或多个镜头118和图像传感器120。图像传感器120可以是检测入射光或其他电磁辐射并输出足以生成场景的图像的数据的传感器。例如,图像传感器120可以是COMS(Complementary Metal-Oxide-SemiconductorTransistor,互补金属氧化物半导体传感器)或CCD(Charge Coupled Device,电荷耦合器件)传感器。在一些实施方式中,一个或多个镜头118可以包括广角镜头,使得由图像传感器120输出的数据产生的图像是广角图像。
在一些实施方式中,移动图像捕获设备102的镜头盖116可以是在光学上阻挡镜头118和图像传感器120的位置和光学上不阻挡镜头118和图像传感器120的位置之间可手动调节的。当镜头盖116被放置到光学上阻挡镜头118和图像传感器120的位置时,移动图像捕获设备102通过在图像不被主动捕获的超低功率模式下操作来做出响应。然而,当镜头盖116被移除或以其他方式被放置到光学上不阻挡镜头118和图像传感器120的位置时,移动图像捕获设备可以操作为连续捕获和处理多个图像。
在一些实施方式中,镜头盖116可以具有视觉上独特的面向外部的表面。以这种方式,当镜头盖116覆盖镜头118时,对于图像捕获设备102的可见范围内的人显而易见的是移动图像捕获设备102不主动捕获图像。例如,镜头盖116可以具有明亮的颜色和/或图案设计,其提供关于移动图像捕获设备102的当前捕获状态的可一眼看到的(glanceable)指示。
在一些实施方式中,用户可以调节镜头盖116以向移动图像捕获设备102提供输入控制信号。作为一个示例,在一些实施方式中,如果用户根据某种样式(pattern)(例如,三次连续关闭然后打开)打开和关闭镜头盖116,则移动图像捕获设备102可以通过删除某个时段(例如,最后五分钟)的最近捕获的图像来响应。这可以使用户能够快速且容易地进行控制输入,以删除描绘不期望的场景的图像。也可以根据镜头盖操纵的某些其他样式来执行其他操作。
在一些实施方式中,用户还可以通过在移动图像捕获设备102的视野内做出某些可识别的姿态(例如,手势)来为移动图像捕获设备102提供控制信号。作为示例,用户可以使用一只手或两只手(例如,食指和拇指)来形成特定场景的“框(frame)”的一个或两个角。移动图像捕获设备102可以识别这种姿态并捕获包括“被框住的”场景的图像。各种其他姿态也可以用作控制输入,包括例如删除最近捕获的图像的姿态,如上所述。
如上所述,图像传感器120可以输出足以生成由图像传感器120观看的场景的图像的数据。移动图像捕获设备102可以包括用于处理来自图像传感器120的这种数据以生成这种图像的各种附加组件。作为一个示例,移动图像捕获设备可以包括成像管线122。成像管线122可以包括一个或多个图像处理组件,其可操作为处理来自图像传感器122的原始数据以生成图像。下面将进一步参考图9和图10讨论根据本公开的示例成像管线122。
根据本公开的另一方面,移动图像捕获设备102还可以包括场景分析器124。在一些实施方式中,场景分析器124可操作为分析由移动图像捕获设备102捕获的图像所描绘的场景,以评估这种场景的合意性,并且至少部分地基于这种合意性,确定是存储这种图像和/或一个或多个其他同期捕获的图像,还是丢弃这种图像和/或一个或多个其他图像而不进行进一步存储。在一些实施方式中,场景分析器124包括一个或多个机器学习模型,诸如神经网络(例如,深度神经网络)或其他多层非线性模型,其输出输入图像的场景的合意性的描述符。另外,在一些实施方式中,场景分析器124还可以(例如,基于所描绘的场景的合意性)做出关于移动图像捕获设备102的捕获模式的控制决定。下面将进一步参考图11和图12讨论根据本公开的示例场景分析器124。
移动图像捕获设备102还可以包括一个或多个音频传感器121。音频传感器121可以是例如麦克风或被配置为获得音频信号的其他音频传感器。例如,各种声音(讲话、笑声、环境声音等)可以作为音频信号被一个或多个音频传感器121接收。
移动捕获设备还可以包括一个或多个音频管线123。例如,音频管线123可以被配置为处理或转换由音频传感器121接收的音频信号。例如,各种转换器(例如,模数转换器)、放大器、压缩器/编码器或其他音频信号处理组件可以被包括在音频处理管线123中。在一些实施方式中,音频管线123可以接收音频信号,并将音频信号转换成指示音频信号的数据。例如,指示音频信号的数据可以是未压缩文件格式(.WAV、.AIFF、AU等),压缩文件格式(.MPEG4、.WMA、MP3等)或其他合适的音频格式。在一些实施方式中,指示音频信号的数据可以诸如临时存储在音频缓冲器中,诸如存储在存储器114中。
根据本公开的另一方面,移动图像捕获设备102还可以包括音频分析器125。在一些实施方式中,音频分析器124可以包括一个或多个机器学习模型(诸如一个或多个神经网络),该机器学习模型被配置为基于输入到机器学习模型中的音频信号/音频数据来确定音频分类器标签。例如,在一些实施方式中,音频分析器125可以被配置为分析音频信号,并用一个或多个音频分类器标签来标记音频信号的一个或多个部分。一个或多个音频分类器标签可以描述各种音频事件,诸如笑声、鼓掌声、哭声、脚步声、风、波浪、动物、讲话或其他声音。将参考图2更详细地讨论根据本公开的示例方面的示例音频分析器125。
移动图像捕获设备102还可以包括一个或多个惯性测量单元(IMU)126。惯性测量单元126可以是一种电子设备,其测量和报告施加到移动图像捕获设备102或以其他方式与移动图像捕获设备102相关联的速度、方向和重力中的一个或多个。例如,惯性测量单元126可以包括一个或多个加速度计、陀螺仪和/或磁力计。在一些实施方式中,来自一个或多个惯性测量单元126的数据可以被附加到在由惯性测量单元126生成这种数据的时间前后捕获的图像。因此,例如,由移动图像捕获设备122捕获的图像可以具有由惯性测量单元126在捕获时提供的信息作为相关联的元数据。这种信息可以由下游过程使用,例如,在选择(或拒绝)由于模糊、运动或可归因于移动图像捕获设备的无意移动、冲撞或其他物理干扰(例如,由用户步态产生的物理干扰)的其他不期望的属性而导致的特定图像时使用。因此,图像捕获定时可以基于来自IMU 126的数据。
在一些实施方式中,移动图像捕获设备102可以使用由惯性测量单元126输出的数据来确定当前运动样式是否会产生期望的超延时捕获。例如,指示行走样式的惯性数据可以触发对超延时的捕获。在一些实施方式中,可以以小于回放速率的帧速率(例如,每3秒1帧对(vs.)每秒30帧)来捕获超延时图像捕获。在一些实施方式中,移动图像捕获设备102可以分析来自惯性测量单元126的数据,以帮助关于选择和/或保留用于构成超延时的帧的决定。例如,可以选择彼此良好对准的图像帧来构成超延时。
在一些实施方式中,可以监控由惯性测量单元126输出的数据,以检测指示用户轻击移动图像捕获设备102的惯性测量数据。更具体地,在一些实施方式中,如果移动图像捕获设备102检测到用户已经轻击移动图像捕获设备102(例如,根据某种样式,诸如例如,三次连续轻击),则移动图像捕获设备102可以通过增加图像存储的概率、在短时间段内执行图像捕获和存储而无需场景分析、将移动图像捕获设备102转换到不同的捕获模式(例如,突发捕获模式)和/或删除最近捕获的图像来响应这种轻击。各种触摸输入可以映射到各种触摸输出。在其他实施方式中,移动图像捕获设备102可以包括其他触敏组件,以替代地或除了监控由惯性测量单元126输出的数据之外,检测用户轻击。
移动图像捕获设备102还包括网络接口128。网络接口128可以包括任何数量的组件来提供联网通信(例如,收发器、天线、控制器、卡等)。在一些实施方式中,移动图像捕获设备102包括可操作为使用短程无线协议(诸如蓝牙和/或蓝牙低能量)进行通信的第一网络接口,以及可操作为使用其他无线网络协议(诸如Wi-Fi)进行通信的第二网络接口。在一个示例中,移动图像捕获设备102、104和106可操作为使用短程无线协议(诸如蓝牙低能量)彼此通信。此外,图像捕获设备102可操作为使用短程无线协议(例如,用以发送用户输入选项)或Wi-Fi或其他更鲁棒的网络协议(例如,用于传送捕获的图像和/或编辑视频的网络协议)与用户计算设备130进行通信。
移动图像捕获设备102还可以包括电源129。通常,电源129将是内置电池,诸如内置锂离子电池。移动图像捕获设备102还可以电连接(例如,经由微型USB端口或其他电和/或数据连接端口)到壁装插座或其他公用电源或其他适当额定电源。将移动图像捕获设备102插入壁装插座可以给内置电池充电。在一些实施方式中,移动图像捕获设备102被配置为仅当移动图像捕获设备102连接到外部电源(例如,壁装插座)时,才通过网络180将图像传送到用户计算设备130或者执行其他高能耗任务。
在一些实施方式中,移动图像捕获设备102可以是可穿戴的图像捕获设备。作为示例,移动图像捕获设备102可以是徽章形的。例如,移动图像捕获设备102可以具有圆形周边的外壳。移动图像捕获设备102的镜头118和图像传感器120可以位于外壳的偏心位置(例如,不在圆形外壳的同心中心)。外壳的外周边可以是斜面。此外,在一些实施方式中,移动图像捕获设备102可以悬挂在挂带上佩戴在用户脖子周围。在其他实施方式中,移动图像捕获设备102可以包括夹子,该夹子允许用户将移动图像捕获设备102夹在衣服或其他个人物品上。
根据本公开的另一方面,移动图像捕获设备102可以可操作为与位于相同一般区域内的其他移动图像捕获设备(例如,设备104和106)通信。作为一个示例,移动图像捕获设备102可以可操作为发送由位于移动图像捕获设备(例如,设备104和106)附近的一个或多个其他移动图像捕获设备无线地可接收的兴奋信号,反之亦然。兴奋信号指示由移动图像捕获设备102最近捕获的多个图像之一所描绘的场景具有相对较大的合意性。因此,移动图像捕获设备102可以传送无线信号(例如,蓝牙低能量广播)来警告附近的设备(例如,设备104和106)有令人兴奋的、有趣的或者另外期望的场景可供捕获。
此外,在一些实施方式中,响应于(例如,从设备104或106之一)接收到兴奋信号,移动图像捕获设备102执行以下至少一项:增加移动图像捕获设备102将存储最近捕获的图像的非临时副本的概率;尝试在最近捕获的图像内识别在兴奋信号中包括的一个或多个嵌入的匹配;以及增加移动图像捕获设备102的图像传感器120的帧率或分辨率中的一个或多个。
作为一个示例,在一些实施方式中,从另一设备接收兴奋信号可以使得接收图像捕获设备102的场景分析器124在其存储决定中更加宽松(例如,通过降低由场景分析器124的保存控制器部分实施的各种阈值和/或提供兴奋信号作为场景分析器124中包括的一个或多个模型的输入)。
作为另一示例,在一些实施方式中,兴奋信号可以包括使接收图像捕获设备102能够确定图像是否描绘了激励发送图像捕获设备的相同场景或其部分的信息。因此,接收图像捕获设备102可以将其当前观看的场景的概括与接收到的概括进行比较,以确定其是否正在观看相同场景。如果接收图像捕获设备102确定它正在观看相同场景,则它可以实施对这种场景的增强捕获和存储。
兴奋信号也可以用于捕获同步。具体地,在同一事件中的多个图像捕获设备所有者可以从用他们的移动图像捕获设备同时捕获图像中受益。例如,如果用户稍后分享他们对该事件的反映,则捕获期望场景的可能性将更大,并且更有可能创建特殊的伪像,因为多个图像捕获设备的集合将从不同角度拍摄相同场景的更多图片。兴奋信号也可以充当计算机视觉信号(如面部表情和凝视路径)的增强器以向移动图像捕获设备通知重要时刻。
然而,为了确保所有相关方的隐私,兴奋信号中包括的信息不足以使接收图像捕获设备识别或再现由发送图像捕获设备观看的特定场景。相反,兴奋信号中包括的信息通常是场景的概括或其他低维表示,其仅提供足够的信息供接收捕获设备确定(在某个概率范围内)它当前是否正在观看相同场景或其部分。例如,这种概括可以包括各种图像特性(例如,颜色等)的直方图或者可以是从发送图像捕获设备的场景分析器中包括的一个或多个模型的一个或多个隐藏层中检索的嵌入。
再次参考图1,系统100还包括用户计算设备130和服务器计算设备150。在一些实施方式中,移动图像捕获设备102通过网络180的局域网部分通信地连接到用户计算设备130,而用户计算设备130通过网络180的广域网部分通信地连接到服务器计算设备150。在其他实施方式中,移动图像捕获设备102直接通过广域网通信地连接到服务器计算设备150。
用户计算设备130可以执行视听内容编策,获得用户输入选择,并允许用户编辑图像和/或视频。具体地,在一些实施方式中,当连接到移动图像捕获设备102时(例如,在捕获会话已经完成之后),用户计算设备130可以选择存储在图像捕获设备处的某些图像以传送到用户计算设备130。用户计算设备130还可以提供用户界面,该用户界面使得用户能够选择性地编辑所传送的图像。具体地,用户界面可以实现各种高级图像编辑技术,诸如计算摄影、相机重新定位等。
在一些实施方式中,用户界面还可以用于获得用于生成编辑视频的各种输入。例如,在一些实施方式中,移动图像计算设备102可以向用户计算设备130传达一个或多个音频分类器标签(或指示音频分类器标签的数据)。一个或多个音频分类器标签可以例如在分析音频信号之后获得,并且可以描述音频信号的各个部分。用户可以选择音频分类器标签中的一个或多个以用于包括在要被包括在编辑视频中的环境声轨中。类似地,用户可以提供其他输入,诸如要生成的视频的类型(例如,超延时或缩短的视频)以及视频应该有多长。将参考图17和图18更详细地讨论用于获得用于生成编辑视频的用户输入选择的示例用户界面。
用户计算设备130可以是例如具有处理器132和存储器134的计算设备,诸如无线移动设备、个人数字助理(PDA)、智能手机、平板电脑、膝上型电脑、台式计算机、支持计算的手表、支持计算的眼镜或其他这样的设备/系统。简而言之,用户计算设备130可以是能够与移动图像捕获设备102交互并且(例如,通过发送和接收数据)实施本公开的任何计算机、设备或系统。
用户计算设备130的处理器132可以是任何合适的处理设备,并且可以是一个处理器或可操作地连接的多个处理器。存储器134可以包括任意数量的计算机可读指令138或其他存储的数据136。具体地,存储在存储器134中的指令138可以包括一个或多个应用。当由处理器132实施时,一个或多个应用可以分别使得或指示处理器132执行与本公开一致的操作,诸如例如,运行图像存储、编策、编辑和共享应用。存储器134还可以存储由移动图像捕获设备102和/或用户计算设备130捕获的任意数量的图像。
用户计算设备130还可以包括显示器。显示器可以是用于向用户显示信息的许多不同技术中的任何一种,包括触敏显示技术。
用户计算设备130还包括传送控制器140。具体地,在一些实施方式中,当连接到移动图像捕获设备102时(例如,在捕获会话已经完成之后),传送控制器140可以选择存储在图像捕获设备102处的某些图像以传送到用户计算设备130。例如,这种选择可以由(如在由移动图像捕获设备102分别为存储的图像提供的各种元数据注释中所反映的)各种图像属性来指导。通常,将选择最理想的图像进行传送,同时保持图像的多样性。
在一些实施方式中,传送控制器140可以执行优化算法来选择存储在移动图像捕获设备102的存储器114中的哪些图像以请求传送。优化算法可以具有多个相关联的目标,这些目标例如至少包括设置的多样性和所描绘的人物的多样性,同时仍然请求传送最期望的图像。在一些实施方式中,传送控制器140可以实施子模块功能来选择哪些图像以请求传送。
在一些实施方式中,用户计算设备130可以接收从移动图像捕获设备102传送的要在编辑视频中使用的音频信号的部分。例如,如本文更详细描述的,在分析音频信号之后,可以选择音频信号的一个或多个部分以用于包括在环境声轨中。例如,某些前景声音(诸如人类讲话)可以被排除,而其他声音(诸如环境或背景声音)可以被选择用于包括在内。在一些实施方式中,包含这种环境或背景声音的一个或多个音频部分可以从移动图像捕获设备102传送到用户计算设备130。此外,在一些实施方式中,视频流可以类似地被传送,并且编辑视频可以由用户计算设备102生成,如本文所述。在一些实施方式中,编辑视频可以由移动图像捕获设备102生成,并传送到用户计算设备130。在一些实施方式中,传送控制器140可以用于将编辑视频和/或编辑视频的部分从移动图像捕获设备102传送到用户计算设备130。
在一些实施方式中,用户计算设备130还包括最佳拍摄选择器142。最佳拍摄选择器142可以被实施为从一组图像中选择至少一个高亮图像(例如,对于映照(reflection)内的每个时刻至少一个高亮图像)。例如,最佳拍摄选择器142可以基于针对图像中的每一个而包括的注释或其他元数据来选择高亮图像。在一些实施方式中,最佳拍摄选择器142在执行高亮选择之前,将时刻内的每个图像相对于该时刻内的对等图像进行归一化。因此,对于每个时刻的高亮图像的选择可以至少部分地基于该时刻中包括的每个图像的注释相对于该时刻中包括的至少一个其他图像的注释的比较。
在一些实施方式中,最佳拍摄选择器142也可以被实施为确定一个或多个图像的推荐构图。例如,推荐构图可以仅对应于图像的一部分(例如,广角图像的去锐化部分)。推荐构图也可以对应于虚拟相机相对于图像的特定视角。最佳拍摄选择器142可以至少部分地基于与图像相关联的注释或其他元数据来确定推荐构图。例如,推荐构图可以对应于广角图像的、仅包括与对用户具有提高的重要性的实体集合中包括的实体相对应的面部的去锐化部分。
在一些实施方式中,图像所描绘的对象的凝视角度可以用于确定这种图像的推荐构图。作为示例,人类对象的面部角度的末端(例如,上/下、左/右)可以用于帮助确定周围区域有多少应该被包括在片段中(例如,在推荐构图中)。在一些实施方式中,确定推荐构图可以包括选择帧内最显著、光照好和/或构图感兴趣的部分。
在另外的实施中,最佳拍摄选择器142和/或用户计算设备130的其他组件可以执行语义场景分割(例如,在像素级而不是根据边界框)。语义场景分割可以用于构成图像的某些部分、模糊图像的某些部分或选择性地将其他编辑技术应用于图像的某些部分。
用户计算设备130还包括用户界面控制器144。用户界面控制器144可以被实施为提供用户界面,该用户界面使得用户能够在时间上和/或空间上探索映照内的图像。具体地,用户界面控制器144可以被实施为用适当的用户界面交互来检测和响应某些用户输入。
用户计算设备130还包括计算摄影器146。计算摄影器146可以被实施为针对映照中包括的图像执行各种图像编辑或图像合成技术。作为一个示例,在用户已经调整相机的视角之后,计算摄影器146可以通过重新计算根据新的视角得到的一个或多个相机参数(例如,焦点、镜头失真、照明等)来合成对应于所选择视角的新图像。作为其他示例,计算摄影器146可以被实施为执行高级图像处理技术,诸如超分辨率、超延时、纹理映射、深度映射、视图合成等。同样,计算摄影器146可以被实施为提供对ISO、景深、稳定性和其他图像参数或特性的可调控制。
传送控制器140、最佳拍摄选择器142、用户界面控制器144和计算摄影器146中的每一个都可以包括用于提供期望功能的计算机逻辑。因此,传送控制器140、最佳拍摄选择器142、用户界面控制器144和计算摄影器146中的每一个都可以以控制通用处理器的硬件、固件和/或软件来实施。在一些实施方式中,传送控制器140、最佳拍摄选择器142、用户界面控制器144和计算摄影器146中的每一个都包括存储在存储设备上、加载到存储器134中并由处理器132运行或者可以由计算机程序产品提供的程序代码文件,例如,存储在有形的计算机可读存储介质(诸如例如,RAM盘或卡或其他计算机可读光学或磁性介质)中的计算机可执行指令138。
服务器计算设备150可以使用一个或多个服务器计算设备来实施,并且可以包括处理器152和存储器154。在服务器计算设备150包括多个服务器设备的情况下,这种服务器设备可以根据任何计算架构来操作,包括并行计算架构、分布式计算架构、或其组合。
处理器152可以是任何合适的处理设备,并且可以是一个处理器或可操作地连接的多个处理器。存储器154可以存储指令158,该指令158使得处理器152执行操作来实施本公开。
服务器计算设备150还可以包括模型训练器160。服务器计算设备150可以实施模型训练器160来训练和/或重新训练一个或多个模型(例如,神经网络),诸如多层非线性模型(例如,深度神经网络)。作为示例,模型训练器160可以执行反向传播技术(诸如批量梯度下降或随机梯度下降)来训练模型。模型训练器160还可以利用丢弃(dropout)技术来对抗模型过度拟合。模型训练器160可以使用经处理的图像和/或未经处理的图像作为训练图像来训练模型。
因此,在一些实施方式中,服务器计算设备150可以实施模型训练器160,以在附加训练数据上训练新模型或更新现有模型的版本。作为示例,模型训练器160可以使用手动标记为期望的图像来训练一个或多个模型,以提供关于输入图像的合意性的输出。具体地,在一些实施方式中,附加的训练数据可以是用户通过编辑界面创建的图像。作为另一示例,模型训练器160可以使用包括环境音轨的编辑的视频剪辑来训练一个或多个模型,以智能地选择音频部分和图像流以用于包括在编辑视频中。因此,图像捕获设备102的模型的更新版本可以由模型训练器160在个性化数据集上训练,以更好地推断、捕获和存储满足用户特定喜好的图像和/或视频。在其他情况下,附加的训练数据可以是匿名的、合计的用户反馈。
服务器计算设备150可以周期性地向移动图像捕获设备102提供场景分析器124、音频分析器125或其他模型中包括的一个或多个模型的一个或多个更新版本。更新的模型可以经由用户计算设备130被发送,或者经由网络180直接发送到移动图像捕获设备102。在其他实施方式中,用户计算设备130还可以包括模型训练器,该模型训练器执行针对特定的移动图像捕获设备102的如上所述的个性化模型训练。
模型训练器160可以包括用于提供期望功能的计算机逻辑。因此,模型训练器160可以以控制通用处理器的硬件、固件和/或软件来实施。在一些实施方式中,模型训练器160包括存储在存储设备上、加载到存储器154中并由处理器152运行或者可以由计算机程序产品提供的程序代码文件,例如,存储在有形的计算机可读存储介质(诸如例如,RAM盘或卡或其他计算机可读光学或磁性介质)中的计算机可执行指令。
网络180可以是任何类型的通信网络,诸如局域网(例如,内联网)、广域网(例如,因特网)或其某种组合,并且可以包括任何数量的有线或无线链路。一般而言,服务器计算设备150和用户计算设备130之间的通信可以使用多种通信协议(例如,TCP/IP、HTTP、SMTP、FTP)、编码或格式(例如,HTML、XML)和/或保护方案(例如,VPN、安全HTTP、SSL),经由任何类型的有线和/或无线连接来进行。服务器计算设备150可以通过发送和接收数据通过网络180与用户计算设备130通信。
此外,被描述为存储在服务器计算设备150处或由服务器计算设备150执行的任何过程、操作、程序、应用或指令可以替代地全部或部分存储在用户计算设备130处或由用户计算设备130执行,反之亦然。具体地,在一些实施方式中,移动图像捕获设备102可以直接通信地连接到服务器计算设备150,并且服务器计算设备150可以在本公开的其他地方(例如,经由网络应用)执行归属于用户计算设备130的图像编策、编辑、存储和共享功能。同样,被描述为存储在移动图像捕获设备102处或由移动图像捕获设备102执行的任何过程、操作、程序、应用或指令可以替代地全部或部分地存储在用户计算设备130处或由用户计算设备130执行,反之亦然。例如,在一些实施方式中,传送控制器140可以位于移动图像捕获设备102而不是用户计算设备130处。
图2描绘了根据本公开的示例方面的示例音频分析器模型250的框图。音频分析器模型250可以是被配置为确定音频分类器标签256的机器学习模型。在一些实施方式中,音频分析器模型250被训练为接收描述音频信号的一组输入数据254。例如,音频信号可以由麦克风接收,并被处理/转换成音频数据254。音频数据254可以被输入到音频分析器模型250中,并且作为接收到音频数据254的结果,提供描述音频事件的音频分类器标签256。因此,在一些实施方式中,音频分析器模型250可以包括机器学习的音频分类器模型252,其可操作为识别一个或多个音频事件,并输出描述一个或多个音频事件的音频分类器标签256。在一些实施方式中,机器学习的音频分类器模型252可以是神经网络(例如,深度神经网络)。
在一些实施方式中,机器学习的音频分类器模型252可以被配置为对各种人类讲话和/或非讲话声音进行分类,并区分讲话和非讲话声音。例如,在一些实施方式中,机器学习的音频分类器模型可以被训练为对多个非讲话声音进行分类,诸如笑声、哭声、掌声、脚步声、开门声、地板吱嘎声、高强度声音(诸如碰撞和/或撞击声)、喋喋不休声、餐厅用餐、车辆交通和/或其他声音。在一些实施方式中,各种环境声音(诸如波浪、风、雨、雷声、树叶沙沙声或其他环境声音)可以被分类。在一些实施方式中,各种动物声音(诸如鸟叫、虫鸣、狗吠或其他动物声音)可以被分类。
在一些实施方式中,机器学习的音频分类器模型252可以使用已经用各种声音分类标签标记的训练数据集来训练。例如,包含隐藏字幕标签(例如,“[笑声]”)的视频剪辑可以被用作训练数据集,以训练机器学习的分类器模型252对各种讲话和非讲话声音分类。
在一些实施方式中,机器学习的音频分类器模型252可以被配置为识别一个或多个图像捕获提示并输出图像捕获提示标识符标签。例如,在一些实施方式中,某些讲话声音可以被分类,诸如倒计时序列(例如,“3…2…1…”)、歌曲(例如,“生日快乐歌”)、口头命令(“捕获图像”)或其他讲话可以被分类。
在一些实施方式中,诸如通过在由音频传感器121和/或音频信号处理管线123获得音频数据254时在滚动或连续的基础上将音频数据254输入到机器学习的音频分类器模型250中,音频数据254(即指示音频信号的数据)可以在音频数据254被接收时被分析。在一些实施方式中,可以分析音频数据254的滚动窗口。在一些实施方式中,可以分析音频数据254的一个或多个部分。诸如当音频数据254被用于图像捕获过程时,在分析之后,音频数据254可以被丢弃和/或重写。在一些实施方式中,只有音频数据254的某些部分可以被维护,诸如音频数据254中被选择用于包括在编辑视频中的环境声轨中的部分,如本文所描述的。例如,某些前景声音,诸如人类讲话,可以从环境声轨中排除,如本文所公开的,并且在分析之后被丢弃。
图3描绘了根据本公开的示例方面的示例图像处理框架中的数据流相对于时间的视觉表示300。具体地,图3描绘了图像捕获过程中数据流的一个示例定时,其中音频信号被用于基于音频事件之前的时间段的时间偏移来选择和/或捕获图像。在其他实施方式中,可以基于音频事件之后的时间段的时间偏移或者与音频事件同时进行的图像捕获的时间偏移来捕获图像。在一些实施方式中,图3中描绘的图像处理框架可以在图像捕获设备中实施,诸如图1中描绘的图像捕获设备。
如图所示,诸如通过图像捕获设备的音频传感器,音频信号(诸如音频数据302)可以被接收或获得。如本文所公开的,音频信号可以被处理和/或转换。
在306处,诸如通过被配置为确定音频分类器标签的机器学习模型,可以分析音频数据302。例如,在各种实施方式中,音频数据302可以在音频数据302被接收时被分析,诸如在滚动或连续的基础上。在一些实施方式中,可以分析音频数据302的窗口。在一些实施方式中,可以分析不同的音频部分,诸如离散的音频部分。
例如,如图3所示,音频部分304可以在接收到音频数据302之后由机器学习模型来分析。因此,如所描绘的,在306处,可以分析音频数据302的至少一部分304。在一些实施方式中,描述音频事件的一个或多个音频分类器标签可以在音频分析306期间被确定。
例如,在一个实施方式中,可以在306处分析音频部分304,并且可以识别包括笑声的音频分类器标签。例如,机器学习模型可以被训练为对笑声和/或其他人类讲话或非讲话进行分类。在音频分析306之后,可以识别与音频分类器标签相关联的一个或多个图像,诸如用于图像捕获或进一步的图像分析。
例如,在一些实施方式中,图像捕获设备可以被配置为获得图像数据308,诸如在连续捕获模式中以规则的间隔获得图像数据308。例如,如所描绘的,可以随时间捕获多个图像(即图像数据308A-F)。在一些实施方式中,多个图像数据308A-F可以由图像捕获设备捕获,并维护在临时图像缓冲器中。例如,每个捕获图像308A-F的副本可以临时维护在图像捕获设备的存储器的临时图像缓冲器中。
在一些实施方式中,响应于确定描述音频事件的音频分类器标签,可以确定与音频分类器标签相关联的时间偏移量。例如,在一些实施方式中,对于包括笑声的音频分类器标签,可以确定负时间偏移量。例如,可以确定与音频分类器标签相关联的音频事件之前1-3秒的时间偏移。
在一些实施方式中,对于包括图像捕获提示的音频分类器标签,可以确定正时间偏移量。例如,对于倒计时序列标签(例如,“3…,2…,1…”),可以确定对应于倒计时序列结束的时间偏移。
在一些实施方式中,时间偏移量可以用于识别与音频分类器标签相关联的一个或多个图像。一个或多个图像可以在时间上与音频事件偏移,诸如在音频事件之前或之后捕获的图像。例如,在音频事件是笑声的一个实施方式中,可以识别在接收到用笑声标签标记的音频信号302的音频部分304之前的时间捕获的图像308A。通过识别发生在笑声事件之前的图像,可以选择可能已经捕获到笑声原因的图像进行存储和/或进一步分析。
类似地,在一些实施方式中,音频部分304可以用图像捕获提示标签来标记,并且可以识别在音频部分304之后的时间捕获的图像308F。此外,这可以用于决定何时以及是否捕获图像,诸如是否启动图像捕获模式。例如,在一些实施方式中,图像捕获设备可以在低功率或节能模式下操作,其中图像捕获设备分析音频信号302的至少一部分304,并且在分析之后,开始图像捕获过程。例如,图像捕获设备可以在音频分析306之后“醒来”并捕获一个或多个图像,诸如图像308E-F。
此外,在一些实施方式中,通过诸如包括撞击或碰撞声的音频分类器标签,可以识别同时捕获的图像。例如,对于包括碰撞标签的音频部分304,可以识别同时捕获的图像308B。
在一些实施方式中,可以存储识别的图像,诸如与音频分类器标签相关联的捕获图像308A-F。例如,对于包括笑声标签的音频分类器标签,负时间偏移量可以用于识别图像捕获设备在接收到用音频信号302的笑声标签标记的音频部分304之前的时间捕获的图像308A。例如,在一些实施方式中,图像捕获设备可以将捕获的图像308A的副本存储在图像捕获设备的非易失性存储器中。类似地,使用其他时间偏移量(或者对于同时识别的图像,为零偏移),同时捕获的图像308B和/或在未来时间捕获的图像308F可以被存储在图像捕获设备的非易失性存储器中。以这种方式,可以至少部分地基于音频分类器标签来确定时间偏移量,并且时间偏移量可以用于识别与音频分类器标签相关联的一个或多个捕获图像。此外,然后,一个或多个识别的图像可以存储在图像捕获设备上,诸如存储在非易失性存储器中。因此,根据本公开的示例方面,在一些实施方式中,至少音频部分304的分析可以用于识别一个或多个图像以供存储。
在一些实施方式中,可以识别与音频分类器标签相关联的一个或多个图像,并且可以对其进行进一步分析。例如,可以识别和选择与笑声标签相关联的图像308A以用于图像分析310。例如,在一些实施方式中,与音频分类器标签相关联的图像可以由机器学习模型来分析,该机器学习模型被配置为确定该图像所描绘的场景的合意性。例如,如本文所公开的,一个或多个神经网络可以用于确定图像所描绘的场景的合意性。
在一些实施方式中,在图像分析310之后,诸如在图像存储过程312中,图像308A可以被存储。在一些实施方式中,图像308A可以通过将图像308A的副本存储在图像捕获设备的非易失性存储器中来存储。在一些实施方式中,图像捕获设备可以至少部分地基于图像308A所描绘的场景的合意性来确定是存储图像308A的副本还是在不存储图像308A的副本情况下丢弃图像308A。例如,在一些实施方式中,没有捕获到人类的图像可以被丢弃。类似地,可以使用图像308A所描绘的场景的合意性的其他描述符,诸如面部识别分数或面部属性分数、照片质量分数、一个或多个语义标签、或本文公开的合意性的其他描述符。
以这种方式,音频信号的至少一部分可以用于确定描述音频事件的音频分类器标签。可以识别与音频分类器标签相关联的一个或多个图像,诸如在时间上与音频事件偏移的一个或多个图像。然后,可以进一步分析一个或多个图像,以便确定图像所描绘的场景的合意性,和/或选择一个或多个图像以用于存储,诸如存储在非易失性存储器中。此外,在一些实施方式中,至少部分地基于一个或多个图像所描绘的场景的合意性,可以选择一个或多个图像以用于存储或丢弃。
图4描绘了根据本公开的示例实施例的示例图像捕获设备的示例捕获模式的视觉表示400。在视觉表示400中,垂直条表示捕获的图像,条的垂直长度表示捕获的图像的分辨率。具体地,较短的条(例如,条402)表示低分辨率图像,而较长的条(例如,条404)表示高或全分辨率图像。水平上较粗的条表示被选择用于压缩和存储的图像。
与传统的数码相机和移动成像器不同,本公开的图像捕获设备可以动态地(onthe fly)改变捕获帧速率和分辨率。图4中示出了特定的示例捕获模式。然而,移动图像捕获设备也可以根据其他捕获模式来操作。
视觉表示400的左手侧是常规或持续捕获状态的视觉表示。在图像捕获设备的常规捕获状态期间,图像捕获设备可以周期性地在低分辨率图像捕获模式和高分辨率图像捕获模式之间转换。以这种方式,可以相对不频繁地捕获高分辨率或全分辨率帧(例如,平均每秒0.1至5帧(fps)),同时可以更频繁地捕获低分辨率帧(例如,平均5至20fps)。这里的“捕获”是指图像传感器级别。然而,请注意,虽然图像是由图像传感器“捕获”的,但并非所有图像都必须被选择用于压缩和存储。
在一些实施方式中,高分辨率或全分辨率帧可以是1200万像素(MP)图像。高分辨率帧可以是以图像传感器的最大分辨率的整个帧。这些高分辨率帧可能是用于最终压缩和存储的最强候选者。全分辨率图像的帧速率可以在不同的捕获模式下有所增加,这将在下面进一步讨论。
在一些实施方式中,低分辨率帧可以是1.33MP图像。低分辨率帧可以用于场景分析,并且如果期望的话,甚至可以进一步缩小(例如,缩小至500×375)。低分辨率帧还可以用于各种其他目的,诸如:允许用户通过用户计算设备中的显示器预览图像(例如,基于图像的缩略图(例如,100×75)的捕获可视化);生成超延时(计算机视觉)伪像;和/或执行超分辨率技术,其中基于时间上密切相关的全分辨率帧来增强低分辨率图像的部分的分辨率。
此外,在一些实施方式中,除了高分辨率图像和低分辨率图像之外,图像传感器还可以操作为提供例如3MP的中分辨率图像。在一些实施方式中,在突发捕获模式期间,可以以高达30fps捕获中分辨率图像。中分辨率图像可能对包括弱光binning的场景很有用。具体地,为了减少噪声量,可能期望在传感器中执行binning,使得传感器中的时间噪声减少。虽然这确实牺牲了空间分辨率,但是可能期望在曝光时间可能不会进一步增加时执行这种操作。在某些情况下,图像捕获设备的曝光时间可能相对较短,以便减少运动模糊的量。就标准偏差而言,二乘二binning将图像噪声降低了两倍。
图像捕获设备还可以在突发捕获模式或突发状态下操作,这在图4中的常规持续状态之后示出。图像捕获设备可以基于来自场景分析器的信号或者响应于来自用户的手动触发而转变到突发状态。因此,突发捕获模式通常在已经识别出高度期望的场景并且设备尝试最大化捕获的这种场景的图像的量时执行。因此,在突发捕获模式期间,图像捕获设备可以以相对较高的帧速率(例如,对于高分辨率的15fps或对于中分辨率的30fps)捕获中分辨率或高分辨率图像。可替代地,可以以高帧速率捕获低分辨率图像,并且低分辨率图像可以经过超分辨率以获得最终的高分辨率数据。在一些实施方式中,突发捕获模式可以用于获得视频流中的多个序列图像帧。
在一些实施方式中,在突发模式期间捕获的所有图像被压缩并存储在非易失性存储器中,很少执行或不执行场景分析。具体地,通过很少执行或不执行场景分析,图像捕获设备的有限资源可以自由地专用于高或中分辨率图像的压缩和存储。例如,对非易失性存储器的写入可以以每秒20至25MB的量级执行。然而,当突发捕获包括低分辨率图像时,更多的资源可以专用于场景分析,这些低分辨率图像可能稍后经过超分辨率。突发捕获模式可以持续一段时间,之后图像捕获设备恢复到常规状态。在一些实施方式中,突发模式期间捕获的图像可以在稍后被分析,以便制作编辑视频,如本文所公开的。
在一些实施方式中,图像捕获设备还可以以超延时捕获模式操作,这在图4的右手侧示出。在超延时拍摄模式下,图像捕获设备可以在一段持续时间内捕获低分辨率或中分辨率的图像,该超延时拍摄模式旨在捕获可用于生成超延时稳定视频的图像。
具体地,在超延时捕获状态下,一个重点是拍摄之间的平滑过渡。低或中分辨率图像可以以相对高的帧速率(例如,15fps)被捕获。并非所有的帧都经过处理、压缩和保存。例如,超延时捕获的分析可以选择帧,使得输出大约为每秒保存1帧。具体地,在急跳动作(jerky motion)下捕获的帧可以被丢弃。因此,运动分析可以是超延时帧选择的核心组成部分。如此,在超延时捕获状态期间执行的场景分析可以具有不同于常规捕获状态的目标,或者通常可以更轻。此外,在一些实施方式中,高分辨率图像可以在超延时捕获模式下与低或中分辨率图像穿插。在一些实施方式中,如本文所公开的,超延时捕获可以与环境声轨组合以生成编辑视频。
图5描绘了根据本公开的示例实施例的示例图像处理框架200的示意图。具体地,图5中描绘的示意图示出了允许多个潜在数据路径或工作流通过框架200的组件之间的关系。图像处理框架200可以被包括在图像捕获设备中。
图像处理框架200包括输出原始图像数据的图像传感器202。例如,原始图像数据可以是拜耳原始(Bayer RAW)图像。原始图像数据可以被传达到第一存储器204和/或成像管线206。作为一个示例,存储由图像传感器202输出的原始图像数据的第一存储器204可以被命名为原始临时数据缓冲器,并且可以是例如DRAM存储器。在一些实施方式中,成像管线206直接从图像传感器202流式传输原始图像数据。在这种情况下,临时数据缓冲器可以可选地存储经处理的图像,而不是原始图像数据。
成像管线206获取从图像传感器202接收的原始图像数据,并处理这些原始图像数据以生成图像。例如,经处理的图像可以是RGB图像、YUV图像、YCbCr图像或根据其他颜色空间的图像。另外,成像管线206可以可操作地连接到系统处理器214。系统处理器214可以包括硬件块216,其帮助成像管线206执行Debayer滤波、RAW滤波、LSC滤波或其他图像处理操作。RAW滤波器级可以提供对于实时自动曝光和/或自动白平衡操作的图像统计216。也可以使用软件过滤器。参考图9和图10提供了对示例成像管线的附加讨论。
取决于图像捕获设备的捕获模式和/或其他参数,成像管线206可以将图像提供给可选的缩放器(scaler)208或第二存储器222,这将在下面进一步讨论。缩放器208可以对接收到的图像进行下采样,以输出图像的更低分辨率版本。因此,在一些实施方式中,缩放器208可以被命名为下采样器。
缩放器208将图像提供给第三存储器210。第三存储器210可以是与第二存储器222相同的存储器或不同的存储器。第二存储器222和/或第三存储器210可以存储图像的临时副本。因此,第二存储器222和/或第三存储器210可以被命名为临时图像缓冲器。在一些实施方式中,第二存储器222和/或第三存储器210是DRAM。另外,在一些实施方式中,可以在成像管线的开始处执行下采样,使得成像管线能够以较低分辨率运行,并且在更大程度上节省功率。
第二存储器222和/或第三存储器210可以向场景分析器212提供图像信息。在一些实施方式中,场景分析器212可操作为分析图像所描绘的场景以评估这种场景的合意性,并且至少部分地基于这种合意性,确定是存储这种图像的非临时副本还是在不进行进一步存储的情况下丢弃这种图像的临时副本。场景分析器212还可以访问存储在系统处理器214中的各种数据218。
如果场景分析器212确定应该存储图像的非临时副本,则场景分析器212可以将图像提供给压缩组件226。在其他实施方式中,压缩组件226可以从第二存储器222和/或第三存储器210接收图像。在又一实施方式中,如果场景分析器确定应该存储图像的非临时副本,则存储在第一存储器204中的原始图像数据将被成像管线206检索和处理,并且所得到的经处理的图像将被提供给压缩组件226。
压缩组件226压缩接收到的图像。压缩组件226可以是在处理器(例如,系统处理器214)上实施的硬件组件或图像压缩软件。在压缩之后,图像的非临时副本被写入非易失性存储器228。例如,非易失性存储器228可以是SD卡。
在一些实施方式中,与音频分类器标签相关联的一个或多个图像可以首先被存储,而无需首先被场景分析器212分析。例如,与音频分类器标签相关联的时间偏移可以用于识别与音频分类器标签相关联的一个或多个图像,并且该一个或多个图像可以被存储,诸如存储在非易失性存储器228中。
应当注意,在一些实施方式中,当图像未被选择用于压缩和存储时,虚线框中标记的图像压缩路径220可以是不活动的。因此,在一些实施方式中,场景分析器212的输出可以用于开启图像压缩路径220或者控制图像传感器202。具体地,场景分析器212(例如,与系统处理器214合作)可以提供传感器控制信号230来控制图像传感器202,这将在下面进一步讨论。此外,在一些实施方式中,场景分析器212的输出也可以用于开启或关闭成像管线路径。另外,在一些实施方式和/或捕获模式中,可以针对低分辨率图像执行场景分析的部分,而场景分析的其他部分可以在高分辨率图像的片段上执行(例如,面部表情分析可能需要高分辨率图像的片段)。
在一些实施方式中,来自图像传感器202的输出可以通过成像管线206控制大部分定时。例如,成像管线206处的图像处理可以被大致帧同步以在图像传感器接收器(例如,MIPI接收器)处传送。图像处理206的每个阶段可以具有一些延迟,这导致输出是输入之后的几个图像传感器行。在给定发生在管线206中的处理量的情况下,该延迟量可以是恒定的。
场景分析器212可以在成像管线206已经将一个图像的所有行写入存储器之后不久开始。在其他实施方式中,场景分析器212甚至在成像管线206已经将一个图像的所有行写入存储器之前就开始了。例如,场景分析器中包括的某些模型(例如,面部检测器模型)可以一次对图像的子集进行操作,因此不需要将图像的所有行都写入存储器。可以在场景分析器确定图像值得保存和压缩之后执行压缩。在其他实施方式中,代替分析已经被图像处理管线206完全处理的图像,场景分析器212可以分析拜耳原始图像或仅被成像管线轻微处理的图像。在一些实施方式中,如本文所述,场景分析器212仅选择与一个或多个音频分类器标签相关联的图像以用于分析。
图6描绘了根据本公开的示例实施例的示例图像处理框架500。具体地,当移动图像捕获设备以低分辨率捕获模式操作时,可以采用图像处理框架500。
图像处理框架500包括图像传感器502、图像传感器接收器504和成像管线508。具体地,在低分辨率捕获模式下,图像传感器502可以提供低分辨率原始图像数据506。
在一些实施方式中,图像传感器502执行binning和/或下采样以产生低分辨率原始图像数据506的输出。例如,图像传感器502可以根据以下binning/子采样模式中的一种或多种来操作:2Hx2V binning;3Hx3V下采样(3x3 bin);3Hx3V下采样(bin加skip(跳跃));2Hx4V下采样;3Hx9V下采样(bin和skip);3Hx17V下采样(binning和skip)。因此,在一个示例中,假设传感器阵列大小为4000×3000,图像传感器502可以执行3×3下采样(利用binning和skipping)以输出低分辨率原始图像数据506,其足以生成1.33MP(1332×1000)的低分辨率图像。图像传感器502可以执行甚至进一步的下采样,以便为场景分析或其他目标提供较低分辨率的缩略图。此外,对于水平和垂直方向之间具有不同缩放比例的传感器binning/skipping模式,成像管线508可以执行变形缩放。
成像管线508可以流式传输来自图像传感器接收器504的低分辨率原始图像数据506(例如,无需数据经过存储器)。成像管线508可以处理原始图像数据506以生成低分辨率图像510(例如,1.33MP图像)。可替代地或附加地,成像管线508可以处理原始图像数据506以生成超低分辨率图像512(例如,0.18MP图像)。
图像510和图像512中的一个或两个可以被提供给场景分析器514。例如,为了平衡分析智能与计算消耗,场景分析器的某些部分可以分析图像510,而其他部分分析图像512。
场景分析器514可以分析输入的图像,并且基于这种分析,输出一个或多个控制信号516。具体地,控制信号516可以控制图像510是否被压缩和存储,或者图像510是否在不存储的情况下被丢弃。此外,在一些实施方式中,控制信号516可以控制图像捕获设备的捕获模式,或者可以通过正式改变捕获模式来简单地增加或降低帧速率或分辨率。在一些实施方式中,场景分析器514可以在系统处理器的一个或多个刀片内核(shave core)中实施。
如果场景分析器514指示应该存储图像510,则图像510被提供给图像压缩组件518,其中图像压缩组件518压缩图像510。然后,压缩图像510被写入存储器520。例如,存储器520可以是非易失性存储器。
在给定低分辨率模式有较少数量的像素要读出和处理的情况下,则该模式下的功耗要低得多。因此,低分辨率帧通常可以以比全分辨率帧更高的帧速率运行,因为通过执行这种操作可以降低功耗。图8示出了在低分辨率捕获模式下随时间的示例数据流。
图7描绘了根据本公开的示例实施例的示例图像处理框架600。具体地,当移动图像捕获设备在高分辨率捕获模式下操作时,可以采用图像处理框架600。
图像处理框架600包括图像传感器602、图像传感器接收器604、下采样器610和成像管线612。具体地,在高分辨率捕获模式下,图像传感器602可以提供高分辨率原始图像数据606。例如,高分辨率原始图像数据606可以是足以生成例如12MP的高分辨率图像的数据。高分辨率原始图像数据606的副本608可以临时存储在存储器中(例如,存储在临时原始图像数据缓冲器中)。
下采样器610可以流式传输来自图像传感器接收器604的高分辨率原始图像数据606,并且可以对高分辨率原始图像数据606进行下采样,以输出低分辨率原始图像数据611。例如,下采样器610可以执行binning和/或skipping。低分辨率原始图像数据611可以是例如足以生成低分辨率图像(例如,1.33MP图像)的原始图像数据。下采样器610可以在控制处理器的硬件或软件中实施。
成像管线612可以流式传输来自下采样器610的低分辨率原始图像数据611。成像管线612可以处理低分辨率原始图像数据611,以生成低分辨率图像614(例如,1.33MP图像)。可替代地或附加地,成像管线612可以处理原始图像数据606,以生成一个或多个超低分辨率图像616(例如,0.18MP图像或0.33MP图像)。图像614和616中的一个或多个可以被提供给场景分析器618。
场景分析器618可以分析输入的图像,并且基于这种分析,输出一个或多个控制信号。具体地,控制信号可以控制是否从高分辨率原始图像数据606生成图像,然后压缩并存储,或者是否在不进一步存储高分辨率原始图像数据606以及图像614和616的情况下丢弃它们。此外,在一些实施方式中,控制信号可以控制图像捕获设备的捕获模式。
如果场景分析器618指示应该存储图像,则高分辨率原始图像数据606的临时存储的副本608被提供给成像管线612。例如,高分辨率原始图像数据606的副本608可以从临时原始图像数据缓冲器中检索,并以存储器到存储器的方式进行处理。成像管线612可以处理高分辨率原始图像数据606,以生成高分辨率图像619。例如,高分辨率图像619可以是12MP图像。
然后,高分辨率图像619被提供给图像压缩组件620,其中图像压缩组件620压缩图像619。然后,压缩的图像619被写入存储装置622。例如,存储装置622可以是非易失性存储器。
在一些实施方式中,低分辨率图像614也可以被提供给图像压缩组件620,其中图像压缩组件620压缩图像619。然后,压缩的图像614被写入存储装置622。例如,存储装置622可以是非易失性存储器。
图8描绘了根据本公开的示例实施例的示例图像处理框架800。具体地,当移动图像捕获设备在突发捕获模式下操作时,可以采用图像处理框架800。
图像处理框架800包括图像传感器802、图像传感器接收器804和成像管线806。具体地,在高分辨率捕获模式下,图像传感器802可以提供高分辨率原始图像数据805。
成像管线806可以流式传输来自图像传感器接收器804的高分辨率原始图像数据805(例如,无需数据进入存储器)。成像管线806可以处理原始图像数据805以生成高分辨率图像807(例如,12MP图像)。可替代地或附加地,成像管线806可以处理原始图像数据805以生成各种更低分辨率图像808。
然后,图像807被提供给图像压缩组件809,其中图像压缩组件809压缩图像807。然后,压缩的图像807被写入存储装置810。例如,存储装置810可以是非易失性存储器。在一些实施方式中,压缩是在流中执行的,这消除了临时写入存储器的功率需求。
与框架500和框架600不同,突发捕获模式的框架800可以不将图像807提供给场景分析器来做出保持/丢弃决定。相反,图像807(以及可选的任意数量的图像808)被简单地压缩和存储。具体地,由于突发捕获通常在设备已经(例如,从先前的帧中)检测到感兴趣的场景可用之后执行,所以不一定需要执行密集的图像分析。这允许设备将大部分能量和计算能力用于执行成像管线和压缩。
然而,在一些实施方式中,移动图像捕获设备可以具有足够的资源来在突发捕获模式期间执行场景分析,以便保持/丢弃决定。这也可以通过降低突发图像捕获的分辨率和/或帧速率要求/参数值来实现。
在一些实施方式中,可以执行突发捕获以获得视频流中的多个图像帧。例如,可以与相关联的音频信号同时捕获多个图像帧。在一些实施方式中,突发捕获中的多个图像帧可以被存储以供稍后分析,诸如以便生成编辑视频,如本文所述。
图9和图10描绘了根据本公开的示例实施例的示例成像管线900和1050。管线900和1050可以是单独的管线,或者可以组合形成单个管线。
图像捕获设备中包括的成像管线会影响由图像捕获设备生成的图像的质量。成像管线可以从图像传感器获取原始图像数据,并执行必要的处理以减少图像缺陷和成像系统中图像传感器和光学器件的非理想因素,从而产生赏心悦目的高质量图像。在给定移动图像捕获设备的功耗通常受到限制的情况下,成像管线的许多计算可以在硬件块中执行,这比软件实施方式更有效。
首先参考图9,成像管线900描绘了执行原始到原始拜耳管线的一个示例成像管线。原始拜耳图像数据901直接从图像传感器流式传输,或者从存储器读取。为了节省功耗和减少内存带宽,最好直接从传感器流式传输。第一步是在块902处去除坏像素。这需要了解传感器中应用的模拟增益和静态缺陷表。坏像素的先前x-y坐标是可选的,并且可能有助于坏像素校正。
接下来,在块904处,可以对原始像素进行轻微去噪。这种原始去噪块904的一个好处是去除一些噪声,使得它在去马赛克状态期间不会产生迷宫状伪像。再者,应用于传感器的模拟增益和针对传感器校准的噪声表有助于提高性能。
在块906处,可以去除黑电平(基准(pedestal))。像素强度直方图有助于去除黑电平。可选地,杂散光(flare)校正可以在白平衡之后以额外处理为代价在单独的块处执行。
可以在块908处执行镜头遮光校正。可以通过获得经校准的每一设备的遮光表来应用镜头遮光校正。该表可在校准期间获得。在块910处,可以使用AWB结果来应用白平衡增益。另外,如果适用,可以应用小颜色比率的每一设备校准结果。
现在参考图10,管线1050是RGB/YCbCr管线。原始拜耳图像数据1051被传递到去马赛克器块1052上,然后去马赛克器块1052用于对丢失的颜色分量执行插值。例如,在“R”像素上,去马赛克块1052计算最佳“G”和“B”像素,使得可以维护非常好的锐度而没有不自然的锐化伪像。这经历一系列变换(例如,块1054和1056),使得像素值在sRGB空间(或任何其他颜色空间)中。
可选的色调映射可以在块1058执行,使得增强或动态范围中的对比度被压缩,从而它可以在更低比特深度的显示器上渲染。接下来,可以在块1060执行颜色空间转换,使得像素值1061在YCbCr像素域中。
一旦像素值1061处于YCbCr域,它就可以被传递到静止图像(例如,JPEG或其他格式)压缩块上。注意,去噪和锐化可以在亮度通道上执行。此外,色度噪声可以被显著抑制,尤其是对于弱光图像。也可以可选地应用附加的块,诸如特殊效果。
图11描绘了根据本公开的示例实施例的示例场景分析器1102。场景分析器1102包括模型调度器/选择器1104;分析输入图像的特性的多个机器学习模型;保存控制器1110;以及模式控制器1112。在一些实施方式中,多个模型是多个深度神经网络(例如,深度神经网络1106和1108),或者其他多层非线性模型。在一些实施方式中,保存控制器1110和模式控制器1112可以被实施为同一组件(例如,“保存和模式控制器”)。
场景分析器1102可以接收一个或多个图像1114。场景分析器1114可以分析每个接收到的图像1114,并且至少部分地基于这种分析,输出一个或多个控制信号1118和1120。具体地,控制信号1118可以控制一个或多个图像1114是否被压缩并写入存储器(例如,非易失性存储器)。控制信号1120可以总体上控制图像传感器或移动图像捕获设备的捕获模式。
接收到的图像1114可以包括高分辨率图像和/或低分辨率图像。在一些实施方式中,场景分析器1102的某些部分可以分析图像1114的低分辨率版本,而其他部分(例如,分析面部特征的部分)分析图像1114的高分辨率版本的裁剪部分。
模型调度器1104可以控制图像被输入用于场景分析的模型(如果有的话)。模型选择器1104可以根据包括计算消耗考虑、能量消耗考虑和/或图像场景的初始分析结果的许多标准来选择采用哪些模型。作为一个示例,模型选择器1104可以简单地实施预定义的时间表,或者可以实施关于要采用的模型的排序或配置的一些定义的逻辑。作为另一示例,模型选择器1104本身可以是模型(例如,神经网络),诸如多层非线性模型(例如,深度神经网络)。
在一些实施方式中,模型选择器1104包括仅分析输入图像的一部分的注意力模型1116。注意力模型1116可以输出每个输入图像是否应该被输入到下游模型中的至少一个中以用于进一步场景分析的指示。因此,注意力模型1116可以作为场景分析器1102中包括的下游模型(例如,深度神经网络1106和1108)的预过滤器来操作。
作为一个示例,注意力模型1116可以是递归深度神经网络,其通过一连串图像1114来跟踪面部,并输出每个分析的图像描绘经历快乐的面部的概率。注意力模型1116还可以输出注意力模型1116应该分析下一个输入图像的哪个部分的描述。在一些实施方式中,受监督的目标函数通知注意力模型1116什么是值得注意的。
以这种方式使用注意力模型1116可以极大地降低移动图像捕获设备的能量消耗,因为注意力模型1116(其将其分析限制为图像的仅一部分)防护某些下游模型(例如,深度神经网络1106和1108),这些下游模型可能分析图像的整体和/或需要更大的计算开销。
在其他实施方式中,注意力模型1116可以用来代替其他模型(例如,模型1106和1108)来指导图像存储和/或捕获模式决定。在又一实施方式中,各种深度神经网络(例如,1106和1108)中的一个或多个可以用这种网络的注意力模型版本代替。
场景分析器1102还可以包括任意数量的机器学习模型(例如,深度神经网络1106和1108),其分析输入图像1114所描绘的场景,并输出描述输入图像1114的场景的合意性的各种描述符(例如,注释)(例如,描述影响场景的合意性的各种图像特性)。场景分析器1102可以基于这种描述符做出关于图像存储和/或捕获模式的智能决定。神经网络可以是卷积神经网络、递归神经网络、前馈神经网络、或其组合。
具体地,保存控制器1110可以将来自模型的所有注释作为输入,并使用这种注释来决定是否压缩和存储图像。同样,模式控制器1112可以基于这种注释来确定是否改变移动图像捕获设备的捕获模式。
在一些实施方式中,保存控制器1110和/或模式控制器1112可以包括应用一些手工逻辑的一个或多个决定树、模型和/或算法。保存控制器1110和模式控制器1112中的每一个都可以包括用于提供期望功能的计算机逻辑。因此,保存控制器1110和模式控制器1112中的每一个可以在控制通用处理器的硬件、固件和/或软件中实施。在一些实施方式中,保存控制器1110和模式控制器1112中的每一个都包括存储在存储设备上、加载到存储器中并由处理器运行或者可以由计算机程序产品提供的程序代码文件,例如,存储在有形的计算机可读存储介质(诸如例如,RAM盘或卡或其他计算机可读光学或磁性介质)中的计算机可执行指令。
在一些实施方式中,场景分析器1102与图像1114的捕获异步实施。换句话说,在一些实施方式中,图像捕获的帧速率(至少在一些情况下)不同于场景分析器1102分析图像1114的频率。此外,在一些实施方式中,仅分析某些图像1114,诸如与一个或多个音频分类器标签相关联的图像。
在一些实施方式中,除了接收图像1114作为输入之外,场景分析器1102还可以接收附加的更低维度数据,诸如捕获参数或IMU数据。例如,IMU数据可以指示图像捕获期间的相对运动量。行走频率的分析可以允许移动图像捕获设备在用户行走时对“正当的”捕获时刻进行计时。诸如曝光时间的捕获参数也可以被相应调整。
还可以执行低水平分析,以确定是否执行多帧捕获来提高质量。例如,如果曝光值非常低,并且预期有高运动模糊或高噪声量,则移动图像捕获设备可以捕获突发以提高质量。然后,可以在移动图像捕获设备或用户计算设备中执行多帧去噪。
图12描绘了根据本公开的示例实施例的场景分析器中的模型的示例配置1200。具体地,图12描绘了在场景分析器中操作的不同组件以及它们之间的数据流。如图所示,执行的某些部分可以并行化。
另外,下面参考图12的讨论将涉及各种机器学习模型。在一些实施方式中,这种模型中的一个或多个(例如,所有)是深度神经网络。每个模型可以输出描述图像特性的至少一个描述符。可以用(多个)这种描述符对图像进行注释。因此,模型的输出将被称为注释。在一些实施方式中,模型向保存和模式控制器1250提供注释,该保存和模式控制器1250用注释来注释图像。
配置1200接收图像的帧1202作为输入。例如,帧1202可能已经被模型调度器选择用于分析。
图像的帧1202被提供给面部检测或跟踪模型1204。面部检测或跟踪模型1204检测帧1202所描绘的一个或多个面部,并输出描述一个或多个检测到的面部的相应位置的一个或多个面部边界框1206。面部边界框1206可以被注释到帧1202,并且也可以与帧1202一起(alongside)作为输入提供给面部属性模型1208和面部识别模型1216。
在一些实施方式中,面部检测或跟踪模型1204执行面部跟踪,而不是简单的面部检测。在一些实施方式中,模型1204可以选择执行哪种检测或跟踪。面部跟踪是面部检测的一种更快速的替代方法。面部跟踪可以将来自图像的先前帧的面部检测边界框1206作为附加输入。面部跟踪模型1204更新边界框1206的位置,但是不检测新的面部。
重要的是,无论是面部检测还是面部跟踪都不尝试确定或明确任何被检测面部的身份。相反,面部检测或跟踪模型1204简单地输出描述图像的帧1202内的面部的位置的面部边界框1206。因此,模型1204仅执行面部的原始检测(例如,对所描绘的“类似面部”的图像特征的识别),而不尝试将面部与身份匹配。
面部属性模型1208可以接收图像的帧1202的一个或多个片段作为输入(例如,相对更高分辨率的片段),其中一个或多个片段对应于由边界框1206的坐标定义的、帧1202的(多个)部分。面部属性模型1208可以输出检测到的(多个)面部包括某些面部属性1210的指示(例如,概率)。例如,面部属性模型1208可以输出检测到的面部包括微笑、睁开眼睛、某种姿势、某种表情、表情多样性或其他面部属性1210的相应概率。
面部属性1210可以与图像的帧1202一起作为输入被提供给面部上镜模型1212。面部上镜模型1212可以输出单个面部分数1214,其表示姿势、表情和/或检测到的(多个)面部的其他特性或属性的上镜水平。
回到面部检测或跟踪模型1204的输出,面部识别模型1216可以接收图像的帧1202的一个或多个片段(例如,相对更高分辨率的片段)作为输入,其中一个或多个片段对应于由边界框1206的坐标定义的帧1202的(多个)部分。面部识别模型1216可以输出针对检测到的面部中的每一个的面部签名。面部签名可以是面部的摘要,诸如面部或面部特征的嵌入或模板。
重要的是,面部识别模型1216不尝试确定或明确检测到的(多个)面部的人类身份。因此,面部识别模型1216不尝试确定面部的名称,或者以其他方式将面部与公共简档或其他这种信息相匹配。相反,面部识别模型1216简单地将检测到的(多个)面部的概括(例如,嵌入或其他低维表示)与和先前“识别”的面部相关联的相应其他概括相匹配。作为一个示例,面部识别模型1216可以提供输入图像中描绘的面部的概括与先前捕获的图像中描绘的面部的概括相匹配的概率(例如,从0.0至1.0的置信度水平)。因此,面部识别模型1216可以(例如,在面部签名1218中)指示在图像1202中检测到的面部可能也被描绘在先前捕获的图像中,但是不尝试从人类身份上下文意义上识别该面部属于“谁”。类似地,面部识别模型1216可以提供输入图像中描绘的面部的概括与先前已经被指示为对移动图像捕获设备的用户具有高度重要性的面部的概括相匹配的概率。因此,面部识别模型1216可以指示在图像1202中检测到的面部可能也被包括在用户已经指示为具有提高的表现的面部集合中,但是不尝试从人类身份上下文意义上识别该面部属于“谁”。
图像的帧1202也可以作为输入被提供给图像内容模型1220。图像内容模型1220可以输出一个或多个语义特征向量1222和一个或多个语义标签1224。语义特征向量1222可以用于确定两个图像包含相似的内容(例如,类似于如何使用面部嵌入来确定两个面部相似)。语义标签1224可以识别在图像的帧1202内检测到的一个或多个语义特征(例如,“狗”、“日落”、“山”、“埃菲尔铁塔”等)。图像之间相似性的概念可以用于确保捕获图像的多样性。
在一些实施方式中,语义标签1224可以用于在编辑视频中生成环境声轨。例如,在一些实施方式中,语义标签1224(也称为图像标签)可以识别与一个或多个音频分类器标签相对应或以其它方式相关联的语义特征。例如,语义标签1224可以指示图像的帧1202包括撞击海滩的一个或多个波浪。在一些实施方式中,可以至少部分地基于来自图像的帧1202的相关联的语义标签1224,选择包括相关联的音频分类标签(例如,波浪)的音频的部分用于包括在环境声轨中。
在一些实施方式中,图像内容模型1220是为图像分类而训练的深度卷积神经网络的版本。在一些实施方式中,对移动图像捕获设备的用户特别重要的语义类的子集(例如,动物、狗、猫、日落、生日蛋糕等)可以被建立,并且图像内容模型1220可以提供对关于具有提高的重要性的语义类的子集的检测/分类的特别强调。
图像的帧1202也可以作为输入被提供给视觉特征提取器模型1226。视觉特征提取器模型1226可以输出描述帧1202的一个或多个视觉特征(例如,颜色直方图、颜色组合、模糊量指示、照明质量指示等)的一个或多个视觉特征向量1228。
语义特征向量1222、语义标签1224和视觉特征向量1228可以与帧1202一起作为输入提供给照片质量模型1230。照片质量模型1230可以基于输入输出照片质量分数1232。通常,照片质量模型1230将基于图像1202的兴趣(例如,如语义标签1224所指示的)、图像1202的技术质量(例如,如描述模糊和/或照明的视觉特征向量1228所指示的)、和/或图像1202的构图质量(例如,如语义实体和视觉特征的相对位置所指示的)来确定照片质量分数1232。
保存和模式控制器1250将所有注释1206、1210、1214、1218、1222、1224、1228和1232作为输入,并决定是否保存图像的帧1202或其高分辨率版本,以及是否改变设备的捕获模式。在一些实施方式中,保存控制器1250将尝试保存最终编策功能(例如,传送控制器和/或最佳拍摄选择器)想要选择的帧,并且因此可以被视为这种编策功能的在线/实时近似。
在一些实施方式中,保存和模式控制器1250包括存储器内的注释索引或其他帧缓冲,使得可以相对于对等图像做出关于帧1202的保存和模式决定。在其他实施方式中,保存和模式控制器1250仅基于关于当前帧1202的信息做出决定。
在一些实施方式中,仅作为示例,保存和模式控制器1250可以被设计成使得大约5%的捕获图像被选择用于压缩和存储。在一些实施方式中,每当保存和模式控制器1250触发图像的存储时,将存储触发存储的图像周围的一些图像窗口。
在一些实施方式中,各种模型可以被组合以形成多头模型。作为一个示例,面部属性模型1208、面部识别模型1216和/或面部上镜模型1212可以被合并或以其他方式组合以形成多头模型,该多头模型接收单个输入集合并提供多个输出。
配置1200仅作为一个示例配置提供。场景分析器可以使用不同于配置1200的模型的许多其他配置。具体地,在一些实施方式中,场景分析器的模型调度器/选择器可以动态地重新配置将图像提供给其作为输入的模型的配置。
现在参考图13和图14,描绘了根据本公开的示例方面的用于生成包括环境声轨的编辑的视频(并且更具体地,缩短的视频)的示例框架1300的视觉表示。在视觉表示1300中,垂直条表示捕获的图像帧。例如,在一些实施方式中,图像捕获设备可以被配置为获得包括多个序列图像帧和相关联的音频信号的视频流。例如,音频信号可以与多个序列图像帧同时被捕获。在一些实施方式中,图像帧可以由移动图像捕获设备捕获,诸如在突发模式或获得多个序列图像帧的其他“视频”捕获模式下捕获。例如,在一些实施方式中,移动图像捕获设备可以以每秒15-30帧的速率捕获多个序列图像帧。
如图13所示,视频流可以包括多个序列图像帧1310和相关联的音频信号1320。例如,在一些实施方式中,多个序列图像帧1310可以由图像捕获设备的图像传感器捕获,并且相关联的音频信号1320可以由图像捕获设备的音频传感器捕获。例如,音频信号1320可以与多个序列图像帧1310同时捕获。如本文所公开的,多个序列图像帧1310和/或相关联的音频信号1320可以以各种数据格式进行处理、转换、维护和/或存储。
根据本公开的示例方面,包括环境声轨的编辑视频可以由一个或多个计算设备生成,诸如图像捕获设备、用户计算设备、或这两者。编辑视频可以包括多个序列图像帧的至少一个子集、以及环境声轨。
例如,音频信号1320可以由机器学习的音频分类器模型来分析。在一些实施方式中,机器学习的音频分类器模型可以被包括在图像捕获设备中或者以其它方式作为图像捕获设备的一部分,如本文所公开的。机器学习的音频分类器模型可以确定与音频信号1320的一个或多个部分相关联的一个或多个音频分类器标签。例如,音频信号1320的各个部分可以用描述与各个音频部分相关联的各种音频事件的音频分类器标签来标记。
例如,在一些实施方式中,机器学习的音频分类器可以对环境声音(诸如非讲话声音)进行分类。作为示例,这种声音可以包括环境声音(诸如波浪、风、雨、雷、树叶沙沙声等);动物声音(诸如鸟叫、虫鸣或其他动物声音);人类活动噪音(诸如车辆交通、掌声、脚步声、喋喋不休声、餐厅用餐、大笑、哭泣等);和/或其他声音。机器学习的音频分类器模型可以被配置为分析音频信号1320,并为音频信号的一个或多个部分确定一个或多个音频分类器标签。不同的音频部分可以用它们各自的音频分类器标签来标记。例如,第一音频部分1322可以包括用第一音频分类标签标记的一个或多个环境声音,并且第二音频部分1324可以包括用第二音频分类标签标记的一个或多个环境声音。音频信号1320的其他部分可以类似地用相应的音频分类标签来标记,诸如环境声音标签和/或前景声音标签。
另外,在一些实施方式中,机器学习的音频分类器可以对某些前景声音进行分类。作为示例,这种声音可以包括人类讲话、碰撞、撞击、铃声、口哨声、喇叭、警笛和/或其他声音。包括这种前景声音的音频部分可以用相应的音频分类器标签来标记。
根据本公开的示例方面,可以通过选择用于包括在音频信号1320的、具有与环境声音相关联的音频分类器标签的环境声轨部分中来生成环境声轨。此外,可以拒绝音频信号1320的、具有与前景声音相关联的音频分类器标签的部分。例如,可以选择第一音频部分1322和第二音频部分1324用于包括在环境声轨中。
在一些实施方式中,一个或多个音频部分可以被机器学习模型选择用于包括在内,该机器学习模型被训练来生成环境声轨和/或缩短的图像流。
在一些实施方式中,可以至少部分地基于从用户接收的描述一个或多个音频分类器标签的音频选择输入来选择第一音频部分1322和/或第二音频部分1324以用于包括在内。例如,如将参考图18更详细讨论的,在一些实施方式中,用户可以经由用户界面提供一个或多个音频选择输入。
另外,可以生成包括多个序列图像帧1310的至少一个子集的图像流。例如,在一些实施方式中,多个序列图像帧1310可以由一个或多个机器学习模型来分析,该机器学习模型被配置为诸如经由图像捕获设备的场景分析器来确定图像帧所描绘的场景的合意性。在一些实施方式中,序列图像帧的各种子集可以用一个或多个图像标签(语义标签)来标记。例如,序列图像帧1312的第一子集可以用第一图像标签来标记,并且序列图像帧1314的第二子集可以用第二图像标签来标记。在一些实施方式中,可以基于子集所描绘的场景的合意性来选择序列图像帧的一个或多个子集以用于包括在内。
在一些实施方式中,可以至少部分地基于与选择用于包括在图像流中的序列图像帧的子集相关联的一个或多个图像标签来选择第一音频部分1322和/或第二音频部分1324以用于包括在内。例如,可以分析多个序列图像帧1310的至少一个子集,以确定描述场景的一个或多个图像标签,并且可以至少部分地基于一个或多个图像标签来生成环境声轨。例如,序列图像帧的第一子集1312可以包括波浪撞击海滩的海滩场景,并且第一音频部分1322可以包括相关联的音频分类器标签,诸如波浪。在一些实施方式中,可以至少部分地基于与序列图像帧的第一子集1312相关联的一个或多个图像标签来选择第一音频部分1322用于包括在内。
在一些实施方式中,可以至少部分地基于用户输入来选择序列图像帧的一个或多个子集用于包括在图像流中。例如,在一些实施方式中,用户可以选择视频流的一个或多个部分用于包括在编辑视频中。另外,在一些实施方式中,用户可以(诸如经由用户界面)选择要生成的视频长度和/或视频类型,如将参考图17更详细描述的。
在一些实施方式中,可以通过选择序列图像帧的第一子集1312、选择序列图像帧的第二子集1312以及生成包括连续排列的序列图像帧的第一子集1312和序列图像帧的第二子集1314两者的缩短的图像流1410来生成图像流。例如,如图14所示,缩短的图像流1410可以包括连续排列的序列图像帧的第一子集1312和序列图像帧的第二子集1314。
在一些实施方式中,可以通过组合第一音频部分1322和第二音频部分1324来生成环境声轨。例如,可以通过将第一音频部分1322和第二音频部分1324排列成连续播放来生成环境声轨。在一些实施方式中,一个或多个过渡效果(诸如淡入淡出)可以用于在环境声轨中从第一音频部分1322过渡到第二音频部分1322。例如,如图14所示,可以通过包括要被连续播放的第一音频部分1322和第二音频部分1324来生成环境声轨1420。在一些实施方式中,环境声轨可以仅包括单个音频部分。在其他实施方式中,环境声轨可以包括任意数量的音频部分。
通过组合缩短的图像流1410和环境声轨1420,可以生成编辑视频。例如,缩短的图像流1410和环境声轨1420可以被组合在单个数据文件中,并且可以被配置为同时播放。
重要的是,选择用于包括在环境声轨1420中的一个或多个音频部分不需要是与选择用于包括在缩短的图像流1410中的序列图像帧的一个或多个子集同时捕获的音频部分。例如,与序列图像帧1312的第一子集同时捕获的音频部分可以包括某些前景声音,诸如人类讲话。根据本公开的示例方面,这种前景声音可以被拒绝包括在环境声轨1420中。以这种方式,可以排除这些前景声音,诸如可能分散体验的总体“感觉”的刺耳声音和/或人类讲话,并且可以仅包括捕获感觉或本质的环境声音。此外,旁观者的隐私可以通过特定地拒绝和丢弃人类讲话来维护。
现在参考图15和图16,描绘了根据本公开的示例方面的用于生成编辑视频(并且更具体地,超延时视频)的另一示例框架1500的视觉表示。在视觉表示1500中,垂直条表示捕获的图像,水平上较粗的条表示被选择用于包括在超延时图像流中的图像。类似于框架1300,视频流可以包括多个序列图像帧1510和相关联的音频信号1520。
如同框架1300一样,音频信号1520可以被分析以利用相应的音频分类器标签来分类各个部分。类似地,可以选择一个或多个音频部分(诸如第一音频部分1522)用于包括在环境声轨中。可以基于用户输入、图像分析、排除某些前景声音或其他选择过程来选择一个或多个部分(诸如第一音频部分1522)以用于包括在环境声轨中,如本文所公开的。例如,如图16所示,环境声轨1620可以包括第一音频部分1522。
然而,在一些实施方式中,编辑视频的图像流可以包括多个非序列图像帧。例如,多个序列图像帧1510可以包括以特定帧速率(诸如每秒15帧)捕获的序列图像帧。然而,在一些实施方式中,只有某些图像帧可以被选择用于包括在编辑视频的图像流中。例如,在一些实施方式中,可以(诸如根据特定模式)选择多个非序列图像帧用于包括在内。例如,如图15所示,由较粗的粗线表示的每五个图像帧可以被选择用于包括在内。然后,所选择的非序列图像帧可以被组合(诸如连续排列),以生成图像流。例如,如图16所示,多个非序列图像帧可以被连续排列,并与环境声轨1620组合,以生成包括超延时图像流1610和环境声轨1620的编辑视频。
在一些实施方式中,可以至少部分地基于图像分析来选择多个非序列图像帧。例如,不是根据特定样式选择单独的图像帧,而是可以分析多个序列图像帧1510,并且可以选择多个非序列图像帧,以便生成平滑的超延时图像流。例如,可以基于单独的图像帧的单独的特性来选择单独的图像帧,以便生成平滑的超差图像流。在一些实施方式中,可以基于其他特性(诸如GPS数据)来选择单独的图像帧,以便生成平滑的超延时图像流,如本文所公开的。以这种方式,可以生成超延时图像流1610,并将其与环境声轨1620组合,以生成编辑视频。
在一些实施方式中,可以在超延时捕获模式下捕获多个序列图像帧。例如,图像捕获设备可以被配置为在超延时捕获模式下,其中基于图像分析、GPS或其他输入来捕获单独的图像帧。根据本公开的附加示例方面,在一些实施方式中,在超延时模式下捕获的多个序列图像帧(或其子集)可以与环境声轨组合,如本文所述。例如,可以选择一个或多个音频部分用于包括在环境声轨中,并且可以与在超延时模式下捕获的多个序列图像组合,以生成包括环境声轨的超延时视频。
总体参考图13-图16,在一些实施方式中,编辑视频可以由图像捕获设备生成。在一些实施方式中,编辑视频的部分(诸如环境声轨或其部分)可以由图像捕获设备生成。例如,音频信号1320/1520中包括人类讲话或其他前景声音的部分可以被丢弃,并且只有包括环境声音的部分可以被存储在非易失性存储器中或者从图像捕获设备传送。如上所述,在一些实施方式中,用户输入可以经由用户计算设备接收,并且编辑视频可以由图像捕获设备至少部分地基于用户输入来生成。例如,可以经由用户计算设备接收描述一个或多个所选择的音频分类器标签的音频输入选择,并且图像捕获设备可以通过选择具有所选择的音频分类器标签的一个或多个音频部分用于包括在环境声轨中来生成环境声轨。
图17描绘了用于获得用户输入的示例用户界面1700,该用户输入可以被用于生成编辑视频。用户界面1700仅描绘了用于获得用户输入的一个示例用户界面。可以类似地使用其他合适的用户界面。在一些实施方式中,用户界面1700可以被显示在个人计算设备上,诸如智能电话、膝上型电脑或其他个人计算设备。在一些实施方式中,经由用户界面1700接收的用户输入可以被提供给图像捕获设备,诸如移动图像捕获设备,并且可以至少部分地基于经由用户界面1700接收的用户输入来生成编辑视频。
如图17所示,在一些实施方式中,用户可以选择视频类型1710。例如,在一些实施方式中,用户可以选择加速视频1712。加速视频1712可以是例如通过选择多个非序列图像帧并连续排列这些图像帧以生成超延时图像流而生成的视频。在一些实施方式中,用户可以通过点击、按压或以其他方式选择与加速选项1712相关联的单选按钮1716A来选择加速选项1712。类似地,复选框或其他输入选项可以在用户界面1700中使用。
在一些实施方式中,用户可以选择常规速度视频1714。例如,常规速度视频1714选项可以用于生成编辑视频,该编辑视频包括缩短的图像流,该缩短的图像流包括序列图像帧的一个或多个子集,如本文所公开的。在一些实施方式中,用户可以通过点击、按压或以其他方式选择与常规速度选项1714相关联的单选按钮1716B来选择常规速度选项1714。在一些实施方式中,加速选项1712和常规速度选项1714可以是互斥的,使得一次只能选择一个选项。
用户界面1700还可以包括视频长度输入1720。例如,在一些实施方式中,滑动条1722可以用于选择视频链(link)。在图17所示的一些实施方式中,视频长度可以描绘为百分比(例如,在滑动条的一端为0%,在滑动条的另一端为100%)。在其他实施方式中,滑动条可以显示所选择的视频的总长度,并且用户可以移动滑动条来选择编辑视频应该有多长(例如,10分钟视频的30秒)。其他视频长度输入选项可以类似地在用户界面1700中使用。
在一些实施方式中,用户界面1700可以包括(诸如用于在超延时模式下捕获的视频的)其他选项和/或可以使用其他用户界面。例如,对于在超延时模式下捕获的视频,可以不提供视频类型1710输入选项,而是可以提供视频长度1720选项。
图18描绘了用于获得用户输入的示例用户界面1800,该用户输入可以用于为编辑视频生成环境音轨。用户界面1800仅描绘了用于获得用户输入的一个示例用户界面。可以类似地使用其他合适的用户界面。在一些实施方式中,用户界面1800可以显示在个人计算设备上,诸如智能电话、膝上型电脑或其他个人计算设备。在一些实施方式中,经由用户界面1800接收的用户输入可以提供给图像捕获设备,诸如移动图像捕获设备,并且可以至少部分地基于经由用户界面1800接收的用户输入来生成编辑视频。
用户界面1800可以用于例如从用户获得音频选择输入。例如,在一些实施方式中,图像捕获设备可以用于分析音频信号,并且用描述相应环境声音的音频分类器标签来标记音频信号的各个部分,如本文所公开的。在一些实施方式中,图像捕获设备可以将指示一个或多个音频分类器标签的数据传达给用户计算设备。然后,一个或多个音频分类器标签可以经由用户界面1800向用户显示。
例如,一个或多个音频分类器标签可以显示在环境音频输入1810选项界面中。例如,可以显示第一音频分类器标签“波浪”1812、第二音频分类器标签“海鸥”1814和第三音频分类器标签“风”1816。每个音频分类器标签1812、1814和1816可以对应于用对应的音频分类器标签标记的一个或多个音频部分。在一些实施方式中,用户可以选择分别与每个音频分类器标签1812、1814和1816相关联的单选按钮1822、1824或1826,以选择要被包括在环境声轨中的各种类型的音频。类似地,复选框或其他输入选项可以在用户界面1800中使用。例如,如图所示,第一音频分类器标签“波浪”1812和第二音频分类器标签“海鸥”1814已经被选择,而第三音频分类器标签“风”1816没有被选择。
在一些实施方式中,当选择了对应的音频分类器标签1812和1814时,滑动条1832和1834可以被包括在用户界面1800中。滑动条1832和1834可以用于例如确定每种类型的音频中有多少被包括在环境声轨中。在如图18所示的一些实施方式中,相对音频量可以被描绘为百分比(例如,在滑动条的一端为0%,在滑动条的另一端为100%)。在其他实施方式中,滑动条可以表示用于生成环境声轨的各种比率。其他音频量输入选项可以类似地在用户界面1800中使用。
在一些实施方式中,一旦用户做出了他或她的音频选择,则描述一个或多个音频分类器标签的音频选择输入可以用于生成环境声轨。例如,描述第一音频分类器标签“波浪”1812和第二音频分类器标签“海鸥”的音频选择输入可以用于生成环境声轨。例如,已经用对应的音频分类器标签标记的音频信号的一个或多个音频部分可以被选择用于包括在环境声轨中。
在一些实施方式中,描述第一音频分类器标签的音频选择输入可以诸如经由网络被传达到图像捕获设备,并且图像捕获设备可以通过选择具有第一音频分类器标签的音频信号的至少一部分用于包括在环境声轨中来生成环境声轨。以这种方式,可以接收描述一个或多个音频分类器标签的音频选择输入,并且可以通过将已经用音频分类器标签标记的音频部分包括在环境声轨中来生成环境声轨。
在一些实施方式中,一旦已经生成环境声轨,环境声轨可以被存储和/或维护在非易失性存储器中,并且音频信号可以被丢弃。另外,一旦已经生成编辑视频,图像捕获设备就可以将编辑视频传送到用户计算设备。这种框架提供的优点是可以维护旁观者的隐私,因为只有包括背景和/或环境声音的音频信号的部分可以被保存和/或从图像捕获设备传送。
图19描绘了根据本公开的示例性方面的用于编策在移动图像捕获设备处捕获的图像的示例方法(1900)的流程图。方法(1900)可以由移动图像捕获设备实施,诸如图1中描绘的移动图像捕获设备。另外,为了说明和讨论的目的,图19描绘了以特定顺序执行的步骤。使用本文提供的公开内容,本领域的普通技术人员将理解,本文讨论的任何方法的步骤可以以各种方式进行修改、重新排列、扩展、省略或修改,而不偏离本公开内容的范围。
在(1902)处,方法(1900)可以包括由移动图像捕获设备的图像传感器捕获一个或多个图像。例如,移动图像捕获设备可以被配置为以各种模式捕获图像,诸如低分辨率、高分辨率、突发捕获、视频捕获或其他捕获模式,如本文所述。
在(1904)处,方法(1900)可以包括将一个或多个捕获图像的副本维护在临时图像缓冲器中。例如,图像捕获设备可以包括存储器,该存储器可以包括临时图像缓冲器。在一些实施方式中,可以在临时图像缓冲器中维护一个或多个捕获图像的副本。
在(1906)处,方法(1900)可以包括接收音频信号。例如,图像捕获设备可以包括可以被配置为获得音频信号的音频传感器,诸如麦克风。在一些实施方式中,音频信号可以临时维护在音频缓冲器中。
在(1908)处,方法(1900)可以包括用第一机器学习模型分析音频信号的至少一部分,以识别描述音频事件的第一音频分类器标签。例如,在各种实施方式中,机器学习模型可以被配置为对各种讲话和/或非讲话声音(诸如笑声、哭声、图像捕获提示或本文公开的其他声音)进行分类。
在(1910)处,响应于识别第一音频分类器标签,方法(1900)可以包括识别与第一音频分类器标签相关联的第一捕获图像。例如,在一些实施方式中,第一捕获图像可以在时间上与音频事件偏移。例如,图像捕获设备能够可操作为基于与第一音频分类器标签相关联的时间偏移来识别第一图像。
例如,对于笑声,时间偏移可以是音频事件之前的时间段,并且可以识别在笑声发生之前捕获的一个或多个图像。对于图像捕获提示,时间偏移可以是音频事件之后的时间段,并且可以识别在音频事件之后捕获的一个或多个图像。在一些实施方式中,可以识别与音频事件同时捕获的图像。以这种方式,可以识别与音频分类器标签相关联的一个或多个图像。
在(1912)处,该方法可以包括用第二机器学习模型分析第一捕获图像,以确定第一捕获图像所描绘的场景的合意性。例如,在一些实施方式中,面部检测神经网络可以分析第一捕获图像,以检测第一捕获图像的场景中一个或多个面部的存在。在一些实施方式中,面部识别神经网络可以分析第一捕获图像,以将第一捕获图像的场景中的一个或多个面部与一个或多个其他面部相匹配。在一些实施方式中,面部属性神经网络可以分析第一捕获图像,以检测第一捕获图像所描绘的场景中的一个或多个面部的各种面部特性。在一些实施方式中,图像内容神经网络可以输出描述第一捕获图像的场景的一个或多个语义标签。在一些实施方式中,照片质量神经网络可以输出描述第一捕获图像的各种照片质量特性的照片分数。
在(1914)处,方法(1900)可以包括至少部分地基于第一图像所描绘的场景的合意性,确定是将与第一音频分类器标签相关联的第一图像的副本存储在移动图像捕获设备的非易失性存储器中,还是在不存储第一图像的副本的情况下丢弃第一捕获图像。例如,在一些实施方式中,可以丢弃不包括人类面部的与笑声分类器标签相关联的图像。
图20描绘了根据本公开的示例方面的生成包括环境声轨的编辑的视频的示例方法(2000)的流程图。方法(2000)可以由一个或多个计算设备实施,诸如一个或多个移动图像捕获设备和/或一个或多个个人计算设备。另外,为了说明和讨论的目的,图20描绘了以特定顺序执行的步骤。使用本文提供的公开内容,本领域的普通技术人员将理解,本文讨论的任何方法的步骤可以以各种方式进行修改、重新排列、扩展、省略或修改,而不偏离本公开内容的范围。
在(2002)处,方法(2000)可以包括获得指示包括多个序列图像帧和相关联的音频信号的视频流的数据。在一些实施方式中,指示视频流的数据可以经由移动图像捕获设备获得。
在(2004)处,方法(2000)可以包括用机器学习的音频分类器模型分析音频信号,以确定与音频信号的多个部分相关联的多个音频分类器标签。例如,音频信号的各个部分可以用描述在各个部分中识别的一个或多个声音(诸如讲话或非讲话声音)的相应的音频分类器标签来标记。
在(2006)处,方法(2000)可以包括从用户接收描述音频分类器标签的音频选择输入。例如,在一些实施方式中,用户界面可以显示在个人计算设备上,其可以包括与音频信号的一个或多个音频部分相对应的一个或多个音频分类器标签。
在(2008)处,方法(2000)可以包括至少部分地基于多个音频分类器标签生成包括音频信号的至少第一部分的环境声轨。例如,具有与环境声音相关联的音频分类器标签的音频信号的部分可以被选择用于包括在环境声轨中,而具有与前景声音相关联的音频分类器标签的音频信号部分可以被拒绝。例如,与前景声音相关联的音频器分类标签可以包括与人类讲话相关联的音频分类器标签。在一些实施方式中,生成环境声轨可以包括选择具有由用户在环境声轨中选择的音频分类器标签的音频信号的至少一部分。在一些实施方式中,可以用一个或多个图像分析机器学习模型来分析多个序列图像帧中的一个或多个图像帧,以确定描述图像帧所描绘的场景的一个或多个图像标签,并且可以至少部分地基于一个或多个图像标签来生成环境声轨。
在(2010)处,方法(2000)可以包括生成包括多个连续图像帧的至少一个子集的图像流。例如,在一些实施方式中,可以选择序列图像帧的第一子集,可以选择序列图像帧的第二子集,并且图像流可以是包括连续排列的序列图像帧的第一子集和序列图像帧的第二子集的缩短的图像流。在一些实施方式中,图像流可以是通过选择多个非序列图像帧并连续排列多个非序列图像帧而生成的超延时图像流。在一些实施方式中,图像流可以是在超延时模式下捕获的多个序列图像帧。
在(2012)处,方法(2000)可以包括生成包括环境声轨和图像流的编辑视频。例如,图像流和环境声轨可以被组合成单个文件格式以同时播放。
在一些实施方式中,方法(2000)还可以包括将编辑视频传送到个人计算设备和/或(诸如经由个人计算设备)提供编辑视频以供显示。
图21描绘了根据本公开的示例方面的存储由图像捕获设备捕获的图像的示例方法(2100)的流程图。方法(2100)可以由图像捕获设备实施,诸如图1中描绘的移动图像捕获设备或其他图像捕获设备。另外,为了说明和讨论的目的,图21描绘了以特定顺序执行的步骤。使用本文提供的公开内容,本领域的普通技术人员将理解,本文讨论的任何方法的步骤可以以各种方式进行修改、重新排列、扩展、省略或修改,而不偏离本公开内容的范围。
在(2102)处,方法(2100)可以包括由图像捕获设备的图像传感器捕获一个或多个图像。例如,图像捕获设备可以被配置为在各种模式下捕获图像,诸如低分辨率、高分辨率、突发捕获、视频捕获或其他捕获模式,如本文所述。
在(2104)处,方法(2100)可以包括将一个或多个捕获图像的副本维护在临时图像缓冲器中。例如,图像捕获设备可以包括存储器,该存储器可以包括临时图像缓冲器。在一些实施方式中,可以在临时图像缓冲器中维护一个或多个捕获图像的副本。
在(2106)处,方法(2100)可以包括接收音频信号。例如,图像捕获设备可以包括可以被配置为获得音频信号的音频传感器,诸如麦克风。在一些实施方式中,音频信号可以临时维护在音频缓冲器中。
在(2108)处,方法(2100)可以包括用机器学习的音频分类器模型分析音频信号的至少一部分,以识别描述音频事件的第一音频分类器标签。例如,在各种实施方式中,机器学习模型可以被配置为对各种讲话和/或非讲话声音(诸如笑声、哭声、图像捕获提示或本文公开的其他声音)进行分类。
在(2110)处,响应于识别出第一音频分类器标签,方法(2100)可以包括识别与第一音频分类器模型相关联的时间偏移量。例如,对于笑声,时间偏移量可以是负时间量。对于图像捕获提示,时间偏移可以是正时间量。
在(2112)处,方法(2100)可以包括使用时间偏移量来从维护在临时图像缓冲器中的一个或多个捕获图像中识别与第一音频分类器标签相关联的第一捕获图像。例如,第一捕获图像可以与用第一音频分类器标签标记的音频信号的部分在时间上偏移时间偏移量。例如,对于笑声,图像捕获设备可以识别在接收到用笑声标签标记的音频信号的部分之前的时间由图像捕获设备捕获的第一捕获图像。
在(2114)处,方法(2100)可以包括将第一图像的副本存储在图像捕获设备的非易失性存储器中。
本文讨论的技术涉及服务器、数据库、软件应用和其他基于计算机的系统,以及所采取的动作和发送到这些系统和从这些系统发送的信息。基于计算机的系统固有的灵活性允许在组件之间进行各种可能的配置、组合以及任务和功能的划分。例如,本文讨论的服务器进程可以使用单个服务器或多个服务器组合工作来实施。数据库和应用可以在单个系统上实施,也可以分布在多个系统上。分布式组件可以顺序或并行运行。
尽管已经关于具体示例实施例及其方法详细描述了本主题,但是应当理解,本领域的技术人员在理解了前述内容之后,可以容易地对这些实施例进行变更、变化和等同。因此,本公开的范围是通过示例而非限制的方式,并且本公开不排除对本主题的这种修改、变化和/或添加,这对于本领域普通技术人员来说是显而易见的。
此外,尽管本公开通常参考移动图像捕获设备来讨论,但是本公开也适用于其他形式的图像捕获设备,包括例如监控摄像头、安全系统、仪表板摄像头、机器人控制系统摄像头或其他图像捕获设备。此外,本公开的各方面,诸如编策和编辑部分,可以应用于在任何时间从任何其他相机捕获的视听内容。
Claims (20)
1.一种移动图像捕获设备,包括:
网络接口;
电源;
图像传感器;
音频传感器;
至少一个处理器;以及
存储器,存储多个机器学习模型,所述多个机器学习模型包括被配置为确定音频分类器标签的第一机器学习模型和被配置为确定图像所描绘的场景的合意性的第二机器学习模型,所述存储器至少包括临时图像缓冲器、音频缓冲器和非易失性存储器;
其中,所述移动图像捕获设备可操作为:
接收音频信号;
用第一机器学习模型分析所述音频信号的至少一部分,以确定描述音频事件的第一音频分类器标签;
响应于确定描述所述音频事件的第一音频分类器标签,识别与描述音频事件的第一音频分类器标签相关联的第一图像;
用第二机器学习模型分析第一图像,以确定第一图像所描绘的场景的合意性;以及
至少部分地基于第一图像所描绘的场景的合意性,确定是将与第一音频分类器标签相关联的第一图像的副本存储在所述移动图像捕获设备的非易失性存储器中,还是在不存储第一图像的副本的情况下丢弃第一图像;
其中,第一图像包括由所述移动图像捕获设备捕获的图像。
2.根据权利要求1所述的移动图像捕获设备,其中,第一图像在时间上与所述音频事件偏移,并且其中,为了识别第一图像,所述移动图像捕获设备可操作为基于与第一音频分类器标签相关联的时间偏移来识别第一图像。
3.根据权利要求2所述的移动图像捕获设备,其中,所述时间偏移包括所述音频事件之前的时间段。
4.根据权利要求3所述的移动图像捕获设备,其中,所述第一音频分类器标签包括笑声。
5.根据权利要求2所述的移动图像捕获设备,其中,所述时间偏移包括所述音频事件之后的时间段。
6.根据权利要求5所述的移动图像捕获设备,其中,第一音频分类器标签包括图像捕获提示。
7.根据权利要求1所述的移动图像捕获设备,其中,与所述音频标签相关联的第一图像包括与所述音频事件同时捕获的图像。
8.根据权利要求1-7中任一项所述的移动图像捕获设备,其中,第二机器学习模型包括以下中的一个或多个:
面部检测神经网络,检测每个图像的场景中的一个或多个面部的存在;
面部识别神经网络,将每个图像的所述场景中的一个或多个面部与一个或多个其他面部匹配;
面部属性神经网络,检测每个图像的所述场景中的一个或多个面部的各种面部特性;
图像内容神经网络,输出描述每个图像的所述场景的一个或多个语义标签;以及
照片质量神经网络,输出描述每个输入图像的各种照片质量特性的照片分数。
9.根据权利要求1-8中任一项所述的移动图像捕获设备,其中,所述移动图像捕获设备还可操作为:
捕获多个图像;
将所述多个图像中的每个捕获图像的副本维护在所述临时图像缓冲器中;并且
其中,与所述音频分类器标签相关联的第一图像包括所述多个图像中的捕获图像之一。
10.根据权利要求1-9中任一项所述的移动图像捕获设备,其中,为了用第一机器学习模型分析所述音频信号以确定第一音频分类器标签,所述移动图像捕获设备可操作为:
将所述音频信号的副本维护在所述音频缓冲器中;
将所述音频信号的副本的至少一部分输入到第一机器学习模型中;以及
接收描述音频事件的第一音频分类器标签作为第一机器学习模型的输出。
11.一种生成包括环境声轨的编辑视频的方法,包括:
由一个或多个计算设备获得指示包括多个序列图像帧和相关联的音频信号的视频流的数据;
由所述一个或多个计算设备用机器学习的音频分类器模型分析所述音频信号,以确定与所述音频信号的多个部分相关联的多个音频分类器标签;
由所述一个或多个计算设备至少部分地基于所述多个音频分类器标签来生成包括所述音频信号的至少第一部分的环境声轨,其中,至少部分地基于所述多个音频分类器标签来生成环境声轨包括,选择所述音频信号的、具有与环境声音相关联的音频分类器标签的部分用于包括在环境声轨中,同时拒绝所述音频信号的、具有与前景声音相关联的音频分类器标签的部分;
由所述一个或多个计算设备生成图像流,所述图像流包括多个序列图像帧的至少一个子集;以及
由所述一个或多个计算设备生成包括所述环境声轨和所述图像流的编辑视频。
12.根据权利要求11所述的方法,其中,指示所述视频流的数据是经由移动图像捕获设备获得的。
13.根据权利要求11-12中任一项所述的方法,其中,所述一个或多个计算设备包括移动图像捕获设备,使得所述方法由所述移动图像捕获设备执行。
14.根据权利要求11-13中任一项所述的方法,还包括:
由所述一个或多个计算设备从用户接收描述第一音频分类器标签的音频选择输入;并且
其中,由所述一个或多个计算设备生成环境声轨包括,由所述一个或多个计算设备选择用第一音频分类器标签标记的音频信号的至少一部分以包括在环境声轨中。
15.根据权利要求11-14中任一项所述的方法,其中,与前景声音相关联的音频分类器标签包括与人类讲话相关联的音频分类器标签。
16.根据权利要求11-15中任一项所述的方法,还包括:
由所述一个或多个计算设备用一个或多个图像分析机器学习模型分析所述多个序列图像帧的至少一部分,以确定描述场景的一个或多个图像标签;和
其中,至少部分地基于一个或多个图像标签进一步生成环境声轨。
17.根据权利要求11-16中任一项所述的方法,其中,由所述一个或多个计算设备生成包括所述多个序列图像的至少一个子集的图像流包括:
由所述一个或多个计算设备选择多个非序列图像帧;并且
其中,所述图像流包括超延时图像流,所述超延时图像流包括连续排列的多个非序列图像帧。
18.根据权利要求11-17中任一项所述的方法,其中,由所述一个或多个计算设备生成包括所述多个序列图像的至少一个子集的图像流包括:
由所述一个或多个计算设备选择序列图像帧的第一子集;
由所述一个或多个计算设备选择序列图像帧的第二子集;并且
其中,所述图像流包括缩短的图像流,所述缩短的图像流包括连续排列的序列图像帧的第一子集和序列图像帧的第二子集。
19.一种用于捕获图像的方法,包括:
由图像捕获设备的图像传感器捕获一个或多个图像;
由所述图像捕获设备在所述图像捕获设备的临时图像缓冲器中维护一个或多个捕获图像的副本;
由所述图像捕获设备接收音频信号;
由所述图像捕获设备用机器学习的音频分类器模型分析所述音频信号的至少一部分,以确定描述音频事件的第一音频分类器标签;
响应于确定第一音频分类器标签,由所述图像捕获设备确定与所述第一音频分类器标签相关联的时间偏移量;
由所述图像捕获设备使用所述时间偏移量来从在所述临时图像缓冲器中维护的一个或多个捕获图像中识别与第一音频分类器标签相关联的第一捕获图像,其中,第一捕获图像在时间上与用第一音频分类器标签标记的所述音频信号的部分偏移所述时间位移量;以及
由所述图像捕获设备将第一捕获图像的副本存储在所述图像捕获设备的非易失性存储器中。
20.根据权利要求19所述的方法,其中,所述第一音频分类器标签包括笑声标签,并且所述时间偏移量包括负时间量,使得所述图像捕获设备识别在接收到用所述笑声标签标记的音频信号的部分之前的时间由所述图像捕获设备捕获的第一捕获图像。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/944,415 US10372991B1 (en) | 2018-04-03 | 2018-04-03 | Systems and methods that leverage deep learning to selectively store audiovisual content |
US15/944,415 | 2018-04-03 | ||
PCT/US2019/018389 WO2019194906A1 (en) | 2018-04-03 | 2019-02-18 | Systems and methods that leverage deep learning to selectively store audiovisual content |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111480156A true CN111480156A (zh) | 2020-07-31 |
Family
ID=65685998
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980006363.7A Pending CN111480156A (zh) | 2018-04-03 | 2019-02-18 | 利用深度学习选择性存储视听内容的系统和方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10372991B1 (zh) |
EP (2) | EP3759612A1 (zh) |
JP (1) | JP6898524B2 (zh) |
CN (1) | CN111480156A (zh) |
WO (1) | WO2019194906A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112035705A (zh) * | 2020-08-31 | 2020-12-04 | 北京市商汤科技开发有限公司 | 标签生成方法及装置、电子设备和存储介质 |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108307193B (zh) * | 2018-02-08 | 2018-12-18 | 北京航空航天大学 | 一种有损压缩视频的多帧质量增强方法及装置 |
US10884769B2 (en) * | 2018-02-17 | 2021-01-05 | Adobe Inc. | Photo-editing application recommendations |
US11036811B2 (en) | 2018-03-16 | 2021-06-15 | Adobe Inc. | Categorical data transformation and clustering for machine learning using data repository systems |
US10827157B1 (en) * | 2019-05-10 | 2020-11-03 | Gopro, Inc. | Generating videos with short audio |
GB2587627B (en) | 2019-10-01 | 2023-05-03 | Sony Interactive Entertainment Inc | Apparatus and method for generating a recording |
CN111104898B (zh) * | 2019-12-18 | 2022-03-25 | 武汉大学 | 基于目标语义和注意力机制的图像场景分类方法及装置 |
US11727913B2 (en) * | 2019-12-23 | 2023-08-15 | Adobe Inc. | Automatically associating context-based sounds with text |
US11580389B2 (en) * | 2020-01-14 | 2023-02-14 | International Business Machines Corporation | System and method for predicting fall armyworm using weather and spatial dynamics |
JP7486337B2 (ja) | 2020-04-15 | 2024-05-17 | 日本放送協会 | 映像抽出装置及びプログラム |
EP4211687A1 (en) * | 2020-09-08 | 2023-07-19 | Tampere University Foundation SR | Privacy-preserving sound representation |
US20220092404A1 (en) * | 2020-09-18 | 2022-03-24 | Arm Cloud Technology, Inc. | Neural network selection |
EP4054184A1 (en) * | 2021-03-02 | 2022-09-07 | Axis AB | Event video sequences |
CA3152644A1 (en) * | 2021-03-16 | 2022-09-16 | Monsters Aliens Robots Zombies Inc. | Method and system for image processing |
WO2022250660A1 (en) * | 2021-05-25 | 2022-12-01 | Google Llc | Enhancing audio content of a captured scene |
CN113408664B (zh) * | 2021-07-20 | 2024-04-16 | 北京百度网讯科技有限公司 | 训练方法、分类方法、装置、电子设备以及存储介质 |
US11429664B1 (en) | 2022-03-21 | 2022-08-30 | Verkada Inc. | Hyperzoom attribute analytics on the edge |
US11594043B1 (en) | 2022-03-21 | 2023-02-28 | Verkada Inc. | People and vehicle analytics on the edge |
CN115208722B (zh) * | 2022-07-28 | 2024-03-01 | 电子科技大学 | 一种新的帧同步扰码解扰方法 |
US11974012B1 (en) | 2023-11-03 | 2024-04-30 | AVTech Select LLC | Modifying audio and video content based on user input |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102340625A (zh) * | 2010-07-16 | 2012-02-01 | 安讯士有限公司 | 事件启动的视频捕获方法及捕获事件启动的视频的摄像机 |
CN104580888A (zh) * | 2014-12-17 | 2015-04-29 | 广东欧珀移动通信有限公司 | 一种图像处理方法及终端 |
US20170316792A1 (en) * | 2016-05-02 | 2017-11-02 | Google Inc. | Automatic determination of timing windows for speech captions in an audio stream |
US9836484B1 (en) * | 2015-12-30 | 2017-12-05 | Google Llc | Systems and methods that leverage deep learning to selectively store images at a mobile image capture device |
CN107493442A (zh) * | 2017-07-21 | 2017-12-19 | 北京奇虎科技有限公司 | 一种编辑视频的方法和装置 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6925455B2 (en) | 2000-12-12 | 2005-08-02 | Nec Corporation | Creating audio-centric, image-centric, and integrated audio-visual summaries |
US20070124292A1 (en) | 2001-10-30 | 2007-05-31 | Evan Kirshenbaum | Autobiographical and other data collection system |
US20080193016A1 (en) | 2004-02-06 | 2008-08-14 | Agency For Science, Technology And Research | Automatic Video Event Detection and Indexing |
US7382244B1 (en) * | 2007-10-04 | 2008-06-03 | Kd Secure | Video surveillance, storage, and alerting system having network management, hierarchical data storage, video tip processing, and vehicle plate analysis |
US20110047163A1 (en) * | 2009-08-24 | 2011-02-24 | Google Inc. | Relevance-Based Image Selection |
US20140362290A1 (en) | 2013-06-06 | 2014-12-11 | Hallmark Cards, Incorporated | Facilitating generation and presentation of sound images |
US9940545B2 (en) * | 2013-09-20 | 2018-04-10 | Change Healthcare Llc | Method and apparatus for detecting anatomical elements |
US10334158B2 (en) | 2014-11-03 | 2019-06-25 | Robert John Gove | Autonomous media capturing |
US20160365114A1 (en) | 2015-06-11 | 2016-12-15 | Yaron Galant | Video editing system and method using machine learning |
US11087228B2 (en) * | 2015-08-12 | 2021-08-10 | Bae Systems Information And Electronic Systems Integration Inc. | Generic probabilistic approximate computational inference model for streaming data processing |
US10037313B2 (en) | 2016-03-24 | 2018-07-31 | Google Llc | Automatic smoothed captioning of non-speech sounds from audio |
-
2018
- 2018-04-03 US US15/944,415 patent/US10372991B1/en active Active
-
2019
- 2019-02-18 JP JP2020523694A patent/JP6898524B2/ja active Active
- 2019-02-18 WO PCT/US2019/018389 patent/WO2019194906A1/en unknown
- 2019-02-18 EP EP19709207.5A patent/EP3759612A1/en not_active Ceased
- 2019-02-18 CN CN201980006363.7A patent/CN111480156A/zh active Pending
- 2019-02-18 EP EP23218340.0A patent/EP4322027A3/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102340625A (zh) * | 2010-07-16 | 2012-02-01 | 安讯士有限公司 | 事件启动的视频捕获方法及捕获事件启动的视频的摄像机 |
CN104580888A (zh) * | 2014-12-17 | 2015-04-29 | 广东欧珀移动通信有限公司 | 一种图像处理方法及终端 |
US9836484B1 (en) * | 2015-12-30 | 2017-12-05 | Google Llc | Systems and methods that leverage deep learning to selectively store images at a mobile image capture device |
US20170316792A1 (en) * | 2016-05-02 | 2017-11-02 | Google Inc. | Automatic determination of timing windows for speech captions in an audio stream |
CN107493442A (zh) * | 2017-07-21 | 2017-12-19 | 北京奇虎科技有限公司 | 一种编辑视频的方法和装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112035705A (zh) * | 2020-08-31 | 2020-12-04 | 北京市商汤科技开发有限公司 | 标签生成方法及装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP4322027A2 (en) | 2024-02-14 |
JP6898524B2 (ja) | 2021-07-07 |
EP4322027A3 (en) | 2024-03-27 |
US10372991B1 (en) | 2019-08-06 |
EP3759612A1 (en) | 2021-01-06 |
WO2019194906A1 (en) | 2019-10-10 |
JP2021507550A (ja) | 2021-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6898524B2 (ja) | オーディオビジュアルコンテンツを選択的に記憶するために深層学習を利用するシステムおよび方法 | |
US11159763B2 (en) | Low power framework for controlling image sensor mode in a mobile image capture device | |
US10706892B2 (en) | Method and apparatus for finding and using video portions that are relevant to adjacent still images | |
US10732809B2 (en) | Systems and methods for selective retention and editing of images captured by mobile image capture device | |
US10482925B1 (en) | Frame selection of video data | |
US9836484B1 (en) | Systems and methods that leverage deep learning to selectively store images at a mobile image capture device | |
US11810597B2 (en) | Video ingestion and clip creation | |
WO2021236296A1 (en) | Maintaining fixed sizes for target objects in frames | |
US9838641B1 (en) | Low power framework for processing, compressing, and transmitting images at a mobile image capture device | |
JP2022523606A (ja) | 動画解析のためのゲーティングモデル | |
US10582149B1 (en) | Preview streaming of video data | |
US9578279B1 (en) | Preview streaming of video data | |
US9836819B1 (en) | Systems and methods for selective retention and editing of images captured by mobile image capture device | |
US11303802B2 (en) | Image capturing apparatus, control method therefor, and storage medium | |
US9805267B2 (en) | Video processing system with photo generation and methods for use therewith | |
CN110557560B (zh) | 摄像设备及其控制方法和存储介质 | |
US10224073B2 (en) | Auto-directing media construction | |
CN115525188A (zh) | 拍摄方法和电子设备 | |
CN115529378A (zh) | 一种视频处理方法及相关装置 | |
US10372994B2 (en) | Method, system and apparatus for selecting a video frame | |
KR102166176B1 (ko) | 이미지 촬영 장치 및 방법 | |
CN116916089A (zh) | 一种融合人声特征与人脸特征的智能视频剪辑方法 |
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 |