[go: up one dir, main page]

HK1238457B - Projector optimization method and system - Google Patents

Projector optimization method and system

Info

Publication number
HK1238457B
HK1238457B HK17112077.2A HK17112077A HK1238457B HK 1238457 B HK1238457 B HK 1238457B HK 17112077 A HK17112077 A HK 17112077A HK 1238457 B HK1238457 B HK 1238457B
Authority
HK
Hong Kong
Prior art keywords
projector
points
pattern
content
test
Prior art date
Application number
HK17112077.2A
Other languages
Chinese (zh)
Other versions
HK1238457A1 (en
Inventor
Grundhoefer Anselm
Lukas Willi Simon
Original Assignee
Disney Enterprises, Inc.
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
Application filed by Disney Enterprises, Inc. filed Critical Disney Enterprises, Inc.
Publication of HK1238457A1 publication Critical patent/HK1238457A1/en
Publication of HK1238457B publication Critical patent/HK1238457B/en

Links

Description

投影仪优化方法和系统Projector optimization method and system

技术领域Technical Field

本文所述技术一般涉及用于优化一个或多个投影仪的方法和系统。The technology described herein generally relates to methods and systems for optimizing one or more projectors.

背景技术Background Art

图像投影仪用于将图像投影到投影表面(诸如,屏幕)上。在一些应用中,视频投影仪用于增强、补充或以其它方式增加表面上的对象以创建动态且令人愉快的用户体验,诸如游乐园吸引力。例如,字符或对象可以被投影在与表面上的真实对象虚拟地(virtually)“交互”的表面上。Image projectors are used to project images onto a projection surface, such as a screen. In some applications, video projectors are used to enhance, supplement, or otherwise augment objects on a surface to create a dynamic and enjoyable user experience, such as an amusement park attraction. For example, characters or objects can be projected onto a surface that virtually "interact" with real objects on the surface.

传统的视频投影仪具有许多限制。特别地,传统的视频投影仪具有有限的色域和亮度。由于这些限制,仅使用传统视频投影仪的呈现可能显得暗淡且不鲜明。另外,在存在环境照明的情况下,所生成的图像可能显得褪色且不真实。相反,与传统视频投影仪相比,激光投影仪(诸如,激光扫描投影仪)具有增加的亮度和色域。特别地,激光投影仪可以投影纯饱和的、即单色的红色、绿色和蓝色色调,允许比传统视频投影仪显著更广的色域。Traditional video projectors have many limitations. In particular, they have a limited color gamut and brightness. Due to these limitations, presentations using only a traditional video projector can appear dim and unremarkable. Additionally, in the presence of ambient lighting, the generated image can appear washed out and unrealistic. In contrast, laser projectors (such as laser scanning projectors) have increased brightness and color gamut compared to traditional video projectors. In particular, laser projectors can project pure, saturated, i.e., monochromatic, red, green, and blue tones, allowing for a significantly wider color gamut than traditional video projectors.

与视频投影仪形成对照,激光投影仪使用检流计镜来引导光。这些镜子以这样的高速度移动使得,由于人类视觉感知的限制,投影的激光光斑被人类观察者感知为静态图形。然而,这种机械镜子移动的速度具有可能导致诸如模糊、闪烁和迟钝之类的问题的物理限制。因此,扫描激光器通常局限于适当显示的顶点的数目,因为如果过慢地追踪路径则视觉闪烁可能快速发生。另一方面,必须降低速度以确保内容的精确空间渲染。此外,典型的激光投影仪将选择随机路径用于渲染内容。这些问题导致闪烁和其它伪影,其影响通过激光投影仪的投影内容的显现。In contrast to video projectors, laser projectors use galvanometer mirrors to direct light. These mirrors move at such high speeds that, due to the limitations of human visual perception, the projected laser spot is perceived as a static graphic by a human observer. However, the speed at which such mechanical mirrors can move has physical limitations that can cause problems such as blurring, flickering, and sluggishness. Therefore, scanning lasers are generally limited to the number of vertices that can be properly displayed, because visual flicker can occur quickly if the path is traced too slowly. On the other hand, the speed must be reduced to ensure accurate spatial rendering of the content. In addition, a typical laser projector will choose a random path for rendering the content. These problems result in flickering and other artifacts that affect the appearance of the projected content through the laser projector.

发明内容Summary of the Invention

本公开的一个示例涉及用于优化用于内容投影的投影仪的方法和系统。在一个实施例中,该方法包括通过处理元件接收与由投影仪在投影表面上投影的测试图案相对应的多个测试图像,其中所述测试图案中的每一个包括至少两个点,通过处理元件比较所述多个测试图像以评估与所述两个点之间的距离相关的一个或多个投影仪特性,通过处理元件生成表示所述一个或多个投影仪特性的投影仪模型,以及利用所述模型来确定投影仪用于内容的投影路径。One example of the present disclosure relates to a method and system for optimizing a projector for content projection. In one embodiment, the method includes receiving, by a processing component, a plurality of test images corresponding to test patterns projected by a projector onto a projection surface, wherein each of the test patterns includes at least two points, comparing, by the processing component, the plurality of test images to evaluate one or more projector characteristics related to a distance between the two points, generating, by the processing component, a projector model representing the one or more projector characteristics, and determining a projection path for the projector to use for content using the model.

本公开的另一示例包括用于生成投影仪模型的方法,所述投影仪模型用于优化用于由投影仪投影内容的投影路径。所述方法包括通过相机捕获由投影仪投影的测试图案的多个图案图像,分析所述图案图像以确定用于达到所述图案图像中的每一个中的测试图案的距离特性和成角度特性,以及基于每个测试图案的距离特性和成角度特性创建表示投影仪的模型数据库。Another example of the present disclosure includes a method for generating a projector model for optimizing a projection path for projecting content by a projector. The method includes capturing, with a camera, multiple pattern images of a test pattern projected by the projector, analyzing the pattern images to determine distance characteristics and angle characteristics for reaching the test pattern in each of the pattern images, and creating a model database representing the projector based on the distance characteristics and angle characteristics of each test pattern.

本公开的又另一示例包括用于优化用于内容的投影路径的系统。该系统包括用于投影内容的激光投影仪以及电子地连接到该激光投影仪的计算机。所述计算机包括存储器,其包括与投影仪的显示行为相对应的投影仪模型数据库,并且所述计算机被配置成分析投影仪模型以确定用于内容的投影路径的最小长度以及确定沿着投影路径的内容的每个点之间的最佳成角度。Yet another example of the present disclosure includes a system for optimizing a projection path for content. The system includes a laser projector for projecting content and a computer electronically connected to the laser projector. The computer includes a memory containing a projector model database corresponding to the display behavior of the projector, and the computer is configured to analyze the projector model to determine a minimum length for the projection path for the content and to determine an optimal angle between each point of the content along the projection path.

附图说明BRIEF DESCRIPTION OF THE DRAWINGS

图1A是优化系统的透视图。FIG1A is a perspective view of an optimization system.

图1B是包括校准布置的图1A的优化系统的透视图。1B is a perspective view of the optimization system of FIG. 1A including a calibration arrangement.

图2是优化系统的简化框图。Figure 2 is a simplified block diagram of the optimization system.

图3是优化系统的投影仪的简化框图。FIG3 is a simplified block diagram of the projector of the optimization system.

图4是图示出优化方法的流程图。FIG4 is a flow chart illustrating an optimization method.

图5是图示出用于优化系统的相机和投影仪的校准方法的流程图。FIG5 is a flow chart illustrating a calibration method for optimizing the camera and projector of the system.

图6A是其中投影仪在投影表面上投影测试图案的优化系统的透视图。6A is a perspective view of an optimization system in which a projector projects a test pattern on a projection surface.

图6B是对应于图6A的测试图案捕获的图案图像的图解。FIG. 6B is an illustration of a pattern image captured corresponding to the test pattern of FIG. 6A .

图6C是围绕中心点裁剪的图6B的图案图像的图解。FIG. 6C is an illustration of the pattern image of FIG. 6B cropped about a center point.

图7是使用图4的方法为投影仪导出的模型参数的示例。FIG. 7 is an example of model parameters derived for a projector using the method of FIG. 4 .

图8是图示出图4的方法的选择操作的图。FIG. 8 is a diagram illustrating a selection operation of the method of FIG. 4 .

图9是图4的优化操作的示意性表示。FIG. 9 is a schematic representation of the optimization operation of FIG. 4 .

图10A图示出了在优化之前由投影仪投影的内容的帧。FIG. 10A illustrates a frame of content projected by a projector before optimization.

图10B图示出了优化之后的图10A中的内容的帧。FIG. 10B illustrates a frame of the content in FIG. 10A after optimization.

具体实施方式DETAILED DESCRIPTION

本公开一般涉及优化用于扫描激光投影仪的投影路径。使用扫描激光投影仪,闪烁的出现受各种各样的因素影响,所述因素诸如投影仪的总扫描路径长度、路径遍历的顺序、要显示的顶点的数目以及时间路径一致性。所公开的系统和方法使这些因素最小化,同时也使可显示点的数目最大化。The present disclosure generally relates to optimizing the projection path for a scanning laser projector. With a scanning laser projector, the appearance of flicker is affected by a variety of factors, such as the projector's total scan path length, the order in which the path is traversed, the number of vertices to be displayed, and temporal path consistency. The disclosed systems and methods minimize these factors while also maximizing the number of displayable points.

在一个实施例中,所述方法包括在各种路径追踪下捕获激光投影仪的扫描行为的信息。使用该信息,生成描述关于相关属性的激光器行为的模型。该模型用于计算用于一个或多个图像的近似最佳扫描路径,其是在最小时间量内的输入点的空间上准确的投影,并且其还考虑到时空路径分布而使感知到的闪烁伪影最小化。In one embodiment, the method includes capturing information about the scanning behavior of a laser projector under various path tracking conditions. Using this information, a model is generated that describes the laser's behavior with respect to relevant properties. The model is used to compute a near-optimal scanning path for one or more images that is a spatially accurate projection of an input point in a minimum amount of time and that minimizes perceived flicker artifacts by taking into account the spatiotemporal path distribution.

如本文所用的术语“激光投影仪”或“投影仪110”意图指代基本上任何类型的光投影组件,诸如但不限于检流计激光扫描投影仪。此外,本文所呈现的方法和系统可以用于优化的其它类型或基于相同输入(例如,具有在相同位置中但以不同顺序显示的相同点集的输入)而无保证输出的投影仪,诸如扫描投影仪或具有移动元件的其它投影仪。As used herein, the term "laser projector" or "projector 110" is intended to refer to substantially any type of light projection assembly, such as, but not limited to, a galvanometer laser scanning projector. In addition, the methods and systems presented herein can be used for other types of projectors that are optimized or that do not guarantee output based on the same input (e.g., input with the same set of points in the same position but displayed in a different order), such as scanning projectors or other projectors with moving elements.

图1A是优化系统10的透视图。图1B是用于图1A的校准系统的透视图。图2是优化系统10的简化框图。参考图1A-2,优化系统10包括用于投影内容153的一个或多个激光投影仪110、投影表面162、一个或多个相机120以及一个或多个计算机130。所述一个或多个激光投影仪110、相机120和计算机130全都可以彼此通信,并且包括在每个设备之间共享和传输信息的能力。原内容149被输入到计算机130,其优化用于投影仪110的投影仪路径,然后投影仪110投影优化的内容153。下面将依次讨论组件中的每一个。FIG1A is a perspective view of the optimization system 10. FIG1B is a perspective view of the calibration system for FIG1A. FIG2 is a simplified block diagram of the optimization system 10. Referring to FIG1A-2, the optimization system 10 includes one or more laser projectors 110 for projecting content 153, a projection surface 162, one or more cameras 120, and one or more computers 130. The one or more laser projectors 110, cameras 120, and computers 130 can all communicate with each other and include the ability to share and transfer information between each device. Original content 149 is input to the computer 130, which optimizes the projector path for the projector 110, which then projects the optimized content 153. Each of the components will be discussed in turn below.

投影表面162是任何类型的不透明表面或物体。例如,投影表面162可以是平的、非平面的或变化的,并且可以包括一个或多个纹理或表面变化和/或色彩。在一些实例中,投影表面162可以包括相对于彼此在不同深度或位置处的多个表面。投影表面162的类型和结构可以按照期望变化。Projection surface 162 is any type of opaque surface or object. For example, projection surface 162 can be flat, non-planar, or variable, and can include one or more textures or surface variations and/or colors. In some examples, projection surface 162 can include multiple surfaces at different depths or positions relative to each other. The type and configuration of projection surface 162 can vary as desired.

相机120是能够捕获静止或视频图像的任何设备。相机120捕获全色图像和/或单色图像,并且可以使用任何类型的过滤器,诸如一个或多个滤色器。在一个实施例中,相机120被配置成捕获激光投影仪110的基本上整个动态范围而无需进行严重剪裁。相机120被与其环境配准或以其它方式放置在已知位置中,以使得相机120相对于投影表面162的具体取向和位置是已知的。The camera 120 is any device capable of capturing still or video images. The camera 120 captures full-color images and/or monochrome images and can use any type of filter, such as one or more color filters. In one embodiment, the camera 120 is configured to capture substantially the entire dynamic range of the laser projector 110 without significant clipping. The camera 120 is registered with its environment or otherwise placed in a known position so that the specific orientation and position of the camera 120 relative to the projection surface 162 is known.

应当指出的是,虽然在图1A和1B中示出了一个相机120,但是在其它实施例中,可以使用附加的相机。例如,在一些实施例中,两个相机可以用于投影仪的三维(3D)校准,而单个相机可以用于投影仪的优化。替换地或附加地,可以使用能够深度感知的一个或多个相机,诸如3D立体相机、KINECT型深度相机、3D相机、机器视觉相机或任何其它类型的有源或无源深度检测相机(诸如,基于飞行时间的3D相机或红外3D相机)。It should be noted that while one camera 120 is shown in Figures 1A and 1B, in other embodiments, additional cameras may be used. For example, in some embodiments, two cameras may be used for three-dimensional (3D) calibration of the projector, while a single camera may be used for optimization of the projector. Alternatively or additionally, one or more cameras capable of depth perception may be used, such as a 3D stereo camera, a KINECT-type depth camera, a 3D camera, a machine vision camera, or any other type of active or passive depth detection camera (such as a time-of-flight-based 3D camera or an infrared 3D camera).

参考图1A和2,优化系统10还包括计算机130。计算机130分析来自投影仪110和相机120二者的数据,并且还可以可选地控制任一设备的一个或多个功能。在图1A的示例中,仅示出了一个计算机130;然而,在其它实施例中,可以使用一个以上的计算机或服务器。计算机130可以包括一个或多个处理元件301、电源302、显示器303、一个或多个存储器组件304以及输入/输出(I/O)接口305。计算机130的元件中的每一个可以经由一个或多个系统总线、无线地或诸如此类进行通信。1A and 2 , optimization system 10 also includes a computer 130. Computer 130 analyzes data from both projector 110 and camera 120 and may also optionally control one or more functions of either device. In the example of FIG1A , only one computer 130 is shown; however, in other embodiments, more than one computer or server may be used. Computer 130 may include one or more processing elements 301, a power supply 302, a display 303, one or more memory components 304, and an input/output (I/O) interface 305. Each of the components of computer 130 may communicate via one or more system buses, wirelessly, or the like.

处理元件301是能够处理、接收和/或传送指令的任何类型的电子设备。例如,处理元件301可以是微处理器或微控制器。此外,应当指出的是,计算机130的选择组件可以由第一处理器来控制,而其它组件可以由第二处理器来控制,其中所述第一和第二处理器可以或者可以不彼此通信。Processing element 301 is any type of electronic device capable of processing, receiving, and/or transmitting instructions. For example, processing element 301 may be a microprocessor or a microcontroller. Furthermore, it should be noted that selected components of computer 130 may be controlled by a first processor, while other components may be controlled by a second processor, wherein the first and second processors may or may not communicate with each other.

存储器304存储由计算机130使用的数据,以存储用于处理元件301的指令以及存储用于优化系统10的呈现、优化、校准和/或投影仪模型数据。例如,存储器304可以存储对应于各种应用的数据或内容,诸如但不限于音频文件、视频文件等。存储器304例如可以是磁光储存器、只读存储器、随机存取存储器、可擦可编程存储器、闪速存储器或一种或多种类型的存储器组件的组合。The memory 304 stores data used by the computer 130 to store instructions for processing element 301 and to store rendering, optimization, calibration, and/or projector model data used to optimize the system 10. For example, the memory 304 may store data or content corresponding to various applications, such as, but not limited to, audio files, video files, etc. The memory 304 may be, for example, magneto-optical storage, read-only memory, random access memory, erasable programmable memory, flash memory, or a combination of one or more types of memory components.

电源302为计算机130的组件提供电力,并且可以是电池、电源线或配置成向激光投影仪110的组件传送电力的其它元件。Power supply 302 provides power to the components of computer 130 and may be a battery, a power cord, or other element configured to deliver power to the components of laser projector 110 .

显示器303向用户提供视觉反馈,并且可选地,可以用作输入元件以使用户能够控制、操纵以及校准优化系统10的各个组件。显示器303可以是任何合适的显示器,诸如液晶显示器、等离子体显示器、有机发光二极管显示器和/或阴极射线管显示器。在其中显示器303用作输入的实施例中,显示器可以包括一个或多个触摸或输入传感器,诸如电容式触摸传感器、电阻栅格等。The display 303 provides visual feedback to the user and, optionally, can be used as an input element to enable the user to control, manipulate, and calibrate various components of the optimization system 10. The display 303 can be any suitable display, such as a liquid crystal display, a plasma display, an organic light emitting diode display, and/or a cathode ray tube display. In embodiments where the display 303 is used as an input, the display can include one or more touch or input sensors, such as a capacitive touch sensor, a resistive grid, and the like.

I/O接口305提供去往和来自激光投影仪110、相机120和计算机130以及其它设备(例如,其它计算机、辅助场景照明、扬声器等)的通信。I/O接口305可以包括一个或多个输入按钮,诸如WiFi、以太网等的通信接口,以及诸如通用串行总线(USB)电缆等的其它通信组件。The I/O interface 305 provides communication to and from the laser projector 110, the camera 120, and the computer 130, as well as other devices (e.g., other computers, auxiliary scene lighting, speakers, etc.). The I/O interface 305 may include one or more input buttons, communication interfaces such as WiFi, Ethernet, etc., and other communication components such as a universal serial bus (USB) cable.

可选地,计算机130可以具有传感器306。传感器306包括能够感测特性或参数的改变并产生电信号的基本上任何设备。传感器306可以与相机120结合地使用或者代替相机120地使用,或者可以用于感测诸如围绕投影表面162的环境照明的其它参数。计算机130的传感器306和显示器303可以按照期望而变化以满足特定应用的需要。Optionally, the computer 130 may include a sensor 306. The sensor 306 includes essentially any device capable of sensing a change in a characteristic or parameter and generating an electrical signal. The sensor 306 may be used in conjunction with or in place of the camera 120, or may be used to sense other parameters such as the ambient lighting surrounding the projection surface 162. The sensor 306 and display 303 of the computer 130 may be varied as desired to meet the needs of a particular application.

现在将更详细地讨论优化系统10的激光投影仪110。图3是激光投影仪110的简化框图。参考图1和3,激光投影仪110用于将诸如光图案、图像等的内容153投影到场景160的投影表面162上。激光投影仪110可以是扫描激光投影仪或其它基于透镜或非透镜的投影组件。应当指出的是,虽然本文所讨论的实施例是关于激光投影仪来讨论的,但是所述优化方法和系统可以与基本上任何类型的投影仪一起使用,特别是包括用于输出内容的移动元件的投影仪。The laser projector 110 of the optimization system 10 will now be discussed in more detail. FIG3 is a simplified block diagram of the laser projector 110. Referring to FIG1 and FIG3, the laser projector 110 is used to project content 153, such as light patterns, images, etc., onto a projection surface 162 of a scene 160. The laser projector 110 can be a scanning laser projector or other lens-based or non-lens projection assembly. It should be noted that although the embodiments discussed herein are discussed with respect to laser projectors, the optimization methods and systems can be used with substantially any type of projector, particularly projectors that include a moving element for outputting content.

在一些实施例中,激光投影仪110投影红色、绿色和/或蓝色相干光。在其它实施例中,激光投影仪110根据需要投影基本上任何其它色彩或频率的光,包括可见光或非可见光(例如,紫外线、红外线以及其它)。激光投影仪110可以是检流计扫描激光投影仪等,并且包括镜组装件201、激光源202、一个或多个处理元件203、一个或多个存储器组件204、I/O接口205和电源206。在一些实施例中,计算机130可以为投影仪110提供处理和存储功能中的一些或全部,并且在这些实施例中,可以省略投影仪110的一个或多个特征。In some embodiments, laser projector 110 projects red, green, and/or blue coherent light. In other embodiments, laser projector 110 projects light of substantially any other color or frequency, including visible light or non-visible light (e.g., ultraviolet, infrared, and others), as desired. Laser projector 110 may be a galvanometer-scanned laser projector, etc., and include a mirror assembly 201, a laser source 202, one or more processing elements 203, one or more memory components 204, an I/O interface 205, and a power supply 206. In some embodiments, computer 130 may provide some or all of the processing and storage functions for projector 110, and in these embodiments, one or more features of projector 110 may be omitted.

镜组装件201将由激光源202发射的光引导到投影表面162上。在一些实施例中,镜组装件201可以包括连接到检流计伺服系统或其它运动诱导元件的两个或多个镜子。在一个实施例中,镜组装件201的镜子可以相对于彼此正交地定向,以使得一个镜子围绕第一轴线旋转而另一个镜子围绕与第一轴线正交的第二轴线旋转。所述运动诱导元件基于到投影仪110的输入移动镜子,以改变从投影仪110发射的光的输出和位置。Mirror assembly 201 directs light emitted by laser source 202 onto projection surface 162. In some embodiments, mirror assembly 201 can include two or more mirrors connected to a galvanometer servo system or other motion-inducing element. In one embodiment, the mirrors of mirror assembly 201 can be oriented orthogonally relative to each other so that one mirror rotates about a first axis and the other mirror rotates about a second axis orthogonal to the first axis. The motion-inducing element moves the mirrors based on input to projector 110 to change the output and position of light emitted from projector 110.

一个或多个投影仪处理元件203从存储器组件204或I/O接口205接收输入图像数据。投影仪处理元件203可以基本上类似于处理元件301,并且可以是能够处理、接收和/或传送指令的任何电子设备。例如,投影仪处理元件203可以是微处理器或微控制器。One or more projector processing elements 203 receive input image data from memory component 204 or I/O interface 205. Projector processing element 203 can be substantially similar to processing element 301 and can be any electronic device capable of processing, receiving, and/or transmitting instructions. For example, projector processing element 203 can be a microprocessor or a microcontroller.

投影仪存储器204存储由激光投影仪110和/或计算机130使用的数据,并且可以是易失性或非易失性存储器。存储器204可以基本上类似于存储器304,但是在许多实施例中,可能比其它组件需要更少的存储。Projector memory 204 stores data used by laser projector 110 and/or computer 130 and can be volatile or non-volatile memory. Memory 204 can be substantially similar to memory 304, but in many embodiments may require less memory than other components.

电源206为激光投影仪的组件提供电力。电源206可以是电池、电源线或配置成向激光投影仪的组件传送电力的其它元件。The power supply 206 provides power to the components of the laser projector. The power supply 206 can be a battery, a power cord, or other element configured to deliver power to the components of the laser projector.

激光源202可以是一个或多个固态激光源(诸如,激光二极管),或者可以是气体激光源和/或其它类型的相干光。在其它实施例中,投影仪可以包括非相干光源。The laser source 202 may be one or more solid-state laser sources, such as a laser diode, or may be a gas laser source and/or other types of coherent light. In other embodiments, the projector may include an incoherent light source.

I/O接口205提供去往和来自激光投影仪110和计算机130以及其它设备的通信。I/O接口205可以包括一个或多个输入按钮,诸如WiFi、以太网等的通信接口,以及诸如通用串行总线(USB)电缆等的其它通信组件。I/O interface 205 provides communication to and from laser projector 110 and computer 130, as well as other devices. I/O interface 205 may include one or more input buttons, communication interfaces such as WiFi, Ethernet, and other communication components such as a Universal Serial Bus (USB) cable.

优化系统10用于校准和优化激光投影仪110,以使得由投影仪110投影的内容以最高效的方式被投影,以减少闪烁和其它伪影。图4图示出用于优化激光投影仪110的方法400。方法400以操作402开始并且执行几何校准。例如,基于相机的校准过程用于评估关于投影仪110的扫描行为的信息,并且确保所显示的内容被投影在期望的空间位置中。在该示例中,相机120的像素被映射到投影表面162上的所投影内容的坐标。The optimization system 10 is used to calibrate and optimize the laser projector 110 so that the content projected by the projector 110 is projected in the most efficient manner to reduce flicker and other artifacts. FIG4 illustrates a method 400 for optimizing the laser projector 110. The method 400 begins with operation 402 and performs a geometric calibration. For example, a camera-based calibration process is used to evaluate information about the scanning behavior of the projector 110 and ensure that the displayed content is projected in the desired spatial location. In this example, the pixels of the camera 120 are mapped to the coordinates of the projected content on the projection surface 162.

图5图示出操作402的图解过程。参考图5,操作402包括过程502,并且激光投影仪110将校准图案150投影到投影表面161上。校准图案150可以是任何类型的结构光。校准图案的示例可以在题为“Method and System for Projector Calibration(用于投影仪校准的方法和系统)”的美国申请号14/534,855中找到,其整体地通过引用结合到本文中(‘855申请)。校准图案150可以包括以时间二进制编码序列单独或成组投影的多个图案元素或点。例如,在一个实施例中,通过一系列开/关事件来识别投影内容的每个元素151,在其它实施例中,图案元素151可以基本上同时投影。FIG5 illustrates a diagrammatic process for operation 402. Referring to FIG5, operation 402 includes process 502, and the laser projector 110 projects a calibration pattern 150 onto the projection surface 161. The calibration pattern 150 can be any type of structured light. Examples of calibration patterns can be found in U.S. application Ser. No. 14/534,855, entitled "Method and System for Projector Calibration," which is incorporated herein by reference in its entirety (the '855 application). The calibration pattern 150 can include multiple pattern elements or dots projected individually or in groups in a temporal binary-coded sequence. For example, in one embodiment, each element 151 of the projected content is identified by a series of on/off events, while in other embodiments, the pattern elements 151 can be projected substantially simultaneously.

在一些实施例中,可以投影含有图案元素151的子集的校准图案150的部分,而随后投影具有图案元素151的其它组的总体校准图案150的剩余部分。在仍其它实施例中,可以投影具有第一组图案元素151的校准图案150,随后是具有第二组图案元素151的另一校准图案150,其可以与所述第一校准图案150相同或不同。具有第二组图案元素151的第二校准图案150可以被挑选或选择用以帮助进一步细化投影表面161的特征。另外,所述第二校准图案150可以基于由相机120提供的图像反馈来选择。即,投影仪或投影系统的校准可以以自适应方式基于一个以上的校准图案150的投影。In some embodiments, a portion of a calibration pattern 150 containing a subset of pattern elements 151 can be projected, followed by projection of the remainder of the overall calibration pattern 150 having other sets of pattern elements 151. In still other embodiments, a calibration pattern 150 having a first set of pattern elements 151 can be projected, followed by another calibration pattern 150 having a second set of pattern elements 151, which can be the same as or different from the first calibration pattern 150. The second calibration pattern 150 having the second set of pattern elements 151 can be selected or chosen to help further refine features of the projection surface 161. Additionally, the second calibration pattern 150 can be selected based on image feedback provided by the camera 120. That is, the calibration of a projector or projection system can be based on the projection of more than one calibration pattern 150 in an adaptive manner.

图案150的投影序列和图案150内的元素151的排列的选择可以基于期望的投影表面162或要由投影仪投影的内容来确定。The selection of the projection sequence of the pattern 150 and the arrangement of the elements 151 within the pattern 150 may be determined based on the desired projection surface 162 or the content to be projected by the projector.

参考图5,在过程504中,相机120捕获所投影的校准图案150的校准图像。相机102可以在使用之前进行调整,以使得相机快门可以捕获图案元素151而不会使图像传感器的感光器过度饱和。这种调整可以自动完成或者由用户(例如,通过调整曝光设置)手动完成。5 , in process 504, camera 120 captures a calibration image of projected calibration pattern 150. Camera 102 may be adjusted prior to use so that the camera shutter can capture pattern elements 151 without oversaturating the image sensor's photosensors. This adjustment may be done automatically or manually by a user (e.g., by adjusting exposure settings).

使用相机120捕获一个或多个校准图像。所述校准图像通常是捕获如被投影到投影表面162上的图案150的照片,诸如数字图像。校准图像允许分离地识别投影元素151。One or more calibration images are captured using the camera 120. The calibration images are typically photographs, such as digital images, capturing the pattern 150 as projected onto the projection surface 162. The calibration images allow the projection elements 151 to be identified separately.

在一些实施例中,可以按预定序列投影多个校准图案,并且可以捕获用于每个校准图案的一个或多个校准图像。通过使用多个图案,处理元件可以能够更容易地确定激光投影仪的失真。In some embodiments, multiple calibration patterns may be projected in a predetermined sequence, and one or more calibration images may be captured for each calibration pattern. By using multiple patterns, the processing element may be able to more easily determine the distortion of the laser projector.

使用校准图像,操作402包括过程506,其中校准图像被分析以检测图案元素151。处理元件301使用图像分析算法(诸如,斑点检测算法)或者可以检测图案元素151的位置的其它算法来检测图案元素151的位置。Using the calibration image, operation 402 includes process 506 where the calibration image is analyzed to detect pattern elements 151. Processing element 301 detects the positions of pattern elements 151 using an image analysis algorithm such as a blob detection algorithm or other algorithm that can detect the positions of pattern elements 151.

基于图案元素151的特性来选择用于检测图案元素151的图像分析算法。例如,如果图案元素151是点或斑点,那么处理元件301可以使用斑点检测算法。作为一个示例,斑点检测算法可以包括从图像中减去背景并且对图像阈值化以掩蔽可疑斑点或特征位置的步骤。执行该算法,处理元件然后分析每个掩蔽区域以计算该斑点的重心。在下面更详细地讨论的本公开的一个示例性实施例中,当处理元件301被配置成使用斑点检测算法来检测图案元素151时,处理元件301分析并比较用于每个检测斑点的重心到用于其它斑点的重心的相对位置以确定2D图像平面内的斑点坐标。An image analysis algorithm is selected for detecting pattern elements 151 based on the characteristics of the pattern elements 151. For example, if the pattern elements 151 are dots or spots, then the processing element 301 may use a spot detection algorithm. As an example, the spot detection algorithm may include steps of subtracting a background from an image and thresholding the image to mask out suspicious spots or feature locations. The algorithm is executed, and the processing element then analyzes each masked area to calculate the center of gravity of the spot. In an exemplary embodiment of the present disclosure discussed in more detail below, when the processing element 301 is configured to detect pattern elements 151 using a spot detection algorithm, the processing element 301 analyzes and compares the relative position of the center of gravity for each detected spot to the center of gravity for other spots to determine the spot coordinates within the 2D image plane.

在其它实施例中,如果图案元素151被选择为线或线段,则可以使用线中心检测算法。用于检测图案元素151的其它算法还可以或替换地包括特征检测、边缘检测、顺序二进制编码斑点、二进制编码的水平和/或垂直线、用长曝光的格雷码、色彩编码图案、强度编码图案、更复杂的图案元素特征等。取决于图案元素151的形状,一些算法可能比其它算法更准确,而其它算法可能需要更少的处理功率。In other embodiments, if the pattern elements 151 are selected as lines or line segments, a line center detection algorithm may be used. Other algorithms for detecting the pattern elements 151 may also or alternatively include feature detection, edge detection, sequential binary coded spots, binary coded horizontal and/or vertical lines, Gray code with long exposure, color coded patterns, intensity coded patterns, more complex pattern element features, etc. Depending on the shape of the pattern elements 151, some algorithms may be more accurate than others, while other algorithms may require less processing power.

返回到图5,一旦测试图案已被相机系统120捕获并由计算机130处理,操作502就包括过程506,其中检测图案元素151。例如,图像分析算法回顾校准图像以检测与周围区域相比在一个或多个属性(诸如但不限于亮度、色彩或色调)上不同的区域。在该示例中,捕获的图案元素151将更明亮并且可以具有与图案150的周围区域不同的色彩,并且因此允许处理元件检测它们的位置。Returning to FIG. 5 , once the test pattern has been captured by camera system 120 and processed by computer 130 , operation 502 includes process 506 , in which pattern elements 151 are detected. For example, an image analysis algorithm reviews the calibration image to detect areas that differ in one or more properties (such as, but not limited to, brightness, color, or hue) from the surrounding areas. In this example, the captured pattern elements 151 will be brighter and may have a different color than the surrounding areas of pattern 150 , thus allowing the processing unit to detect their location.

在一个示例中,处理元件分析捕获的图像以确定每个图案元素151的中心在相应相机120的二维(2D)图像平面中的位置。即,通过使用每个元素151的可检测特征来确定每个图案元素151的2D坐标。在一个示例中,斑点检测算法可以用于为图案元素151的中心的位置提供亚像素精度。然而,如上文讨论的,也可以使用其它算法。In one example, the processing element analyzes the captured image to determine the location of the center of each pattern element 151 in the two-dimensional (2D) image plane of the corresponding camera 120. That is, the 2D coordinates of each pattern element 151 are determined by using detectable features of each element 151. In one example, a blob detection algorithm can be used to provide sub-pixel accuracy for the location of the center of the pattern element 151. However, as discussed above, other algorithms can also be used.

使用检测到的元素,操作402前进至过程508,并且确定场景160内的测试图案元素151的2D位置以及在相机120和投影仪110的图像平面之间创建密集查找表。换言之,确定投影像素的位置和到投影仪中的输入之间的对应性。应当指出的是,操作402是关于相机120和投影仪110之间的2D映射来描述的。例如,一旦使用斑点检测(或其它算法)在相机120的图像平面上的亚像素位置和投影仪110的坐标之间生成所述映射,就使用基于薄板样条的插值来插入缺失点以生成密集查找表,其使得能够将相机图像扭曲到投影仪的虚拟图像平面上。查找表生成的示例可以在'855申请中找到。应当指出的是,可以以各种方式执行这些步骤,并且可以使用其它插值方法生成密集图。Using the detected elements, operation 402 proceeds to process 508, where the 2D positions of test pattern elements 151 within scene 160 are determined and a dense lookup table is created between the image planes of camera 120 and projector 110. In other words, the correspondence between the positions of projected pixels and the inputs to the projector is determined. It should be noted that operation 402 is described with respect to a 2D mapping between camera 120 and projector 110. For example, once the mapping between sub-pixel positions on the image plane of camera 120 and the coordinates of projector 110 is generated using blob detection (or other algorithms), thin plate spline-based interpolation is used to interpolate missing points to generate a dense lookup table, which enables warping of the camera image onto the virtual image plane of the projector. Examples of lookup table generation can be found in the '855 application. It should be noted that these steps can be performed in various ways, and other interpolation methods can be used to generate the dense map.

在其中可能期望3D映射(例如,对于非平面投影仪表面)的实施例中,可以如在'855申请中所描述的那样使用两个或多个相机。然而,对于本申请的方法,为了简单和减少错误,可以使用2D映射。In embodiments where 3D mapping may be desired (e.g., for non-planar projector surfaces), two or more cameras may be used as described in the '855 application. However, for the present method, 2D mapping may be used for simplicity and to reduce errors.

返回到图4,在相机120和投影仪110的几何配准完成之后,可以开始投影仪的优化和模型生成。Returning to FIG. 4 , after the geometric registration of the camera 120 and the projector 110 is completed, the optimization and model generation of the projector can begin.

方法400前进至操作404,并且将测试图案投影到投影表面160上。图6A图示出了投影到投影表面608上的测试图案600的示例。在许多实施例中,测试图案600包括用镜子的不同加速度和减速度设置的以相对于彼此的不同角度、距离布置的三个点602、604、606。在这些实施例中,图案600包括位于其它两个点之间的一个中心点602。虽然在一些实施例中,两个点可用于评估投影仪110的行为,但增加第三个点提供关于不同点之间的角度方向改变的附加数据。Method 400 proceeds to operation 404, and a test pattern is projected onto projection surface 160. FIG6A illustrates an example of a test pattern 600 projected onto projection surface 608. In many embodiments, test pattern 600 includes three points 602, 604, and 606 arranged at different angles and distances relative to one another, using different accelerations and decelerations of the mirror. In these embodiments, pattern 600 includes a center point 602 located between the other two points. While two points may be used to evaluate the behavior of projector 110 in some embodiments, adding a third point provides additional data regarding angular direction changes between the different points.

测试图案600的参数在测试图案之间变化,并且使用多个测试图案来增强优化的灵敏度。在这些示例中,使用选择序列,其中投影的第一点是右上点604,然后投影中心点602,接着是左上点606,并且在每个随后的测试图案600中,点之间的角度以及可选地点之间的距离被改变。虽然公开了三个点,但在其它实施例中,附加的点可以与“中心点”一起使用从而形成在图案中顺序投影的第一和最后投影点之间的每个点。The parameters of the test pattern 600 vary between test patterns, and multiple test patterns are used to enhance the sensitivity of the optimization. In these examples, a selection sequence is used in which the first point projected is the upper right point 604, then the center point 602 is projected, followed by the upper left point 606, and in each subsequent test pattern 600, the angles between the points and, optionally, the distances between the points are varied. While three points are disclosed, in other embodiments, additional points can be used in addition to the "center point" to form each point between the first and last projected points in the pattern.

选择测试图案600(包括点的数目、角度变化和距离变化)以在激光投影仪110开始和停止移动以将每个点602、604、606投影在图案600中时最佳地检测激光投影仪110的加速度和减速度,并且测试图案600可以被设置为“V”形,但是可以基于投影仪110的类型变化。通过变化点,通常位于投影点的相同或类似位置处的停止点一般由激光投影仪使用以评估在镜子接近投影点的位置时何时停止或减慢。这些停止点或速度控制点是使激光器减慢并且可以由投影仪使用以使镜子减速的空白或不可见的点(例如,以与背景相同的色彩投影或根本不投影)。这些速度控制点基于先前投影的点的位置而变化。The test pattern 600 (including the number of dots, angle variations, and distance variations) is selected to optimally detect the acceleration and deceleration of the laser projector 110 as it starts and stops moving to project each dot 602, 604, 606 in the pattern 600. The test pattern 600 can be configured as a "V" shape, but can vary depending on the type of projector 110. By varying the dots, stopping points, typically located at the same or similar locations as the projected dots, are typically used by laser projectors to assess when to stop or slow down the mirror as it approaches the location of the projected dots. These stopping points, or speed control points, are blank or invisible points (e.g., projected in the same color as the background or not projected at all) that slow the laser and can be used by the projector to decelerate the mirror. These speed control points vary based on the location of the previously projected dots.

在数学上表示,具有不同角度和归一化距离的一组测试点图案随着停止点的增加的数目而被多次投影,其被表示为。其中d对应于虚拟图像平面的高度的一半,并且等于对角线的。Mathematically, a set of test point patterns with different angles and normalized distances are multiply projected with increasing number of stopping points, which is denoted as .where d corresponds to half the height of the virtual image plane and is equal to the diagonal.

参考图4,当不同的测试图案600由投影仪110投影时,方法400前进至操作406,并且相机120或测量传感器捕获投影图案的测试图像610。图6B图示出由图6A中的相机120捕获的测试图像610的示例。应当指出的是,需要单个相机120来捕获测试图像,但也可以使用多个相机。在一些实施例中,相机120聚焦或成角度在仅中心点上,因为针对下面所讨论的原因在模型生成中可能不需要其它点。4 , as different test patterns 600 are projected by projector 110, method 400 proceeds to operation 406, and camera 120 or a measurement sensor captures a test image 610 of the projected pattern. FIG6B illustrates an example of a test image 610 captured by camera 120 in FIG6A . It should be noted that a single camera 120 is required to capture the test image, but multiple cameras may also be used. In some embodiments, camera 120 is focused or angled on only the center point, as other points may not be needed in model generation for reasons discussed below.

通常使用短快门时间捕获测试图像610以有助于避免饱和强度的出现。此外,为了确保完全捕获激光器路径,可以以中间几毫秒的随机延迟获得相同图案的多个图像并对其取平均,这也减少了图像中的噪声量。在具体示例中,针对每个测试图案600捕获8张测试图像610。通常,相机120的快门速度被选择为足够慢以一次捕获整个图案(例如,所有三个点602、604、606)。然而,在其它实施例中,可以增加相机快门速度以捕获所述点中的仅一个或两个。Test images 610 are typically captured using a short shutter time to help avoid saturation. Furthermore, to ensure the laser path is fully captured, multiple images of the same pattern can be acquired with random delays of a few milliseconds and averaged, which also reduces the amount of noise in the image. In this specific example, eight test images 610 are captured for each test pattern 600. Typically, the shutter speed of camera 120 is selected to be slow enough to capture the entire pattern (e.g., all three points 602, 604, 606) at once. However, in other embodiments, the camera shutter speed can be increased to capture only one or two of the points.

此外,在其中图案被重复绘制的实施例中,一些点可能比其它点更明亮。对采用随机延迟的相同图案的多个图像取平均有助于确保所有点在结束时大致共享相同的总体亮度,并且通常不受相机120的扫描速度和快门时间影响。Additionally, in embodiments where the pattern is repeatedly drawn, some points may be brighter than others. Averaging multiple images of the same pattern with random delays helps ensure that all points share approximately the same overall brightness at the end, and is generally unaffected by the scan speed and shutter time of camera 120.

使用在操作406中捕获的测试图像610,方法400前进至操作408,并且处理元件去除噪声并以其它方式准备测试图像610以用于分析。具体地,测试图像610被扭曲到投影仪110的虚拟图像平面,以使得图像可以更准确地与期望的投影内容进行比较。操作408通过使用在操作402中生成的查找表来完成,以使得处理元件310将测试图像610与测试图案数据600的栅格化表示进行比较,并且修改测试图像以表示来自投影仪的图像平面的视图的图像。Using the test image 610 captured in operation 406, method 400 proceeds to operation 408, and the processing element removes noise and otherwise prepares the test image 610 for analysis. Specifically, the test image 610 is warped to the virtual image plane of projector 110 so that the image can be more accurately compared to the desired projected content. Operation 408 is accomplished by using the lookup table generated in operation 402 to cause processing element 310 to compare the test image 610 with the rasterized representation of the test pattern data 600 and modify the test image to represent an image of the view from the projector's image plane.

在一个实施例中,通过表示该系列测试图像610,并且的成员使用在操作402中生成的密集2D扭曲查找表被扭曲到投影仪110的虚拟图像平面上以得到。这允许处理元件将测试图像610与测试图案600数据的栅格化表示进行比较。In one embodiment, the series of test images 610 is represented by , and the members of are warped onto the virtual image plane of projector 110 using the dense 2D warping lookup table generated in operation 402. This allows the processing element to compare the test images 610 to the rasterized representation of the test pattern 600 data.

在一些实施例中,测试图像610可以被裁剪以聚焦在期望的点上。例如,在一些实施例中,分析中心点202并且将测试图像610裁剪到所述中心点202周围的小区域。如下面可以认识到的是,中心点(或中心点组)可以是需要被分析以确定投影仪行为的仅那一个。例如,中心点是证明第一点和最后一点之间的成角度改变的位置。停止点或速度控制点的数目通常仅在中心点处改变。换言之,尽管需要第一点和最后一点来投影图案,但是仅需要分析中心点以确定随图案的改变而发生的成角度、距离和停止点(加速度和减速度)中的变化。应当指出的是,在其中多于三个点用于图案的实例中,所评估的中心点可以包括多个点,诸如落在图案中的第一投影点和图案中的最后投影点之间的所有那些点。In some embodiments, the test image 610 can be cropped to focus on a desired point. For example, in some embodiments, the center point 202 is analyzed and the test image 610 is cropped to a small area around the center point 202. As will be appreciated below, the center point (or group of center points) may be the only one that needs to be analyzed to determine projector behavior. For example, the center point is the location that demonstrates the change in angle between the first and last points. The number of stopping points or speed control points typically changes only at the center point. In other words, while the first and last points are required to project a pattern, only the center point needs to be analyzed to determine the changes in angle, distance, and stopping points (acceleration and deceleration) that occur as the pattern changes. It should be noted that in instances where more than three points are used for the pattern, the center point evaluated can include multiple points, such as all points that fall between the first and last projected points in the pattern.

图6C中示出了裁剪图像的示例。的裁剪图像612导致在对应于中心点602的图像中心处的单个白色像素。中心点602对于所有的而言将是相同的,其可以被表示为。也可以使用其它点,其中对模型输入进行对应的改变。An example of a cropped image is shown in FIG6C . A cropped image 612 of results in a single white pixel at the center of the image corresponding to center point 602. Center point 602 will be the same for all and can be denoted as . Other points can also be used, with corresponding changes to the model input.

在将图像扭曲到投影仪并可选地对图像裁剪之后,方法400前进至操作412,并且应用降噪和二值化。例如,可以使用能够稳健地分离和检测图像中的点的任何方法。作为具体示例,强度阈值化可以用于去除离群像素和强度。在一个实施例中,将强度阈值化应用于其中定义了亮度阈值的。通常,表面照明(以及因此所捕获图像610的强度)主要在增加的停止点的数目上变化。因此,与固定的低强度阈值方法相结合的自适应阈值化方法可以用于自动地分割所有图案。操作412产生用于测试图案600的所有n个停止点、所有角度以及针对每个测试图像610的所有距离的二值图像。应当指出的是,在许多实例中,具有三个或五个停止点的测试图像610可能一般看起来相同,因为相同的中心点被照亮,但是在具有更多停止点的图案中,所述中心点将更明亮。可以生成用于停止点,角度和距离的每个组合的新的二值图像。After warping the image to the projector and optionally cropping it, method 400 proceeds to operation 412 and applies noise reduction and binarization. For example, any method capable of robustly separating and detecting points in the image can be used. As a specific example, intensity thresholding can be used to remove outlier pixels and intensities. In one embodiment, intensity thresholding is applied where a brightness threshold is defined. Typically, surface illumination (and therefore the intensity of the captured image 610) varies primarily with increasing numbers of stop points. Therefore, an adaptive thresholding method combined with a fixed low intensity threshold method can be used to automatically segment all patterns. Operation 412 generates binary images for all n stop points of the test pattern 600, all angles, and all distances for each test image 610. It should be noted that in many instances, test images 610 with three or five stop points may generally appear identical because the same center point is illuminated, but in patterns with more stop points, the center point will be brighter. A new binary image can be generated for each combination of stop point, angle, and distance.

参考图4,一旦图像已在操作412中被处理,则方法400前进至操作414,并且比较(R)测试图像610中的每一个中的中心点602。用数学来表达,将针对所有个增加的停止点所产生的二值图像与相比较。4, once the images have been processed in operation 412, the method 400 proceeds to operation 414 and compares the center point 602 in each of the (R) test images 610. Mathematically expressed, the binary images produced for all increasing stopping points are compared to .

在具体实施例中,使用两个误差度量(命中误差和距离误差)将(针对噪声进行分析并可选地裁剪的)二值测试图像610中的每个与R进行比较。命中误差由等式(1)表示,并且描述了图案的期望点位置是否由投影仪110照亮。距离误差由等式(2)表示,其描述了所绘制像素在预定区域(例如,图像内的矩形区域)内有多远,并且可以通过远离矩形中心的像素数目来确定。在等式(2)中,dist是L2距离变换。In a specific embodiment, each of the binary test images 610 (analyzed for noise and optionally cropped) is compared to R using two error metrics: hit error and distance error. The hit error is represented by equation (1) and describes whether the desired point location of the pattern is illuminated by projector 110. The distance error is represented by equation (2), which describes how far the drawn pixel is within a predetermined area (e.g., a rectangular area within the image) and can be determined by the number of pixels away from the center of the rectangle. In equation (2), dist is the L2 distance transform.

应当指出的是,在一些实施例中,可以使用边缘点而非中心点来分析图案。在这些实施例中,模型和误差计算应当基于变化的空间位置来修改。It should be noted that in some embodiments, edge points rather than center points may be used to analyze the pattern. In these embodiments, the model and error calculations should be modified based on the changing spatial position.

使用在操作414中执行的计算,方法400前进至操作416。在操作416中,处理元件301使用下面的等式(3)来确定最佳模型参数。在一个实施例中,仅那些其中的用在计算中,因为当时,使用针对和的这一配置的停止点的当前数目不能够实现所期望的空间准确度。因此,对于、和的每个具体组合的总体误差项由等式(3)定义:Using the calculations performed in operation 414, method 400 proceeds to operation 416. In operation 416, processing element 301 determines the optimal model parameters using equation (3) below. In one embodiment, only those of are used in the calculation because, at that time, the desired spatial accuracy cannot be achieved using the current number of stopping points for this configuration of and. Therefore, the overall error term for each specific combination of, and is defined by equation (3):

其中应该被最小化以尽可能准确地绘制期望点。which should be minimized to plot the desired point as accurately as possible.

一旦处理元件使用针对所有和的各个停止点分析每个图像的图案600,就使用以下关系来定义描述激光投影仪110的显示行为的模型数据库。对于和的停止点的最佳数目被声明为,并且对应的误差被声明为。使用零停止点来初始化的模型数据库条目,并且相应地其初始误差值。使停止点的数目迭代地增加1,并且其误差值被评估且与进行比较。如果存在针对其的,则使停止点的最佳数目增加1。在一个示例中,t被设定为。然后分析以继续。Once the processing element analyzes the pattern 600 for each image using various stopping points for all and , a model database describing the display behavior of the laser projector 110 is defined using the following relationship. The optimal number of stopping points for and is declared as , and the corresponding error is declared as . The model database entry is initialized with zero stopping points and its initial error value accordingly. The number of stopping points is iteratively increased by 1, and its error value is evaluated and compared to . If exists for it, the optimal number of stopping points is increased by 1. In one example, t is set to . The analysis then continues.

在图8中示出了操作410至416,图8图示出被裁剪、比较的测试图像610以及所产生的点的最佳数目被选择。参考图8,进行针对三个点(n=3、=150和=0.4)的命中和距离误差计算的分析工作流。如图8中所示,将测试图像610从相机图像平面扭曲到投影仪的虚拟图像平面并裁剪到中心点周围的区域。然后,应用自适应阈值化,并且计算误差和。Operations 410 through 416 are illustrated in FIG8 , which illustrates the cropping and comparison of a test image 610 and the selection of the optimal number of generated points. Referring to FIG8 , the analysis workflow for hit and distance error calculation for three points ( n = 3, n = 150, and n = 0.4) is performed. As shown in FIG8 , the test image 610 is warped from the camera image plane to the projector's virtual image plane and cropped to a region around the center point. Adaptive thresholding is then applied, and the error sum is calculated.

应当指出的是,距离和命中误差二者都可能对输入数据中的噪声敏感。在这些实例中,可以应用两个附加的后处理步骤来减少误差。首先,对于在固定距离处的连续角度而言,仅当对应误差也减少时,才将模型限制为具有较少的停止点。否则,被设定为。其次,可以应用离群值去除程序来去除相同距离的连续角度之间的单个离群值。在一些实施例中,可选地,可以进行用以平滑模型和减少模型误差的方法。例如,如果连续角度的整个序列具有非单调变化,那么所有对应的被分配给该序列内的停止点的最大数目。图7图示出针对一种类型的激光投影仪110的的测量出的数据库条目的结果的可视化。如图7中所示,导出的模型参数取决于距连续点的长度(归一化距离)以及相对于所述连续点的角度。在该示例中,随着点之间的角度增加,需要更多的停止点以使内容更准确。It should be noted that both distance and hit error can be sensitive to noise in the input data. In these instances, two additional post-processing steps can be applied to reduce error. First, for consecutive angles at a fixed distance, the model is constrained to have fewer stopping points only if the corresponding error also decreases. Otherwise, it is set to . Second, an outlier removal procedure can be applied to remove single outliers between consecutive angles of the same distance. In some embodiments, methods for smoothing the model and reducing model error can optionally be performed. For example, if the entire sequence of consecutive angles has non-monotonic variation, then all corresponding stops are assigned to a maximum number of stops within the sequence. Figure 7 illustrates a visualization of the results of measurements of database entries for one type of laser projector 110. As shown in Figure 7, the derived model parameters depend on the length (normalized distance) from the consecutive points and the angle relative to the consecutive points. In this example, as the angle between the points increases, more stopping points are required to make the content more accurate.

一旦模型参数被确定,方法400前进至操作418,并且投影仪110针对选择的内容被优化。为此,将输入内容(即,要被投影的内容)输入到模型中。例如,计算机的存储器可以存储模型或模型数据库,并且使用下面概述的过程评估该模型以求解用于内容的最小化总路径长度和需要最小量的停止点的路径遍历的最佳成角度。Once the model parameters are determined, method 400 proceeds to operation 418, and projector 110 is optimized for the selected content. To this end, input content (i.e., the content to be projected) is entered into the model. For example, a computer's memory may store a model or a database of models, and the model is evaluated using the process outlined below to find the optimal angle for traversing the path for the content that minimizes the total path length and requires the least number of stops.

如上所述,由激光投影仪110投影内容的速度和空间精度通常取决于受检流计镜的物理移动影响的因素。这些因素的示例包括:迟钝、谐振、以及用以在期望位置处显示各个点的加速度和减速度。在不能直接地控制镜子(例如,通过现成的激光投影仪)的实例中,该优化控制了全局参数(诸如,总体扫描速度、停止点的数目、连续点之间的角度、连续点之间的距离和停止点的数目),以改善投影仪110的速度和空间精度。As described above, the speed and spatial accuracy of content projected by the laser projector 110 generally depend on factors affected by the physical movement of the galvanometer mirror. Examples of these factors include: sluggishness, resonance, and the acceleration and deceleration required to display each point at the desired location. In instances where the mirror cannot be directly controlled (e.g., with an off-the-shelf laser projector), the optimization controls global parameters (such as overall scanning speed, number of stops, angle between consecutive points, distance between consecutive points, and number of stops) to improve the speed and spatial accuracy of the projector 110.

所述优化生成点序列路径,其中总体扫描时间被最小化,但是内容仍将被准确地显示在期望的位置处。另外,时间序列(多帧内容)应当被投影,以使得时空点分布尽可能地均匀地分布,以均衡地分布并进一步抑制感知的闪烁。The optimization generates a point sequence path where the overall scan time is minimized, but the content will still be displayed accurately at the desired location. In addition, the time sequence (multi-frame content) should be projected so that the temporal and spatial point distribution is as uniform as possible to evenly distribute and further suppress perceived flicker.

此外,在许多实例中,用于随机输入点序列的全局优化的扫描路径是NP-完全问题,并且不能在短的时间段内容易地求解。因此,选择下面的优化来找到足够接近全局最佳的近似解以实现期望的表现。然而,在提供更多时间的实例中,可以完全地求解优化路径。Furthermore, in many instances, the scan path for global optimization of a sequence of random input points is an NP-complete problem and cannot be easily solved in a short timeframe. Therefore, the following optimization is chosen to find an approximate solution close enough to the global optimum to achieve the desired performance. However, in instances where more time is available, the optimization path can be fully solved.

可以针对静止帧内容和两个或多个移动或顺序内容帧二者来分析投影仪110。静止帧优化使距离和角度的误差成本最小化,而顺序帧包括附加的时间成本。Projector 110 can be analyzed for both still frame content and two or more moving or sequential content frames. Still frame optimization minimizes error costs for distance and angle, while sequential frames include an additional time cost.

静止帧优化用于最小化投影每个点的投影仪110的总路径长度,同时通过考虑最佳成角度来减少用于投影点的时间。例如,为了优化含有个点的单个静止帧的扫描路径,处理元件301利用下面的等式(4)来最小化误差成本。Still frame optimization is used to minimize the total path length of the projector 110 that projects each point while reducing the time it takes to project the point by considering the optimal angulation. For example, to optimize the scan path of a single still frame containing points, the processing element 301 minimizes the error cost using the following equation (4).

·距离成本定义为:Distance cost is defined as:

其中,in,

.

为了使距离成本与虚拟图像平面的分辨率无关,将对角线上的最大可能距离归一化为1.0。To make the distance cost independent of the resolution of the virtual image plane, the maximum possible distance on the diagonal is normalized to 1.0.

·角度成本定义为:The angle cost is defined as:

.

在等式(6)中,是由路径形成的点处的角度,并且是对存储停止点的所需数目的模型数据库中的最近条目的查找。总成本在等式(7)中由两项的加权和给出:In equation (6), is the angle at the point formed by the path, and is the lookup of the nearest entry in the model database storing the required number of stopping points. The total cost is given by the weighted sum of two terms in equation (7):

.

如上所述地估计对于和的最佳值。使用k-opt方法最小化此误差。特别地,将2-opt应用于输入随机化的路径,并且只要有路径改善就启动。为了进一步改善解,之后可以应用3-opt。因为k-opt优化取决于路径的起始配置,所以可选地可以使用不同的起始配置启动所述过程几次并选择最好的解。也可以使用其它的解算器,诸如粒子群优化、Lin-Kernighan-Helsgaun启发式、最小生成树启发式、模拟退火、禁忌搜索或Christofides启发式。As described above, the optimal values for and are estimated. This error is minimized using the k-opt method. In particular, 2-opt is applied to the path with randomized inputs and is started as soon as there is path improvement. In order to further improve the solution, 3-opt can be applied afterwards. Because the k-opt optimization depends on the starting configuration of the path, different starting configurations can be used to start the process several times and select the best solution. Other solvers can also be used, such as particle swarm optimization, Lin-Kernighan-Helsgaun heuristic, minimum spanning tree heuristic, simulated annealing, tabu search or Christofides heuristic.

在其中投影内容包括投影的两帧或多帧内容的实例中,所述优化考虑跨帧空间分布。例如,如果内容是帧的动画点序列,则优化附加地均衡动画的连续帧中的点的时空分布。这有助于确保在近似相等的时间偏移内绘制接近的空间定位点,以确保整帧上的均等光分布,以减少局部变化的闪烁的感知。例如,不能够被控制的任何闪烁(诸如,由于内在物理特性)将被均等地跨每个帧并跨多帧分布以便不那么明显。In instances where the projected content includes two or more frames of projected content, the optimization considers spatial distribution across the frames. For example, if the content is a sequence of animated points in frames, the optimization additionally balances the spatiotemporal distribution of the points in consecutive frames of the animation. This helps ensure that closely located spatial points are drawn at approximately equal time offsets, ensuring even light distribution across the entire frame to reduce the perception of locally varying flicker. For example, any flicker that cannot be controlled (e.g., due to inherent physical properties) will be evenly distributed across each frame and across multiple frames to be less noticeable.

特别地,扩展静止帧优化以考虑时空一致性。用最近邻(NN)方法将在位置处的帧的解初始化为先前的解。在一个实施例中,所述NN方法使用应用flann方法的kd树,并且对于中的每个点,确定中的NN的顺序位置,并且通过中的点的数目归一化该位置。应当指出的是,每帧中的点的数目可以是任意的。取决于速度约束,可以使用其它类型的最近邻搜索方法。使用相对顺序位置,点被映射到针对的对应绝对顺序位置。在找到NN之后,对这些进行排序,以使得具有那些点的路径最接近先前解中的最佳路径的开始。使用该方法,时空误差成本由下面的等式(8)定义。In particular, the still frame optimization is extended to take into account spatiotemporal consistency. The solution for the frame at position is initialized to the previous solution using a nearest neighbor (NN) method. In one embodiment, the NN method uses a kd-tree with the flann method applied, and for each point in , the ordinal position of the NN in is determined, and the position is normalized by the number of points in . It should be noted that the number of points in each frame can be arbitrary. Depending on the speed constraints, other types of nearest neighbor search methods can be used. Using relative ordinal positions, points are mapped to corresponding absolute ordinal positions for . After finding the NN, these are sorted so that the path with those points is closest to the start of the best path in the previous solution. Using this method, the spatiotemporal error cost is defined by the following equation (8).

用于时间优化的总体误差项然后被定义为等式(9)的扩展:The overall error term for time optimization is then defined as an extension of Equation (9):

在一个实施例中,时间加权因子被设定为10,而和被最佳设定为100和1。然而,可以使用其它加权因子,并且可以基于被优化的具体投影仪而变化。替换地,相机可以用于生成加权估计。注意,在等式4、6和8中,对于索引超出边界的情况,其以循环方式映射回到索引空间。In one embodiment, the temporal weighting factor is set to 10, while the sums are optimally set to 100 and 1. However, other weighting factors can be used and may vary based on the specific projector being optimized. Alternatively, the camera can be used to generate the weighted estimates. Note that in equations 4, 6, and 8, for out-of-bounds indices, they are mapped back to the index space in a circular fashion.

图9是优化的示意性表示。参考图9,在该示例中,(a)图示出通过使用导出的模型参数的距离和成角度来优化第一帧序列的随机路径遍历(b)。在下一帧中,所有点被映射到优化的先前帧的最近点,并且生成初始路径。该路径用作使用附加时间误差成本来优化帧的起始点(c)。对序列的下一个和每个连续帧重复这一相同过程(d)以获得最小化扫描时间和闪烁的空间时间路径(e)。Figure 9 is a schematic representation of optimization. Referring to Figure 9, in this example, (a) illustrates optimizing a random path traversal for the first frame sequence using the distance and angulation derived from the model parameters (b). In the next frame, all points are mapped to the nearest point from the optimized previous frame, generating an initial path. This path serves as the starting point for optimizing the frame using an additional temporal error cost (c). This same process is repeated for the next and each successive frame in the sequence (d) to obtain a spatiotemporal path that minimizes scan time and flicker (e).

图10A图示出在优化之前由投影仪110投影的内容的帧。如图10A中所示,当在无停止点的情况下以随机顺序显示内容时,针对所述内容的空间位置(例如,星形设计的线和顶点)未被精确命中,并且点被渲染为笔画。然而,使用优化方法400,投影仪110被优化并且通过增加多个停止点和最佳绘制顺序来按照期望渲染内容。简而言之,通过对内容的点云应用全局优化以及考虑时间效应,本公开的方法可以显著地增强渲染点的空间对齐、渲染的美学(例如,当需要时,点相对于短划),以及降低投影仪110的总体扫描速度,从而减少闪烁和其它伪影。FIG10A illustrates a frame of content projected by projector 110 before optimization. As shown in FIG10A , when content is displayed in a random order without stopping points, the spatial locations for the content (e.g., the lines and vertices of a star design) are not precisely hit, and the points are rendered as strokes. However, using optimization method 400, projector 110 is optimized and renders the content as desired by adding multiple stopping points and an optimal drawing order. In short, by applying global optimization to the point cloud of the content and taking into account temporal effects, the method of the present disclosure can significantly enhance the spatial alignment of rendered points, the aesthetics of the rendering (e.g., points versus dashes when desired), and reduce the overall scanning speed of projector 110, thereby reducing flicker and other artifacts.

以上说明书、示例和数据提供了如权利要求中所限定的本发明的示例性实施例的结构和使用的完整描述。虽然已在一定程度的特殊性的情况下或参考一个或多个单独实施例在上面描述了所要求保护的发明的各种实施例,但本领域技术人员可以对所公开的实施例进行众多更改而不脱离所要求保护的发明的精神和范围。因此设想了其它实施例。意图为在上述描述中包含的并在附图中示出的所有内容应当被解释为仅仅是特定实施例的例证而不是限制。可以对细节或结构进行改变而不脱离如以下权利要求中所限定的本发明的基本元素。The above specification, examples, and data provide a complete description of the structure and use of exemplary embodiments of the invention as defined in the claims. Although various embodiments of the claimed invention have been described above with a certain degree of particularity or with reference to one or more individual embodiments, those skilled in the art may make numerous modifications to the disclosed embodiments without departing from the spirit and scope of the claimed invention. Other embodiments are therefore contemplated. It is intended that all matter contained in the foregoing description and shown in the accompanying drawings shall be interpreted as merely illustrative of particular embodiments and not as limiting. Changes may be made in detail or structure without departing from the essential elements of the invention as defined in the following claims.

Claims (19)

1.一种用于优化用于显示内容的投影仪的方法,其包含:1. A method for optimizing a projector for displaying content, comprising: 通过处理元件接收与由投影仪在投影表面上投影的两个或多个测试图案相对应的多个测试图像,其中所述测试图案中的每一个包含至少两个点;The processing element receives multiple test images corresponding to two or more test patterns projected by a projector on a projection surface, each of which contains at least two points; 通过处理元件比较所述多个测试图像以评估与两点之间的距离相关的一个或多个投影仪特性;The processing element compares the multiple test images to evaluate one or more projector characteristics related to the distance between two points; 通过处理元件生成表示所述一个或多个投影仪特性的投影仪模型;以及The processing element generates a projector model representing the characteristics of the one or more projectors; and 利用所述模型来确定与所述投影仪在所述投影表面上投影的内容的像素相对应的光的投影路径。The model is used to determine the projection path of light corresponding to the pixels of the content projected by the projector onto the projection surface. 2.根据权利要求1所述的方法,其中所述测试图案中的每一个进一步包含至少三个点。2. The method of claim 1, wherein each of the test patterns further comprises at least three points. 3.根据权利要求2所述的方法,其中通过处理元件比较所述多个测试图像包含比较所述测试图像中的每一个中的测试图案内的中心点。3. The method of claim 2, wherein comparing the plurality of test images by the processing element includes comparing the center point within the test pattern in each of the test images. 4.根据权利要求3所述的方法,其中所述中心点包含在第一投影点和最后投影点之间顺序投影的多个点。4. The method of claim 3, wherein the center point comprises a plurality of points sequentially projected between the first projection point and the last projection point. 5.根据权利要求3所述的方法,其中通过处理元件比较所述多个测试图像包含:5. The method of claim 3, wherein comparing the plurality of test images via a processing element comprises: 确定所述中心点是否由所述投影仪照亮;以及Determine whether the center point is illuminated by the projector; and 确定所述测试图像中的所述中心点相对于所述测试图案中的所述中心点的期望位置的距离。Determine the distance of the center point in the test image relative to the desired position of the center point in the test pattern. 6.根据权利要求1所述的方法,其中所述处理元件进一步评估与所述测试图案中的连续点之间的角度相关的投影仪特性。6. The method of claim 1, wherein the processing element further evaluates projector characteristics related to the angle between consecutive points in the test pattern. 7.根据权利要求1所述的方法,其中所述处理元件进一步评估与由所述投影仪在所述测试图案中的连续点之间的许多停止点相关的所述一个或多个投影仪特性。7. The method of claim 1, wherein the processing element further evaluates one or more projector characteristics related to a plurality of stop points between consecutive points in the test pattern by the projector. 8.根据权利要求1所述的方法,进一步包含由所述投影仪投影所述内容。8. The method of claim 1, further comprising projecting the content by the projector. 9.根据权利要求1所述的方法,其中所述投影仪是激光扫描投影仪。9. The method according to claim 1, wherein the projector is a laser scanning projector. 10.一种用于生成投影仪的投影仪模型以优化内容的投影路径的方法,所述方法包含:10. A method for generating a projector model to optimize the projection path of content, the method comprising: 通过相机捕获由所述投影仪投影的测试图案的多个图案图像;Multiple pattern images of the test pattern projected by the projector are captured by the camera; 分析所述图案图像以确定用于在所述图案图像中的每一个中捕获的每个测试图案的距离特性和角度特性;Analyze the pattern images to determine the distance and angle characteristics of each test pattern captured in each of the pattern images; 基于每个测试图案的所述距离特性和角度特性创建表示所述投影仪的模型数据库;以及A model database representing the projector is created based on the distance and angle characteristics of each test pattern; and 利用所述模型数据库来优化与所述投影仪发射到投影表面上的内容相对应的光的投影路径。The model database is used to optimize the projection path of light corresponding to the content emitted by the projector onto the projection surface. 11.根据权利要求10所述的方法,进一步包含基于至少一个点是否在期望位置处被照亮而将每个图案图像对照输入到所述投影仪的所述测试图案进行比较。11. The method of claim 10, further comprising comparing each pattern image input to the test pattern of the projector based on whether at least one point is illuminated at a desired location. 12.根据权利要求11所述的方法,进一步包含对照输入到所述投影仪的所述测试图案分析每个图案图像,以确定所述图案图像中的点与所述测试图案中的点之间的距离。12. The method of claim 11, further comprising analyzing each pattern image against the test pattern input to the projector to determine the distance between points in the pattern image and points in the test pattern. 13.根据权利要求10所述的方法,进一步包含选择在所述图案图像中表示的所述测试图案的中心点周围的区域。13. The method of claim 10, further comprising selecting a region around the center point of the test pattern represented in the pattern image. 14.根据权利要求10所述的方法,其中每个测试图案包含第一点、第二点和第三点,其中所述第一点被第一个投影,所述第二点被第二个投影,以及所述第三点被第三个投影。14. The method of claim 10, wherein each test pattern comprises a first point, a second point, and a third point, wherein the first point is projected by a first projection, the second point is projected by a second projection, and the third point is projected by a third projection. 15.根据权利要求10所述的方法,进一步包含几何校准所述相机和所述投影仪以确定所述相机的图像平面和所述投影仪的图像平面之间的密集对应性。15. The method of claim 10, further comprising geometrically calibrating the camera and the projector to determine a dense correspondence between the image plane of the camera and the image plane of the projector. 16.根据权利要求10所述的方法,其中所述投影仪是激光扫描投影仪。16. The method of claim 10, wherein the projector is a laser scanning projector. 17.一种用于优化用于投影内容的投影路径的系统,其包含:17. A system for optimizing a projection path for projected content, comprising: 用于投影所述内容的激光投影仪;以及A laser projector for projecting the content; and 电子地连接到所述激光投影仪的计算机,所述计算机包含存储器,所述存储器包括与所述投影仪的显示行为相对应的投影仪模型数据库,其中所述计算机被配置成分析所述投影仪模型以:A computer electrically connected to the laser projector, the computer including a memory comprising a projector model database corresponding to the display behavior of the projector, wherein the computer is configured to analyze the projector model to: 确定用于所述内容的在投影表面上的光的投影总路径的最小长度;以及Determine the minimum length of the total projection path of light on the projection surface for the content; and 确定需要最小量的停止点的遍历投影路径的最佳角度。Determine the optimal angle for the traversal projection path that requires the minimum number of stopping points. 18.根据权利要求17所述的系统,其中所述内容包含第一帧和第二帧,并且所述计算机被进一步配置成分析所述投影仪模型以均衡所述第一帧和所述第二帧中的内容的多个点的时空分布。18. The system of claim 17, wherein the content comprises a first frame and a second frame, and the computer is further configured to analyze the projector model to equalize the spatiotemporal distribution of multiple points of the content in the first frame and the second frame. 19.根据权利要求18所述的系统,其中所述内容包含第三帧和第四帧,并且所述计算机被进一步配置成分析所述投影仪模型以均衡所述第一帧、所述第二帧、所述第三帧和所述第四帧中的内容的多个点的时空分布。19. The system of claim 18, wherein the content comprises a third frame and a fourth frame, and the computer is further configured to analyze the projector model to equalize the spatiotemporal distribution of multiple points of the content in the first frame, the second frame, the third frame, and the fourth frame.
HK17112077.2A 2016-01-28 2017-11-20 Projector optimization method and system HK1238457B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US15/008735 2016-01-28

Publications (2)

Publication Number Publication Date
HK1238457A1 HK1238457A1 (en) 2018-04-27
HK1238457B true HK1238457B (en) 2021-01-22

Family

ID=

Similar Documents

Publication Publication Date Title
CN107018392B (en) Projector optimization method and system
US11115633B2 (en) Method and system for projector calibration
US10366531B2 (en) Robot motion planning for photogrammetry
EP2824923B1 (en) Apparatus, system and method for projecting images onto predefined portions of objects
US10701324B2 (en) Gestural control of visual projectors
US9984508B2 (en) Light-based radar system for augmented reality
JP7033606B2 (en) Display system and method for delivering multi-view content
US9049369B2 (en) Apparatus, system and method for projecting images onto predefined portions of objects
EP2869266A1 (en) Method and apparatus for generating depth map of a scene
JP2009524849A (en) System, method, and medium for capturing scene images and depth shapes to generate compensated images
KR20230079401A (en) dark flash normal camera
US20160286186A1 (en) Projection apparatus
TW200937097A (en) Lighting device
US20210374982A1 (en) Systems and Methods for Illuminating Physical Space with Shadows of Virtual Objects
US9841847B2 (en) Projection device and projection method, for projecting a first image based on a position of a moving object and a second image without depending on the position
WO2020123114A1 (en) Robot motion planning for photogrammetry
CN114967170B (en) Display processing method and device thereof based on flexible naked-eye three-dimensional display device
HK1238457B (en) Projector optimization method and system
HK1238457A1 (en) Projector optimization method and system
CN107610240A (en) Head portrait replacement method, device and mobile terminal
EP2646769B1 (en) System and method for creating a three-dimensional image file
Hilario et al. Occlusion detection for front-projected interactive displays
JP2021105639A (en) Control method for projection system, projection system, and control program
HK1224467B (en) Method and system for projector calibration