WO2021130860A1 - 情報処理装置、制御方法及び記憶媒体 - Google Patents

情報処理装置、制御方法及び記憶媒体 Download PDF

Info

Publication number
WO2021130860A1
WO2021130860A1 PCT/JP2019/050628 JP2019050628W WO2021130860A1 WO 2021130860 A1 WO2021130860 A1 WO 2021130860A1 JP 2019050628 W JP2019050628 W JP 2019050628W WO 2021130860 A1 WO2021130860 A1 WO 2021130860A1
Authority
WO
WIPO (PCT)
Prior art keywords
structural
structural feature
information
coordinate system
feature points
Prior art date
Application number
PCT/JP2019/050628
Other languages
English (en)
French (fr)
Inventor
康敬 馬場崎
茜 有賀
菊池 克
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Priority to JP2021566603A priority Critical patent/JP7494862B2/ja
Priority to US17/783,450 priority patent/US12072496B2/en
Priority to PCT/JP2019/050628 priority patent/WO2021130860A1/ja
Publication of WO2021130860A1 publication Critical patent/WO2021130860A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B27/0172Head mounted characterised by optical features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/0138Head-up displays characterised by optical features comprising image capture systems, e.g. camera
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/014Head-up displays characterised by optical features comprising information/image processing systems
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30221Sports video; Sports image

Definitions

  • the present invention relates to a technical field of an information processing device, a control method, and a storage medium that perform processing related to spatial grasp in augmented reality (AR).
  • AR augmented reality
  • Patent Document 1 stores feature data representing the features of the appearance of an object, and an environment map representing the position of an object existing in real space based on an image obtained from an image pickup device and the above feature data.
  • An image processing device is disclosed that constructs an image processing device and displays a description of a series of procedures of work to be performed in a real space by referring to an environment map.
  • An object of the present invention is an information processing device, a control method, and a storage capable of preferably realizing improvement of collation accuracy and reduction of calculation amount necessary for grasping the correspondence of spaces in augmented reality in view of the above-mentioned problems.
  • the main issue is to provide a medium.
  • One aspect of the information processing device is a structural feature point which is a structural feature point of the target structure from an image captured by an imaging unit of a display device that displays an image superimposed on a landscape.
  • the acquisition unit that acquires a plurality of combinations of the classification information and the position information of the structural feature points of the above, and the structural data including the information regarding the position and classification of each structural feature point of the target structure are collated with the plurality of combinations.
  • structural matching is performed to generate coordinate conversion information related to coordinate conversion between the first coordinate system, which is the coordinate system used by the display device, and the second coordinate system, which is the coordinate system used in the structural data. It has a part and.
  • One aspect of the control method is a control method executed by an information processing device, in which a structural feature point of a target structure is obtained from an image captured by an image pickup unit of a display device that displays an image superimposed on a landscape.
  • a plurality of combinations of classification information of a certain structural feature point and position information of the structural feature point are acquired, and structural data including information on the position and classification of each structural feature point of the target structure and the plurality of combinations are obtained.
  • coordinate conversion information related to coordinate conversion between the first coordinate system, which is the coordinate system used by the display device as a reference, and the second coordinate system, which is the coordinate system used in the structural data is generated.
  • One aspect of the storage medium is the classification information of structural feature points, which are structural feature points of the target structure, and the structural feature points, from the captured image captured by the image pickup unit of the display device that displays the image superimposed on the landscape.
  • the display device can perform the display device.
  • FIG. 1 It is a schematic block diagram of the display device which concerns on 1st Embodiment.
  • An example of the data structure of the structural data is shown.
  • a schematic configuration of a learning device that generates parameters of a discriminator stored in a parameter storage unit is shown.
  • A) An example of a captured image in which a tennis court is imaged as a target structure is shown.
  • (B) An example of a captured image in which a swimming pool is captured as a target structure is shown. It is the figure which clarified the structural feature point information on the captured image.
  • the configuration of the display system in the second embodiment is shown.
  • the schematic configuration of the information processing apparatus in the third embodiment is shown.
  • Schematic configuration diagram 1 is a schematic configuration diagram of the display device 1 according to the first embodiment.
  • the display device 1 is a device that can be worn by the user, for example, a see-through type that is configured to be a spectacle type, and is configured to be wearable on the head of the user. Then, the display device 1 realizes augmented reality (AR) by superimposing visual information on an existing landscape in watching sports or watching a play (including a concert).
  • AR augmented reality
  • the above visual information is a virtual object represented by two dimensions or three dimensions, and is also referred to as a "virtual object” hereafter.
  • the display device 1 may display the virtual object only to one eye of the user, or may display the virtual object to both eyes.
  • the display device 1 allows the user to watch sports or play a play.
  • a virtual object that serves as additional information that assists in performing the above is superimposed and displayed on the target structure or its surroundings.
  • the target structure is, for example, a target field for watching sports (for example, a tennis court, a swimming pool, a stadium, etc.), or a target field for watching a play (for example, a theater, a concert hall, a multipurpose hall, various stages, etc.). Applies to.
  • the target structure has a plurality of structural (that is, characteristic in shape) feature points (also referred to as “structural feature points”).
  • the virtual object is superimposed on the score board displayed above the tennis court, and in the case of swimming, it is superimposed and displayed on the stage in the world record line, which is superimposed and displayed in real time on the swimming pool. Including virtual performers.
  • the display device 1 includes a light source unit 10, an optical element 11, a communication unit 12, an input unit 13, a storage unit 14, a camera 15, a position / orientation detection sensor 16, and a control unit 17.
  • the light source unit 10 has a light source such as a laser light source or an LCD (Liquid Crystal Display) light source, and emits light based on a drive signal supplied from the control unit 17.
  • the optical element 11 has a predetermined transmittance, transmits at least a part of external light and is incident on the user's eyeball, and reflects at least a part of the light from the light source unit 10 toward the user's eyeball. To do. As a result, the virtual image corresponding to the virtual object formed by the display device 1 overlaps with the landscape and is visually recognized by the user.
  • the optical element 11 may be a half mirror in which the transmittance and the reflectance are substantially equal to each other, or a mirror (so-called beam splitter) in which the transmittance and the reflectance are not equal to each other.
  • the communication unit 12 exchanges data with an external device based on the control of the control unit 17. For example, when the user uses the display device 1 for watching sports or watching a play, the communication unit 12 should display the display device 1 from a server device managed by an entertainer based on the control of the control unit 17. Receive information about virtual objects.
  • the input unit 13 generates an input signal based on the user's operation and transmits it to the control unit 17.
  • the input unit 13 is, for example, a button, a cross key, a voice input device, or the like for the user to give an instruction to the display device 1.
  • the camera 15 generates an image of the front of the display device 1 based on the control of the control unit 17, and supplies the generated image (also referred to as “captured image Im”) to the control unit 17.
  • the position / orientation detection sensor 16 is a sensor (sensor group) that detects the position and orientation (orientation) of the display device 1.
  • a positioning sensor such as a GPS (Global Positioning Satellite) receiver, a gyro sensor, an acceleration sensor, and the like. It includes an attitude detection sensor that detects a relative change in attitude of the display device 1 such as an IMU (Inertial Measurement Unit).
  • the position / orientation detection sensor 16 supplies the generated detection signal regarding the position and orientation of the display device 1 to the control unit 17.
  • the control unit 17 detects the amount of change in the position and posture from the time when the display device 1 is started or the like, based on the detection signal supplied from the position / posture detection sensor 16.
  • the control unit 17 specifies the position of the display device 1 based on, for example, a signal received from a beacon terminal or a wireless LAN device provided at the venue. May be good. In another example, the control unit 17 may specify the position of the display device 1 based on a known position estimation technique using an AR marker. In these cases, the position / orientation detection sensor 16 does not have to include the positioning sensor.
  • the control unit 17 has, for example, a processor such as a CPU (Central Processing Unit) and a GPU (Graphics Processing Unit), a volatile memory that functions as a working memory of the processor, and performs overall control of the display device 1. ..
  • a processor such as a CPU (Central Processing Unit) and a GPU (Graphics Processing Unit)
  • a volatile memory that functions as a working memory of the processor, and performs overall control of the display device 1. ..
  • control unit 17 performs calibration for associating the real world space with the space recognized by the display device 1 based on the structural feature points of the target structure recognized from the captured image Im at the display timing of the virtual object. Perform processing.
  • the control unit 17 uses the coordinate system in the three-dimensional space (also referred to as “device coordinate system”) based on the display device 1 as the coordinate system in the three-dimensional space based on the target structure (also referred to as “device coordinate system”). It is also called a "structural coordinate system”) to generate coordinate conversion information.
  • device coordinate system also referred to as “device coordinate system”
  • control unit 17 generates a drive signal for driving the light source unit 10 based on the above-mentioned coordinate conversion information or the like, and supplies the drive signal to the light source unit 10 to display a virtual object on the light source unit 10.
  • Light also referred to as "display light”
  • the control unit 17 makes the user visually recognize the virtual object.
  • the storage unit 14 is a non-volatile memory in which the control unit 17 stores various information necessary for controlling the display device 1.
  • the storage unit 14 may include a removable storage medium such as a flash memory. Further, the storage unit 14 stores a program executed by the control unit 17.
  • the storage unit 14 has a sensor data storage unit 20, a parameter storage unit 21, and a structural data storage unit 22.
  • the sensor data storage unit 20 determines the position and orientation of the captured image Im generated by the camera 15 and the position and orientation of the display device 1 from the time when the device coordinate system is set (for example, when the display device 1 is activated) at the time of generating the captured image Im. It is stored in association with the amount of change (also referred to as "position / posture change amount Ap"). In this case, for example, the control unit 17 constantly calculates the amount of change in the current position and posture based on the position and posture at the time of setting the device coordinate system based on the detection signal of the position / posture detection sensor 16.
  • the control unit 17 associates the position / orientation change amount Ap calculated at the time of generating the captured image Im with the captured image Im and makes a sensor. It is stored in the data storage unit 20.
  • the control unit 17 stores, for example, a combination of the latest captured image Im and the position / orientation change amount Ap for a predetermined time or a predetermined number in the sensor data storage unit 20.
  • the information stored in the sensor data storage unit 20 is used in the calibration process.
  • the parameter storage unit 21 stores the parameters of the classifier used when extracting the position information of the structural feature points of the target structure and the classification information of the structural feature points from the captured image Im in the calibration process.
  • the above-mentioned classifier is, for example, a learning model trained to output a reliability map in the image of the structural feature points for each classification of the structural feature points to be extracted when the captured image Im is input. is there.
  • the reliability map is a map on the image showing the reliability of each coordinate value of the structural feature point.
  • the "coordinate value" may be a value indicating a position in the image in pixel units, or may be a value indicating a position in the image in sub-pixel units.
  • the learning model used for learning the classifier may be a learning model based on a neural network, another type of learning model such as a support vector machine, or a combination thereof.
  • the parameter storage unit 21 has a layer structure, a neuron structure of each layer, a number of filters and a filter size in each layer, a weight of each element of each filter, and the like. Store various parameters.
  • the classifier is not limited to the one that outputs the reliability map of the structural feature points, and may be a regression type classifier that outputs the information indicating the coordinate values in the image of the structural feature points.
  • the structural data storage unit 22 stores structural data related to the structure of the target structure.
  • FIG. 2 shows an example of a data structure of structural data.
  • the structural data has size information and registered feature point information.
  • the size information is information on the size of the target structure, for example, in the case of a tennis court, it is information on the vertical and horizontal court widths, and in the case of a theater, it is information on the width (and height) of the stage. Is.
  • the size information is not limited to the information regarding the overall size of the target structure, and may be any information indicating the distance between the structural feature points detected in the calibration process, as will be described later.
  • the registered feature point information is information about the structural feature points of the target structure, and includes individual information for each structural feature point measured in advance.
  • the registered feature point information is information corresponding to each of these N structural feature points (first structural feature).
  • Point information to Nth structure feature point information) is included.
  • the registered feature point information includes at least a label indicating the classification of the target structural feature point and the registered position information indicating the position of the target structural feature point in the structural coordinate system.
  • the registered position information is coordinate information represented by the structural coordinate system, and is set so that, for example, the position of any structural feature point is the origin.
  • the registered feature point information is used in the calibration process for collation with the structural feature point information specified from the captured image Im.
  • the structural data may include information that specifies the structural feature point as the origin in the structural coordinate system and information that specifies each direction of each of the three axes of the structural coordinate system.
  • the configuration of the display device 1 shown in FIG. 1 is an example, and various changes may be made to this configuration.
  • the display device 1 may further include a speaker that outputs sound based on the control of the control unit 17.
  • the display device 1 may include a line-of-sight detection camera for changing the display presence / absence of the virtual object and the display position of the virtual object according to the position of the line-of-sight of the user.
  • the storage unit 14 does not have to have the sensor data storage unit 20.
  • the control unit 17 performs the calibration process using the captured image Im immediately acquired from the camera 15 and the position / orientation change amount Ap calculated based on the detection signal of the position / attitude detection sensor 16.
  • the display device 1 does not have to detect the position of the display device 1 by the position / orientation detection sensor 16 or the like. Generally, while watching sports or watching a play, the user rarely moves, and the influence of the change in the position of the display device 1 on the display of the virtual object is smaller than the change in the posture of the display device 1. ..
  • the position / orientation detection sensor 16 is composed of a sensor that detects the attitude of the display device 1, and the control unit 17 determines only the amount of change in the attitude of the display device 1 from the time when the device coordinate system is set. It may be calculated as the posture change amount Ap.
  • FIG. 3 is a block diagram showing a functional configuration of the control unit 17.
  • the control unit 17 functionally includes a virtual object acquisition unit 40, a feature point information output unit 41, a feature point output unit 42, a structural collation unit 43, a reflection unit 44, and the like. It has a light source control unit 45.
  • the virtual object acquisition unit 40 acquires information (also referred to as "designated display information Id") that specifies a virtual object that is to be superimposed and displayed on the landscape as a virtual object and its display position.
  • This virtual object may be information for drawing a two-dimensional object (two-dimensional drawing information) or information for drawing a three-dimensional object (three-dimensional drawing information).
  • the virtual object acquisition unit 40 specifies delivery information to be push-type or pull-type distribution from the server device at a predetermined timing.
  • the designated display information Id includes information for designating the display position (for example, information indicating coordinate values in the structural coordinate system) in addition to the virtual object.
  • information indicating a combination of the virtual object, the display position, and the display condition may be stored in advance in the storage unit 14.
  • the virtual object acquisition unit 40 determines that the stored display condition is satisfied, the virtual object acquisition unit 40 acquires the combination of the virtual object and the display position corresponding to the satisfied display condition as the designated display information Id.
  • the feature point information output unit 41 acquires the captured image Im from the sensor data storage unit 20, configures a classifier based on the parameters extracted from the parameter storage unit 21, and inputs the captured image Im into the classifier. , Generates structural feature point information "IF". In this case, the feature point information output unit 41 preferably acquires the latest captured image Im from the sensor data storage unit 20.
  • the discriminator is learned to output information regarding the position of the structural feature point in the image as the structural feature point information IF for each classification of the structural feature point when the captured image Im is input. It is a model.
  • the feature point output unit 42 determines the position of each structural feature point in the captured image Im (also referred to as “structural feature point position Pd”) based on the structural feature point information IF output by the feature point information output unit 41.
  • a plurality of combinations with a label (also referred to as “label Lb”) indicating the classification of each structural feature point are output to the structural collation unit 43.
  • the feature point output unit 42 supplies the structural collation unit 43 with a combination of at least two sets of structural feature point positions Pd and label Lb that are not aligned on a straight line.
  • the plurality of combinations of the structural feature point position Pd and the label Lb are an example of "a plurality of combinations of the structural feature point classification information and the position information of the structural feature point" in the present disclosure.
  • the feature point output unit 42 has the maximum reliability for each classification of the structural feature points.
  • the coordinate value is defined as the structural feature point position Pd.
  • the feature point output unit 42 associates the label Lb indicating the classification of the target with the structural feature point position Pd and outputs the label Lb to the structure collation unit 43.
  • the maximum value of the reliability for a certain classification is less than a predetermined threshold value, the feature point output unit 42 outputs the label Lb and the structural feature point position Pd corresponding to the classification to the structural collation unit 43. It doesn't have to be.
  • the feature point output unit 42 defines the coordinate values as the structural feature point position Pd and targets the target. It is output to the structural collation unit 43 in association with the label Lb indicating the classification.
  • the coordinate value included in the structural feature point information IF is a value normalized so as not to depend on the image size
  • the feature point output unit 42 is included in the structural feature point information IF.
  • the structural feature point position Pd is calculated by multiplying the coordinate value by the image size of the captured image Im.
  • the structural collation unit 43 collates the structural data extracted from the structural data storage unit 22 with a plurality of combinations of the structural feature point position Pd and the label Lb supplied from the feature point output unit 42, and thereby from the device coordinate system. Generate the coordinate conversion information "Ic" required for conversion to the structural coordinate system. In this case, the structural collation unit 43 sets the position Pd of each structural feature point in the device coordinate system based on the position / orientation change amount Ap at the time of generation of the captured image Im from which the feature has been extracted and the size information of the target structure. Identify the position.
  • the structural collation unit 43 performs coordinate conversion by collating the detection position of the structural feature point in the device coordinate system with the position of the structural feature point indicated by the registration position information of the structural data for each label.
  • Generate information Ic is, for example, a combination of a rotation matrix and a translation vector generally used for performing coordinate transformation between three-dimensional spaces.
  • the coordinate conversion information Ic is not limited to the information used when converting the structural coordinate system to the device coordinate system, and may be the information used when converting the device coordinate system to the structural coordinate system. Good.
  • the rotation matrix and translation vector for converting from the structural coordinate system to the device coordinate system are the rotation matrix (inverse matrix of the rotation matrix described above) and the translation vector (signature) for converting from the device coordinate system to the structural coordinate system. It can be converted to the inverted above-mentioned translation vector).
  • the method of generating the coordinate conversion information Ic will be described later.
  • the reflection unit 44 reflects the coordinate conversion information Ic supplied from the structural collation unit 43 on the designated display information Id supplied from the virtual object acquisition unit 40, thereby displaying a virtual object to be projected onto the optical element 11. Generate the signal "Sd". In this case, the reflection unit 44 generates the display signal Sd based on the designated display information Id after matching the device coordinate system with the structural coordinate system by the coordinate conversion information Ic.
  • the light source control unit 45 generates a drive signal for instructing a drive timing and a light amount for driving a light source of the light source unit 10 (for example, each light source corresponding to RGB) based on the display signal Sd supplied from the reflection unit 44. Then, the generated drive signal is supplied to the light source unit 10.
  • each process that is, the process of the reflection unit 44 and the light source control unit 45
  • the calibration that is, after the coordinate transformation information Ic is calculated
  • a virtual object that superimposes the virtual object on a desired landscape position may be displayed.
  • Japanese Patent Application Laid-Open No. 2015-116336 Japanese Patent Application Laid-Open No. 2016-525471, and the like as examples of documents that disclose such a technique.
  • the display device 1 detects the line of sight of the user and controls so that the virtual object is appropriately visually recognized.
  • the components of the virtual object acquisition unit 40, the feature point information output unit 41, the feature point output unit 42, the structure collation unit 43, the reflection unit 44, and the light source control unit 45 described in FIG. 3 are, for example, the control unit 17. Can be achieved by executing the program. More specifically, each component can be realized by the control unit 17 executing the program stored in the storage unit 14. Further, each component may be realized by recording a necessary program on an arbitrary non-volatile recording medium and installing it as needed. It should be noted that each of these components is not limited to being realized by software by a program, and may be realized by a combination of hardware, firmware, software, or the like.
  • each of these components may be realized by using a user-programmable integrated circuit such as an FPGA (field-programmable gate array) or a microcomputer.
  • this integrated circuit may be used to realize a program composed of each of the above components.
  • each component may be realized by hardware other than the processor. The above is the same in other embodiments described later.
  • FIG. 4 shows a schematic configuration of a learning device 3 that generates parameters of a discriminator stored in the parameter storage unit 21.
  • the learning device 3 is a device that can refer to the learning data storage unit 23, and may be a display device 1 or any device other than the display device 1 (for example, a personal computer or the like).
  • the learning device 3 refers to the learning data storage unit 23 and generates parameters of the classifier to be stored in the parameter storage unit 21 in the stage before the display device 1 is used by the user (manufacturing stage of the display device 1 or the like). To learn for.
  • the learning data storage unit 23 stores a plurality of sets of combinations of a learning image (learning image) in which the target structure is captured and correct answer data indicating the positions and labels of each structural feature point in the learning image.
  • a learning image obtained by capturing an image of a target structure of each variation existing at a plurality of places (for example, in the case of a tennis court, a tennis court corresponding to each surface) is stored in the learning data storage unit 23. It is good to have.
  • the learning data storage unit 23 stores the learning images obtained by capturing the target structure in various imaging environments (for example, environments with different lighting and degrees). By using such a learning image, it becomes possible to suitably learn a discriminator that is robust against variations in the target structure and changes in the imaging environment.
  • the learning device 3 functionally has a learning unit 31 and a format unit 32.
  • the format unit 32 changes the correct answer data stored in the learning data storage unit 23 into the same format as the structural feature point information IF. For example, when the classifier is trained to output a reliability map for the structural feature points for each label, the format unit 32 has a normal distribution of reliability in which the coordinate position of the structural feature points indicated by the correct answer data is the maximum value. Generate a confidence map that shows. When the classifier is trained to output the coordinate values for the structural feature points for each label, the format unit 32 sets the coordinate positions of the structural feature points indicated by the correct answer data from 0, which does not depend on the image size. It is converted into a two-dimensional coordinate having a coordinate value normalized to a value of 1.
  • the learning unit 31 learns the learning model (discriminator) based on the captured image Im and the information obtained by converting the correct answer data into an appropriate format by the format unit 32. In this case, the learning unit 31 minimizes the error (loss) between the information output by the classifier when the learning image is input to the classifier and the correct answer information supplied from the format unit 32, for example. , Determine the parameters of the classifier.
  • the algorithm for determining the above parameters to minimize the loss may be any learning algorithm used in machine learning such as gradient descent or backpropagation. Then, the learning unit 31 stores the parameters of the discriminator after learning in the parameter storage unit 21.
  • the display device 1 configures the classifier by using the parameters of the classifier learned as described above in the calibration process.
  • the discriminator since the discriminator is trained using the target structure of each variation and the learning data corresponding to various imaging environments, the classifier has accurate structural features regardless of the variation of the target structure and the change of the imaging environment.
  • the point information IF is suitably output.
  • FIG. 5 (A) and 5 (B) show an example of the captured image Im in which the target structure is captured.
  • the tennis court is imaged as the target structure
  • the captured image Im shown in FIG. 5 (B) the swimming pool is imaged as the target structure. ..
  • the captured image Im shown in FIG. 5 (A) has a total of 16 structural feature points "P1" to "P16”
  • the captured image Im shown in FIG. 5 (B) has a total of 9 structural feature points "P1" to "P16”. Structural feature points "P20" to "P29” exist. Therefore, when the captured image Im shown in FIG.
  • the feature point information output unit 41 outputs the structural feature point information IF corresponding to each of the 16 structural feature points P1 to P16. Generate. Further, when the captured image Im shown in FIG. 5B is used for calibration, the structural collation unit 43 generates structural feature point information IFs corresponding to each of the nine structural feature points P20 to P28. .. As will be described later, the feature point information output unit 41 does not need to generate structural feature point information IFs for all of these structural feature points, and structural features for at least three structural feature points that are not aligned in a straight line. The point information IF may be generated.
  • the structural feature point information IF may be generated only by the two structural feature points.
  • the surface of the sports competition field which is the target structure, can be determined by only two points.
  • the feature point information output units 41 are arranged in a straight line as described above. Generate structural feature point information IFs for at least three structural feature points that are not.
  • FIG. 6 is a diagram in which the structural feature point information IF generated based on the captured image Im shown in FIG. 5 (A) is clearly shown on the captured image Im.
  • the feature point information output unit 41 outputs a reliability map of the position of the structural feature point for each classification (label) of the structural feature point as the structural feature point information IF.
  • FIG. 6 clearly shows the reliability map only for the main subregion (here, the rectangular region of 3 ⁇ 3 or 4 ⁇ 4) in which the reliability is not 0. It is assumed that the darker each pixel of the reliability map is, the higher the reliability is. Further, in FIG.
  • the labels “Lb1” to “Lb16” of the structural feature points corresponding to each reliability map are clearly shown.
  • the labels Lb1 to Lb16 correspond to the classification of the structural feature points P1 to P16, respectively.
  • the reliability maps of all the structural feature points are displayed in one image, but in reality, the reliability maps for each label are output from the classifier.
  • the structural collation unit 43 collates the position of the structural feature point in the device coordinate system with the position of the structural feature point of the structural data represented by the structural coordinate system for each label, thereby collating the device coordinate system.
  • Coordinate conversion information Ic indicating the amount of movement and the amount of rotation required for conversion to the structural coordinate system is generated.
  • FIG. 7 is a diagram showing the relationship between the device coordinate system and the structural coordinate system.
  • the device coordinate system is a three-dimensional coordinate system based on the display device 1.
  • the display device 1 determines the device coordinate system based on, for example, the position and orientation of the display device 1 at the time of activation.
  • the display device 1 is a three-dimensional coordinate system whose axes are the imaging direction of the camera 15 and the vertical and horizontal directions of the captured image Im when the display device 1 is activated, or when the display device 1 is activated.
  • Another arbitrary three-dimensional coordinate system based on the orientation of the display device 1 of the above is defined as a device coordinate system.
  • the structural coordinate system is a coordinate system set based on the target structure, and corresponds to the coordinate system adopted in the structural data.
  • FIG. 7 sets a structural coordinate system with the structural feature point P13 of the tennis court shown in FIGS. 5 (A) and 6 as the origin and the longitudinal direction, the lateral direction, and the vertical direction of the tennis court as axes. An example is shown.
  • the three axial directions of the structural coordinate system correspond to the longitudinal direction, the lateral direction, and the vertical direction of the tennis court, which is the target structure, respectively. May be defined as the three-axis directions of the structural coordinate system.
  • the structural collation unit 43 uses a vector (“structural feature point”) in the device coordinate system for each set of the structural feature point position Pd and the label Lb output by the feature point output unit 42 based on the position / orientation change amount Ap. Also called “vector”).
  • FIG. 7 shows a structural feature point vector “V1” corresponding to the label Lb1 shown in FIG. 6, a structural feature point vector “V4” corresponding to the label Lb4, and a structural feature point vector “V16” corresponding to the label Lb16. Shown.
  • the structural collation unit 43 determines the direction of the structural feature point vector based on the structural feature point position Pd indicating the pixel position in the captured image Im.
  • the structural collation unit 43 stores, for example, a map in which the direction of the structural feature point vector is determined for each pixel position in the storage unit 14, and by referring to the map, from each structural feature point position Pd. Determines the direction of the structural feature point vector.
  • the structural collation unit 43 determines the origin of the structural feature point vector as the origin of the device coordinate system. The length of the structural feature point vector is not specified.
  • the structure collating unit 43 corrects the direction of the structural feature point vector described above based on the change amount of the posture of the display device 1 in the position / attitude change amount Ap.
  • the structural collation unit 43 stores, for example, a map in which the amount of change in the posture of the display device 1 and the amount of correction in the direction of the structural feature point vector are stored in the storage unit 14 and refers to the map. Then, the direction of the structural feature point vector of each structural feature point position Pd is corrected. Further, the structure collating unit 43 translates the structural feature point vector based on the amount of change in the position of the display device 1 in the amount of change in position / orientation Ap.
  • the structural collation unit 43 specifies the position of each structural feature point of the target structure in the device coordinate system based on the specified structural feature point vector and the size information of the target structure.
  • the structural collation unit 43 refers to the size information of the structural data, and the width "L1" in the longitudinal direction of the tennis court which is the target structure (that is, the distance between the structural feature points P4 and the structural feature points P16). ) And the width "L2" in the lateral direction (that is, the distance between the structural feature points P1 and the structural feature points P4).
  • the structural feature points P1, P4, and P16 are present on the extension lines of the structural feature point vectors V1, V4, and V16, respectively, and the distance between the structural feature points P1 and the structural feature point P4 is the width L2 and the structural feature. The distance between the point P4 and the structural feature point P16 is the width L1. Therefore, the structural collation unit 43 calculates the coordinate values of the structural feature points P1, P4, and P16 that satisfy such conditions in the device coordinate system.
  • FIG. 8 shows a state before and after coordinate transformation of the device coordinate system shown in FIG. 7.
  • the structural collation unit 43 matches the device coordinate system with the structural coordinate system based on the coordinate values in the device coordinate system for each detected structural feature point and the coordinate values in the structural coordinate system recorded in the structural data. Coordinates are converted so that Then, the structural collation unit 43 calculates the conversion parameters related to the rotation and translation from the device coordinate system to the structural coordinate system necessary for this coordinate conversion as the coordinate conversion information Ic.
  • the structural collation unit 43 ensures that the coordinate values of these structural feature points P1, P4, and P16 in the device coordinate system match the coordinate values in the structural coordinate system recorded in the structural data.
  • the structural collation unit 43 can suitably generate the coordinate conversion information Ic with reference to at least three structural feature points that are not arranged on a straight line. Further, assuming that one axis of the first coordinate system and one axis of the second coordinate system are equivalent, the coordinate conversion information Ic can be generated using at least two structural feature points. For example, assuming that the vertical axis of the device coordinate system and the vertical axis of the structural coordinate system are the same, the surface of the sports competition field, which is the target structure, can be determined by only two points.
  • Coordinate conversion information Ic is generated with reference to at least three structural feature points.
  • the structural collation unit 43 generated the coordinate conversion information Ic based on the three structural feature points, but instead, the coordinates are based on four or more structural feature points.
  • the conversion information Ic may be generated.
  • the structural collation unit 43 applies a regression analysis method such as the minimum square method based on the structural feature point vector calculated from each structural feature point and the distance between each structural feature point indicated by the size information. Then, the coordinate values of the structural feature points on each structural feature point vector in the device coordinate system are calculated. Further, the structural collation unit 43 uses the least squares method or the like based on the coordinate values of each structural feature point in the device coordinate system and the coordinate values in the structural coordinate system recorded in the structural data to obtain device coordinates. Calculate the conversion parameters for rotation and translation from the system to the structural coordinate system.
  • the structural collation unit 43 has Nr structural feature points (Nr is an integer of 3 or more) used for calculating the coordinate conversion information Ic based on the reliability of the structural feature points detected from the captured image Im. May be selected.
  • the structural collation unit 43 refers to the structural feature point information IF calculated by the feature point information output unit 41, and acquires the reliability of each structural feature point.
  • the classifier used by the feature point information output unit 41 outputs a reliability map for each structural feature point
  • the maximum reliability in the reliability map for each structural feature point is set to the reliability of each structural feature point. Recognize as a degree.
  • the structural collation unit 43 calculates the coordinate conversion information Ic by using the structural feature points corresponding to the Nr having the highest reliability.
  • the structural collation unit 43 can suitably calculate accurate coordinate conversion information Ic using only highly reliable structural feature points.
  • the structural collation unit 43 considers that the pixels at the edge of the image are easily affected by the distortion of the lens, and the detection position (that is, the structural feature point position Pd) in the captured image Im of each structural feature point. ),
  • the structural feature points used for calculating the coordinate conversion information Ic may be selected.
  • the feature point information output unit 41 stores information in a region in the captured image Im that is not substantially affected by lens distortion in a storage unit 14 or the like in advance, and structural features detected in the region. A point is selected as a structural feature point used for calculating the coordinate conversion information Ic.
  • the structural collation unit 43 can suitably calculate accurate coordinate conversion information Ic by using the information of the structural feature points where the influence of the distortion of the lens does not substantially occur.
  • the display device 1 uses the structural feature points detected from the plurality of captured images Im. Based on this, the coordinate conversion information Ic may be calculated. Even in this case, the structural collation unit 43 corrects the structural feature point vector for the structural feature point detected in each of the captured images Im by using the position / orientation change amount Ap at the time of capturing each captured image Im. .. As a result, the structural collation unit 43 can suitably calculate the coordinate conversion information Ic based on the plurality of captured images Im without being affected by changes in the position and posture of each captured image Im at the time of imaging.
  • FIG. 9 is an example of a flowchart showing a processing outline related to the display processing of the virtual object executed by the control unit 17 in the first embodiment.
  • the control unit 17 detects the activation of the display device 1 (step S11). In this case, the control unit 17 sets the device coordinate system based on the posture and position of the display device 1 when the display device 1 is activated (step S12). After that, the control unit 17 acquires the captured image Im generated by the camera 15 and also acquires the position / orientation change amount Ap based on the detection signal output by the position / attitude detection sensor 16 (step S13). The control unit 17 stores the combination of the captured image Im and the position / orientation change amount Ap acquired in step S13 in the sensor data storage unit 20.
  • the control unit 17 determines whether or not there is a display request for the virtual object (step S14). For example, when the virtual object acquisition unit 40 receives the distribution information instructing the display of the virtual object from the server device (not shown) managed by the entertainer, the virtual object acquisition unit 40 determines that there is a display request for the virtual object. Then, when there is no request for displaying the virtual object (step S14; No), the captured image Im and the position / orientation change amount Ap are subsequently acquired in step S13.
  • step S15 when there is a request to display the virtual object (step S14; Yes), the control unit 17 executes the carving process (step S15). Details of the procedure of this calibration process will be described later with reference to FIG.
  • the reflection unit 44 of the control unit 17 displays the virtual object specified in the display request and the virtual object corresponding to the display position based on the coordinate conversion information Ic obtained in the calibration process of step S15.
  • the display signal Sd is generated (step S16).
  • the control unit 17 recognizes the space visually recognized by the user in the AR coordinate system in consideration of the user's line-of-sight direction, position / orientation change amount Ap, and the like, as in various conventional AR display products.
  • the display signal Sd is generated so that the virtual object is displayed at the specified position in the space.
  • the light source control unit 45 of the control unit 17 performs emission control of the light source unit 10 based on the display signal Sd (step S17).
  • the processing procedure of the flowchart shown in FIG. 9 is an example, and various changes can be made to this processing procedure.
  • control unit 17 executes the calibration process of step S15 every time there is a virtual object display request, but the present invention is not limited to this. Instead of this, the control unit 17 may perform the calibration process only when a predetermined time or more has elapsed from the previous calibration process. In this way, the control unit 17 may perform the calibration process at least once after the display device 1 is activated.
  • control unit 17 determines the device coordinate system based on the position and orientation of the display device 1 when the display device 1 is activated, but the present invention is not limited to this. Instead, for example, the control unit 17 uses the position and orientation of the display device 1 as a reference when the display request is first made after the display device 1 is started (that is, when the calibration process is first executed). The device coordinate system may be determined. In another example, the control unit 17 may reset the device coordinate system based on the position and orientation of the display device 1 at the time of the display request (that is, when the calibration process is executed) each time there is a display request. .. In this case, it is not necessary to use the position / orientation change amount Ap in the process of generating the coordinate transformation information Ic, which will be described later.
  • FIG. 10 is an example of a flowchart showing a detailed processing procedure of the calibration process of step S15 of FIG.
  • the feature point information output unit 41 of the control unit 17 outputs the structural feature point information IF related to the structural feature points of the target structure based on the captured image Im acquired from the sensor data storage unit 20 and the like (step S21).
  • the feature point information output unit 41 configures a classifier based on the parameters acquired from the parameter storage unit 21, and acquires the structural feature point information IF by inputting the captured image Im into the classifier.
  • the feature point output unit 42 outputs a combination of the structural feature point position Pd and the label Lb of each structural feature point based on the structural feature point information IF output by the feature point information output unit 41 (step S22).
  • the structural collation unit 43 uses the position / orientation change amount Ap calculated in step S13 of FIG. 9 and the size information of the target structure stored in the structural data storage unit 22 to be used in the device coordinate system.
  • the detection position of the structural feature point is specified (step S23).
  • the structural collation unit 43 has a distance between the structural feature point vector specified based on the structural feature point position Pd and the position / orientation change amount Ap and the structural feature point. Based on the above, the detection position of each structural feature point in the device coordinate system is specified.
  • the structural collation unit 43 determines the detection position of the structural feature point specified in step S23 in the device coordinate system for each label of the structural feature point, and the structural feature of the structural coordinate system indicated by the registered position information included in the structural data. The positions of the points are associated with each other and collated (step S24). Then, the structural collation unit 43 calculates the coordinate conversion information Ic for converting from the device coordinate system to the structural coordinate system so that the collated positions for each label match (step S25).
  • the display device 1 constitutes a classifier for outputting the structural feature point information IF with reference to the parameter storage unit 21.
  • the display device 1 since the classifier can be learned in advance using the learning images corresponding to various imaging environments and variations of the target structure, the display device 1 can be used for changes in the imaging environment and variations of the target structure.
  • the structural feature point information IF can be generated robustly.
  • the display device 1 extracts only the structural feature points registered in advance (that is, the label has already been registered) from the captured image Im in the calibration process, and extracts the information of the structural feature points registered in the structural data. To match with. As a result, the amount of calculation required for the collation process for calculating the coordinate transformation information Ic is significantly reduced, and the influence caused by the extraction of noise (that is, feature points other than the target structure) contained in the captured image Im, etc. It is possible to calculate the robust coordinate transformation information Ic that does not receive the noise.
  • the information regarding the actual scale of the target structure which is predetermined based on the competition rules or already measured at the time of design, etc., is used. , It may be included in the structural data as size information and stored in advance.
  • FIG. 11 shows the configuration of the display system according to the second embodiment.
  • the display system according to the second embodiment includes a display device 1A and a server device 2.
  • the second embodiment is different from the first embodiment in that the server device 2 executes the calibration process and the like instead of the display device 1A.
  • the same components as those in the first embodiment will be appropriately designated by the same reference numerals, and the description thereof will be omitted.
  • the display device 1A transmits the upload signal "S1", which is information necessary for the server device 2 to perform the calibration process and the like, to the server device 2.
  • the upload signal S1 includes, for example, the captured image Im generated by the camera 15 and the position / orientation change amount Ap detected based on the output of the position / orientation detection sensor 16.
  • the display device 1A displays the virtual object by controlling the light emission of the light source unit 10 based on the delivery signal S2.
  • the distribution signal S2 includes information corresponding to the display signal Sd of the first embodiment, and after receiving the distribution signal S2, the display device 1A performs the same processing as the light source control unit 45 of the first embodiment. By doing so, the light source unit 10 emits light for displaying a virtual object.
  • the server device 2 is, for example, a server device managed by an entertainer, and generates a distribution signal S2 and distributes a distribution signal S2 to the display device 1A based on an upload signal S1 received from the display device 1A.
  • FIG. 12 is a block diagram of the server device 2.
  • the server device 2 has an input unit 26, a control unit 27, a communication unit 28, and a storage unit 29.
  • the storage unit 29 is a non-volatile memory in which the control unit 27 stores various information necessary for controlling the server device 2.
  • the storage unit 29 stores a program executed by the control unit 27.
  • the storage unit 29 includes a sensor data storage unit 20, a parameter storage unit 21, and a structural data storage unit 22. Under the control of the control unit 27, the sensor data storage unit 20 stores the captured image Im included in the upload signal S1 and the position / orientation change amount Ap.
  • the storage unit 29 may be an external storage device such as a hard disk connected to or built in the server device 2, or may be a storage medium such as a flash memory. Further, the storage unit 29 may be a server device that performs data communication with the server device 2 (that is, a device that stores information so that it can be referred to by another device). Further, in this case, the storage unit 29 may be composed of a plurality of server devices, and the sensor data storage unit 20, the parameter storage unit 21, and the structural data storage unit 22 may be distributed and stored.
  • the control unit 27 has, for example, a processor such as a CPU and a GPU, a volatile memory that functions as a working memory, and the like, and controls the server device 2 as a whole.
  • the control unit 27 generates information on the virtual object to be displayed as a virtual object and the display position (that is, information corresponding to the designated display information Id of the first embodiment) based on the user input to the input unit 26 or the like. Further, the control unit 27 executes the calibration process shown in FIG. 10 by referring to the sensor data storage unit 20, the parameter storage unit 21, and the structural data storage unit 22, and generates the distribution signal S2.
  • the control unit 27 includes functions corresponding to the virtual object acquisition unit 40, the feature point information output unit 41, the feature point output unit 42, the structure collation unit 43, and the reflection unit 44 shown in FIG.
  • FIG. 13 is an example of a flowchart showing a processing procedure executed by the control unit 27 of the server device 2 in the second embodiment.
  • the control unit 27 receives the upload signal S1 including the captured image Im and the position / orientation change amount Ap from the display device 1A via the communication unit 28 (step S31). In this case, the control unit 27 updates the data stored in the sensor data storage unit 20 based on the upload signal S1. Then, the control unit 27 determines whether or not it is the display timing of the virtual object (step S32). Then, when it is not the display timing (step S32; No), the control unit 27 subsequently receives the upload signal S1 from the display device 1A in step S31.
  • step S32 the control unit 27 executes the calibration process based on the latest upload signal S1 or the like received in step S31. In this case, the control unit 27 executes the flowchart shown in FIG. Then, the control unit 27 generates a distribution signal S2 for the display device 1A to display the virtual object based on the coordinate conversion information Ic obtained in the calibration process (step S34). Then, the control unit 27 transmits the generated distribution signal S2 to the display device 1A by the communication unit 28 (step S35). After that, the display device 1A that has received the distribution signal S2 displays the virtual object by controlling the light source unit 10 based on the distribution signal S2.
  • the display system can accurately calculate the coordinate conversion information Ic required for displaying the virtual object by the display device 1A, and the virtual object can be preferably visually recognized by the user.
  • the display device 1A may perform the calibration process or the like instead of the server device 2.
  • the display device 1A executes the processing of the flowcharts shown in FIGS. 9 and 10 by appropriately receiving the information necessary for the calibration process from the server device 2.
  • the display system can make the user of the display device 1A visually recognize the virtual object.
  • FIG. 14 shows a schematic configuration of the information processing apparatus 4 according to the third embodiment.
  • the information processing apparatus 4 has an acquisition unit 41A and a structural collation unit 43A.
  • the information processing device 4 is realized, for example, by the control unit 17 of the display device 1 in the first embodiment or the control unit 27 of the server device 2 in the second embodiment.
  • the acquisition unit 41A uses the image captured by the image pickup unit 15A of the display device that displays the virtual object superimposed on the landscape to classify the structural feature points that are the structural feature points of the target structure and the structural feature points. Acquire multiple combinations of position information.
  • the above-mentioned display device is, for example, the display device 1 of the first embodiment or the display device 1A of the second embodiment. Further, the information processing device 4 and the display device may be the same device. "A plurality of combinations of the classification information of the structural feature points and the position information of the structural feature points" is, for example, the structural feature point positions Pd and the label Lb with respect to the plurality of structural feature points in the first embodiment or the second embodiment. Corresponds to multiple combinations.
  • the structural collation unit 43A collates the structural data “Ds” including information on the position and classification of each structural feature point of the target structure with the above-mentioned plurality of combinations, and in the coordinate system used as the reference by the display device. Generates coordinate conversion information related to coordinate conversion between a certain first coordinate system and a second coordinate system which is a coordinate system used in the structural data Ds.
  • the first coordinate system corresponds to, for example, the device coordinate system in the first embodiment and the second embodiment.
  • the second coordinate system corresponds to, for example, the structural coordinate system in the first embodiment and the second embodiment.
  • the information processing device 4 can suitably generate coordinate conversion information related to coordinate conversion between the coordinate system used as a reference by the display device and the coordinate system used as a reference in the structural data Ds.
  • Non-temporary computer-readable media include various types of tangible storage media.
  • Examples of non-temporary computer-readable media include magnetic recording media (eg, flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (eg, magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, It includes a CD-R / W and a semiconductor memory (for example, a mask ROM, a PROM (Programmable ROM), an EPROM (Erasable PROM), a flash ROM, and a RAM (RandomAccessMemory)).
  • the program may also be supplied to the computer by various types of temporary computer readable medium.
  • temporary computer-readable media include electrical, optical, and electromagnetic waves.
  • the temporary computer-readable medium can supply the program to the computer via a wired communication path such as an electric wire and an optical fiber, or a wireless communication path.
  • [Appendix 1] A plurality of combinations of classification information of structural feature points, which are structural feature points of the target structure, and position information of the structural feature points, from the captured image captured by the image pickup unit of the display device that displays the virtual object superimposed on the landscape. And the acquisition department to acquire By collating the structural data including information on the position and classification of each structural feature point of the target structure with the plurality of combinations, the first coordinate system, which is the coordinate system used by the display device, and the said A structural collation unit that generates coordinate conversion information related to coordinate conversion between the second coordinate system, which is the coordinate system used in the structural data, and Information processing device with.
  • the acquisition unit captures a plurality of images of the target structure or a target structure of the same type as the target structure, and correct answer data regarding the positions and classifications of the structural feature points of the target structure in the images.
  • the information processing apparatus according to Appendix 1, wherein the classifier is configured based on the parameters of the classifier learned using and, and the captured image is input to the classifier to acquire the plurality of combinations. ..
  • the "same type" may have the same purpose. For example, when a tennis court is an object structure, a plurality of tennis courts having different surfaces correspond to the same type of object structure.
  • the classifier outputs a reliability map for each classification of the structural feature points from the captured image, and outputs the reliability map.
  • the information processing apparatus according to Appendix 2, wherein the acquisition unit determines a plurality of combinations based on the position in the captured image in which the reliability indicated by the reliability map is maximized for each classification of the structural feature points. ..
  • the classifier outputs the coordinate values for each classification of the structural feature points from the captured image, and outputs the coordinate values for each classification.
  • the information processing apparatus according to Appendix 2, wherein the acquisition unit determines the plurality of combinations based on the coordinate values for each classification of the structural feature points.
  • the structural collation unit collates the combination of at least two structural feature points with the structural data to obtain the coordinate conversion information.
  • the coordinate conversion information is obtained by collating the combination of at least three structural feature points with the structural data.
  • Appendix 6 The information processing apparatus according to Appendix 5, wherein the structural collation unit selects structural feature points to be collated with the structural data based on the reliability of the position information of the structural feature points acquired by the acquisition unit.
  • Appendix 7 The information according to Appendix 5, wherein the structural collation unit selects a structural feature point to be collated with the structural data based on the position in the captured image indicated by the position information of the structural feature point acquired by the acquisition unit. Processing equipment.
  • the structure collating unit is the size information, the position information of the structural feature points acquired by the acquisition unit, and the above-mentioned at the time of capturing the captured image with respect to the position and orientation of the display device based on the first coordinate system.
  • the information processing device which specifies the position of each of the structural feature points in the first coordinate system based on the amount of change in the position and orientation of the display device.
  • the information processing device is the display device.
  • a light source unit that emits display light for displaying the virtual object, and An optical element that reflects at least a part of the display light so that the virtual object is superimposed on the landscape and visually recognized by the observer.
  • the information processing apparatus according to any one of Supplementary note 1 to 9, further comprising.
  • the information processing device is a server device that communicates with the display device.
  • the information according to any one of Supplementary note 1 to 9, further comprising a communication unit that receives the captured image from the display device and transmits the display signal generated based on the coordinate conversion information to the display device. Processing equipment.
  • Appendix 12 It is a control method executed by an information processing device.
  • the first coordinate system which is the coordinate system used by the display device
  • the said A control method for generating coordinate conversion information related to coordinate conversion with a second coordinate system, which is a coordinate system used in structural data.
  • [Appendix 13] A plurality of combinations of classification information of structural feature points, which are structural feature points of the target structure, and position information of the structural feature points, from the captured image captured by the image pickup unit of the display device that displays the virtual object superimposed on the landscape. And the acquisition department to acquire By collating the structural data including information on the position and classification of each structural feature point of the target structure with the plurality of combinations, the first coordinate system, which is the coordinate system used by the display device, and the said A storage medium that stores a program that functions a computer as a structural collation unit that generates coordinate conversion information related to coordinate conversion with a second coordinate system, which is a coordinate system used in structural data.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Optics & Photonics (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)

Abstract

情報処理装置4は、取得部41Aと、構造照合部43Aとを有する。取得部41Aは、風景に重ねて仮想オブジェクトを表示する表示装置の撮像部15Aが撮像した撮像画像から、対象構造物の構造的な特徴点である構造特徴点の分類情報及び当該構造特徴点の位置情報の複数の組合せを取得する。構造照合部43Aは、対象構造物の各構造特徴点の位置及び分類に関する情報を含む構造データDsと、上述の複数の組合せとを照合することで、表示装置が基準とする座標系である第1座標系と、構造データDsにおいて用いられる座標系である第2座標系との間の座標変換に関する座標変換情報を生成する。

Description

情報処理装置、制御方法及び記憶媒体
 本発明は、拡張現実(AR:Augmented Reality)における空間把握に関する処理を行う情報処理装置、制御方法及び記憶媒体の技術分野に関する。
 拡張現実を提供する装置において、カメラで撮像した画像に基づき、ユーザが視認する風景に重ねて表示する画像(所謂AR画像)の表示位置を決定する技術が存在する。例えば、特許文献1には、物体の外観の特徴を表す特徴データを記憶し、撮像装置から得られる画像及び上記の特徴データに基づいて、実空間内に存在する物体の位置を表現する環境マップを構築し、環境マップを参照して実空間内で遂行すべき作業の一連の手順に関する説明を表示する画像処理装置が開示されている。
特開2011-159162号公報
 実世界をカメラ等により計測して環境マップを生成した場合には、認識対象以外の物体に関する情報がノイズとして環境マップに含まれることになる。そして、ノイズを含む環境マップと予め記憶した認識対象の特徴データとを照合して実世界空間とデバイスが基準とする空間との対応関係を認識する場合、膨大な計算量が必要となり、かつ、ノイズによるマッチング精度の低下が生じるという問題がある。
 本発明の目的は、上述した課題を鑑み、拡張現実における空間の対応関係の把握に必要な照合の精度向上及び計算量の低減を好適に実現することが可能な情報処理装置、制御方法及び記憶媒体を提供することを主な課題とする。
 情報処理装置の一の態様は、情報処理装置であって、風景に重ねて画像を表示する表示装置の撮像部が撮像した撮像画像から、対象構造物の構造的な特徴点である構造特徴点の分類情報及び当該構造特徴点の位置情報の複数の組合せを取得する取得部と、前記対象構造物の各構造特徴点の位置及び分類に関する情報を含む構造データと、前記複数の組合せとを照合することで、前記表示装置が基準とする座標系である第1座標系と、前記構造データにおいて用いられる座標系である第2座標系との間の座標変換に関する座標変換情報を生成する構造照合部と、を有する。
 制御方法の一の態様は、情報処理装置が実行する制御方法であって、風景に重ねて画像を表示する表示装置の撮像部が撮像した撮像画像から、対象構造物の構造的な特徴点である構造特徴点の分類情報及び当該構造特徴点の位置情報の複数の組合せを取得し、前記対象構造物の各構造特徴点の位置及び分類に関する情報を含む構造データと、前記複数の組合せとを照合することで、前記表示装置が基準とする座標系である第1座標系と、前記構造データにおいて用いられる座標系である第2座標系との間の座標変換に関する座標変換情報を生成する。
 記憶媒体の一の態様は、風景に重ねて画像を表示する表示装置の撮像部が撮像した撮像画像から、対象構造物の構造的な特徴点である構造特徴点の分類情報及び当該構造特徴点の位置情報の複数の組合せを取得する取得部と、前記対象構造物の各構造特徴点の位置及び分類に関する情報を含む構造データと、前記複数の組合せとを照合することで、前記表示装置が基準とする座標系である第1座標系と、前記構造データにおいて用いられる座標系である第2座標系との間の座標変換に関する座標変換情報を生成する構造照合部としてコンピュータを機能させるプログラムを格納する記憶媒体である。
 本発明によれば、拡張現実において使用する座標系の変換に関する座標変換情報の生成に必要な照合の精度向上及び計算量の低減を好適に実現することができる。
第1実施形態に係る表示装置の概略構成図である。 構造データのデータ構造の一例を示す。 制御部の機能的な構成を示すブロック図である。 パラメータ記憶部に記憶する識別器のパラメータを生成する学習装置の概略構成を示す。 (A)対象構造物としてテニスコートが撮像された撮像画像の例を示す。(B)対象構造物として競泳用プールが撮像された撮像画像の例を示す。 構造特徴点情報を撮像画像上に明示した図である。 デバイス座標系と構造座標系との関係を示す図である。 デバイス座標系を座標変換する前後の状態を示す。 第1実施形態において制御部が実行する仮想オブジェクトの表示処理に関する処理概要を示すフローチャートの一例である。 キャリブレーション処理の詳細な処理手順を示すフローチャートの一例である。 第2実施形態における表示システムの構成を示す。 第2実施形態におけるサーバ装置のブロック図である。 第2実施形態においてサーバ装置の制御部が実行する処理手順を示すフローチャートの一例である。 第3実施形態における情報処理装置の概略構成を示す。
 以下、図面を参照しながら、情報処理装置、制御方法及び記憶媒体の実施形態について説明する。
 <第1実施形態>
 (1)概略構成
 図1は、第1実施形態に係る表示装置1の概略構成図である。表示装置1は、ユーザが装着可能な装置であり、例えば眼鏡型に構成されたシースルー型であって、ユーザの頭部に装着可能に構成されている。そして、表示装置1は、スポーツ観戦や劇(コンサートを含む)の観賞などにおいて、実在する風景に視覚情報を重ねて表示することで、拡張現実(AR:Augmented Reality)を実現する。上記の視覚情報は、2次元又は3次元により表された仮想のオブジェクトであり、以後では、「仮想オブジェクト」とも呼ぶ。なお、表示装置1は、ユーザの片眼にのみ仮想オブジェクトを表示してもよく、両眼に対して仮想オブジェクトを表示してもよい。
 本実施形態では、スポーツや劇などが行われる場(フィールド)となる静止構造物(「対象構造物」とも呼ぶ。)が存在するものとし、表示装置1は、ユーザがスポーツ観戦や劇の観賞を行う際に補助となる付加的な情報となる仮想オブジェクトを、対象構造物又はその周辺に重畳表示する。対象構造物は、例えば、スポーツ観戦において対象となるフィールド(例えばテニスコート、競泳用プール、スタジアム等)、又は、観劇において対象となるフィールド(例えば劇場、コンサートホール、多目的ホール、各種ステージ等)などが該当する。後述するように、対象構造物は、構造上の(即ち形状において特徴がある)特徴点(「構造特徴点」とも呼ぶ。)を複数有している。
 仮想オブジェクトは、例えば、テニスなどの場合には、テニスコート上方に表示する点数ボード、競泳の場合には、競泳中のプールにリアルタイム重畳表示する世界記録ライン、観劇などでステージ上に重畳表示するバーチャル出演者などを含む。
 表示装置1は、光源ユニット10と、光学素子11と、通信部12と、入力部13と、記憶部14と、カメラ15と、位置姿勢検出センサ16と、制御部17とを有する。
 光源ユニット10は、レーザ光源やLCD(Liquid Crystal Display)光源などの光源を有しており、制御部17から供給される駆動信号に基づき、光を射出する。光学素子11は、所定の透過率を有し、外光の少なくとも一部を透過してユーザの眼球に入射させると共に、光源ユニット10からの光の少なくとも一部を、ユーザの眼球に向けて反射する。これにより、表示装置1によって形成された仮想オブジェクトに対応する虚像が、風景と重なってユーザに視認されることとなる。なお、光学素子11は、透過率と反射率とが概ね等しいハーフミラーであってもよく、透過率と反射率とが等しくないようなミラー(所謂ビームスプリッタ)であってもよい。
 通信部12は、制御部17の制御に基づき、外部装置とのデータの授受を行う。例えば、ユーザがスポーツ観戦や劇の観賞などに表示装置1を使用する場合には、通信部12は、制御部17の制御に基づき、興行者が管理するサーバ装置から表示装置1が表示すべき仮想オブジェクトに関する情報を受信する。
 入力部13は、ユーザの操作に基づく入力信号を生成して制御部17に送信する。入力部13は、例えば、ユーザが表示装置1に対して指示を行うためのボタン、十字キー、音声入力装置等である。
 カメラ15は、制御部17の制御に基づき、表示装置1の前方を撮像した画像を生成し、生成した画像(「撮像画像Im」とも呼ぶ。)を制御部17に供給する。
 位置姿勢検出センサ16は、表示装置1の位置及び姿勢(向き)を検出するセンサ(センサ群)であり、例えば、GPS(Global Positioning Satellite)受信機などの測位センサと、ジャイロセンサ、加速度センサ、IMU(Inertial Measurement Unit)などの表示装置1の相対的な姿勢の変化を検出する姿勢検出センサとを含む。位置姿勢検出センサ16は、生成した表示装置1の位置及び姿勢に関する検出信号を制御部17へ供給する。後述するように、制御部17は、位置姿勢検出センサ16から供給される検出信号に基づき、表示装置1の起動時等からの位置及び姿勢の変化量を検出する。なお、制御部17は、測位センサから表示装置1の位置を検出する代わりに、例えば、会場に設けられたビーコン端末や無線LAN機器から受信する信号に基づき、表示装置1の位置を特定してもよい。他の例では、制御部17は、ARマーカを用いた公知の位置推定技術に基づき、表示装置1の位置を特定してもよい。これらの場合、位置姿勢検出センサ16は、測位センサを含まなくともよい。
 制御部17は、例えばCPU(Central Processing Unit)、GPU(Graphics Processing Unit)などのプロセッサ、プロセッサの作業メモリとして機能する揮発性メモリなどを有しており、表示装置1の全体的な制御を行う。
 例えば、制御部17は、仮想オブジェクトの表示タイミングなどにおいて、撮像画像Imから認識される対象構造物の構造特徴点に基づき、実世界空間と表示装置1が認識する空間とを対応付けるためのキャリブレーション処理を行う。このキャリブレーション処理では、制御部17は、表示装置1が基準とする3次元空間の座標系(「デバイス座標系」とも呼ぶ。)を、対象構造物を基準とした3次元空間の座標系(「構造座標系」とも呼ぶ。)に変換するための座標変換情報を生成する。キャリブレーション処理の詳細については後述する。そして、制御部17は、上述の座標変換情報等に基づき、光源ユニット10を駆動するための駆動信号を生成し、駆動信号を光源ユニット10に供給することで光源ユニット10に仮想オブジェクトを表示するための光(「表示光」とも呼ぶ。)を光学素子11に射出させる。これにより、制御部17は、仮想オブジェクトをユーザに視認させる。
 記憶部14は、制御部17が表示装置1の制御に必要な種々の情報を記憶する不揮発性メモリである。記憶部14は、フラッシュメモリなどの着脱自在な記憶媒体を含んでもよい。また、記憶部14には、制御部17が実行するプログラムが記憶される。
 また、記憶部14は、センサデータ記憶部20と、パラメータ記憶部21と、構造データ記憶部22とを有する。
 センサデータ記憶部20は、カメラ15が生成する撮像画像Imと、当該撮像画像Imの生成時におけるデバイス座標系の設定時(例えば表示装置1の起動時)からの表示装置1の位置及び姿勢の変化量(「位置姿勢変化量Ap」とも呼ぶ。)とを関連付けて記憶する。この場合、例えば、制御部17は、デバイス座標系の設定時の位置及び姿勢を基準とする現在の位置及び姿勢の変化量を、位置姿勢検出センサ16の検出信号に基づき常時算出する。そして、制御部17は、カメラ15が生成した撮像画像Imをセンサデータ記憶部20に記憶する場合に、当該撮像画像Imの生成時に算出した位置姿勢変化量Apを当該撮像画像Imに関連付けてセンサデータ記憶部20に記憶する。制御部17は、例えば、最新の所定時間分又は所定数分の撮像画像Im及び位置姿勢変化量Apの組合せをセンサデータ記憶部20に記憶させる。センサデータ記憶部20に記憶される情報は、キャリブレーション処理において使用される。
 パラメータ記憶部21は、キャリブレーション処理において、対象構造物の構造特徴点の位置情報及び当該構造特徴点の分類情報を撮像画像Imから抽出する際に用いる識別器のパラメータを記憶する。上述の識別器は、例えば、撮像画像Imが入力された場合に、抽出対象となる構造特徴点の分類毎に構造特徴点の画像内の信頼度マップを出力するように学習された学習モデルである。信頼度マップは、構造特徴点の座標値ごとの信頼度を示す画像上のマップである。「座標値」は、ピクセル単位での画像内の位置を示す値であってもよく、サブピクセル単位での画像内の位置を示す値であってもよい。識別器の学習に用いる学習モデルは、ニューラルネットワークに基づく学習モデルであってもよく、サポートベクターマシーンなどの他の種類の学習モデルであってもよく、これらの組み合わせであってもよい。例えば、上述の学習モデルが畳み込みニューラルネットワークなどのニューラルネットワークである場合、パラメータ記憶部21は、層構造、各層のニューロン構造、各層におけるフィルタ数及びフィルタサイズ、並びに各フィルタの各要素の重みなどの各種パラメータを記憶する。なお、識別器は、構造特徴点の信頼度マップを出力するものに限らず、構造特徴点の画像内の座標値を示す情報を出力する回帰型の識別器であってもよい。
 構造データ記憶部22は、対象構造物の構造に関する構造データを記憶する。図2は、構造データのデータ構造の一例を示す。構造データは、サイズ情報と、登録特徴点情報とを有する。サイズ情報は、対象構造物のサイズに関する情報であり、例えば、テニスコートの場合には、縦及び横のコート幅の情報であり、劇場の場合には、ステージの幅(及び高さ)の情報である。なお、サイズ情報は、対象構造物の全体サイズに関する情報に限らず、後述するように、キャリブレーション処理において検出される構造特徴点間の距離を示す情報であればよい。
 登録特徴点情報は、対象構造物の構造特徴点に関する情報であり、予め計測した構造特徴点毎の個別の情報を含んでいる。ここでは、対象構造物がN個(Nは2以上の整数)の構造特徴点を有することから、登録特徴点情報は、これらのN個の構造特徴点に夫々対応する情報(第1構造特徴点情報~第N構造特徴点情報)を含んでいる。登録特徴点情報は、対象となる構造特徴点の分類を示すラベルと、対象となる構造特徴点の構造座標系での位置を示す登録位置情報とを少なくとも含んでいる。登録位置情報は、構造座標系により表された座標情報であり、例えばいずれかの構造特徴点の位置が原点となるように設定されている。登録特徴点情報は、キャリブレーション処理において、撮像画像Imから特定される構造特徴点の情報との照合において用いられる。
 その他、構造データは、構造座標系において原点とする構造特徴点を指定する情報及び構造座標系の3軸の各方向をそれぞれ指定する情報などが含まれてもよい。
 なお、図1に示す表示装置1の構成は一例であり、この構成に対して種々の変更を行ってもよい。例えば、表示装置1は、制御部17の制御に基づき、音声を出力するスピーカをさらに備えてもよい。また、表示装置1は、ユーザの視線の位置に応じて仮想オブジェクトの表示有無や仮想オブジェクトの表示位置を変更するための視線検出用カメラを備えてもよい。さらに別の例では、記憶部14は、センサデータ記憶部20を有しなくともよい。この場合、制御部17は、カメラ15から即時に取得した撮像画像Imと、位置姿勢検出センサ16の検出信号に基づき算出した位置姿勢変化量Apとを用いて、キャリブレーション処理を行う。
 さらに別の例では、表示装置1は、位置姿勢検出センサ16等による表示装置1の位置を検出しなくともよい。一般に、スポーツ観戦や劇等の観賞中では、ユーザが移動することは稀であり、かつ、表示装置1の姿勢変化に比べて表示装置1の位置の変化に対する仮想オブジェクトの表示への影響は小さい。以上を勘案し、位置姿勢検出センサ16は、表示装置1の姿勢を検出するセンサから構成され、制御部17は、デバイス座標系の設定時からの表示装置1の姿勢の変化量のみを、位置姿勢変化量Apとして算出してもよい。
 (2)機能ブロック
 図3は、制御部17の機能的な構成を示すブロック図である。図3に示すように、制御部17は、機能的には、仮想オブジェクト取得部40と、特徴点情報出力部41と、特徴点出力部42と、構造照合部43と、反映部44と、光源制御部45と、を有する。
 仮想オブジェクト取得部40は、仮想オブジェクトとして風景に重畳表示させる元となる仮想オブジェクトとその表示位置とを指定する情報(「指定表示情報Id」とも呼ぶ。)を取得する。この仮想オブジェクトは、2次元の物体描画のための情報(2次元描画情報)であってもよく、3次元の物体描画のための情報(3次元描画情報)であってもよい。例えば、興行者が管理するサーバ装置と表示装置1が通信可能である場合には、仮想オブジェクト取得部40は、サーバ装置から所定のタイミングによりプッシュ型配信又はプル型配信される配信情報を、指定表示情報Idとして取得する。この場合、指定表示情報Idには、仮想オブジェクトの他、表示位置を指定する情報(例えば構造座標系での座標値を示す情報)が含まれている。他の例では、仮想オブジェクトと表示位置とその表示条件との組み合わせを示す情報が記憶部14に予め記憶されてもよい。この場合、仮想オブジェクト取得部40は、記憶された上述の表示条件が満たされたと判断したときに、満たされた表示条件に対応する仮想オブジェクトと表示位置の組み合わせを指定表示情報Idとして取得する。
 特徴点情報出力部41は、センサデータ記憶部20から撮像画像Imを取得すると共に、パラメータ記憶部21から抽出したパラメータに基づき識別器を構成し、当該識別器に撮像画像Imを入力することで、構造特徴点情報「IF」を生成する。この場合、特徴点情報出力部41は、好適には、センサデータ記憶部20から最新の撮像画像Imを取得するとよい。ここで、識別器は、撮像画像Imが入力された場合に、構造特徴点の分類毎に画像内の構造特徴点の位置に関する情報を、構造特徴点情報IFとして出力するように学習された学習モデルである。
 特徴点出力部42は、特徴点情報出力部41が出力する構造特徴点情報IFに基づき、撮像画像Im内での各構造特徴点の位置(「構造特徴点位置Pd」とも呼ぶ。)と、当該各構造特徴点の分類を示すラベル(「ラベルLb」とも呼ぶ。)との複数の組合せを、構造照合部43に出力する。後述するように、特徴点出力部42は、直線上に並んでいない少なくとも2組以上の構造特徴点位置Pd及びラベルLbの組合せを構造照合部43に供給する。構造特徴点位置PdとラベルLbとの複数の組合せは、本開示における「構造特徴点の分類情報及び当該構造特徴点の位置情報の複数の組合せ」の一例である。
 ここで、構造特徴点位置Pdの決定方法について補足説明する。例えば、構造特徴点の分類毎の画像内の信頼度マップが構造特徴点情報IFに含まれている場合には、特徴点出力部42は、構造特徴点の分類毎に信頼度が最大となる座標値を構造特徴点位置Pdとして定める。そして、特徴点出力部42は、対象の分類を示すラベルLbと当該構造特徴点位置Pdとを関連付けて構造照合部43に出力する。なお、特徴点出力部42は、ある分類に関する信頼度の最大値が予め定めた閾値未満である場合には、当該分類に対応するラベルLb及び構造特徴点位置Pdを構造照合部43に出力しなくともよい。
 一方、構造特徴点の分類毎の画像内の座標値が構造特徴点情報IFに含まれている場合には、特徴点出力部42は、当該座標値を構造特徴点位置Pdとして定め、対象の分類を示すラベルLbと関連付けて構造照合部43に出力する。なお、構造特徴点情報IFに含まれている座標値が画像サイズに依存しないように正規化された値である場合には、特徴点出力部42は、構造特徴点情報IFに含まれている座標値に撮像画像Imの画像サイズを乗じることで、構造特徴点位置Pdを算出する。
 構造照合部43は、構造データ記憶部22から抽出した構造データと、特徴点出力部42から供給される構造特徴点位置Pd及びラベルLbの複数の組合せとを照合することで、デバイス座標系から構造座標系に変換するために必要な座標変換情報「Ic」を生成する。この場合、構造照合部43は、特徴抽出を行った撮像画像Imの生成時の位置姿勢変化量Apと、対象構造物のサイズ情報とに基づき、各構造特徴点位置Pdのデバイス座標系での位置を特定する。そして、構造照合部43は、デバイス座標系での構造特徴点の検出位置と、構造データの登録位置情報が示す構造特徴点の位置とを、ラベル毎に対応付けて照合することで、座標変換情報Icを生成する。座標変換情報Icは、例えば、3次元空間同士の座標変換を行うために一般的に用いられる回転行列及び並進ベクトルの組み合わせである。なお、座標変換情報Icは、構造座標系をデバイス座標系へ変換する際に用いられる情報であることに限定されず、デバイス座標系を構造座標系へ変換する際に用いられる情報であってもよい。ここで、構造座標系からデバイス座標系へ変換するための回転行列及び並進ベクトルは、デバイス座標系から構造座標系へ変換するための回転行列(上述の回転行列の逆行列)及び並進ベクトル(符号反転した上述の並進ベクトル)に変換可能である。座標変換情報Icの生成方法の具体例については後述する。
 反映部44は、構造照合部43から供給される座標変換情報Icを、仮想オブジェクト取得部40から供給される指定表示情報Idに反映させることで、光学素子11上に投影させる仮想オブジェクトを示す表示信号「Sd」を生成する。この場合、反映部44は、座標変換情報Icによりデバイス座標系を構造座標系と一致させた上で、指定表示情報Idに基づく表示信号Sdを生成する。光源制御部45は、反映部44から供給される表示信号Sdに基づき、光源ユニット10の光源(例えばRGBに対応する各光源)を駆動するための駆動タイミング及び光量などを指示する駆動信号を生成し、生成した駆動信号を光源ユニット10へ供給する。
 なお、キャリブレーション完了後(即ち座標変換情報Icを算出後)の各処理(即ち反映部44及び光源制御部45の処理)の説明は一例であり、既存のAR製品などにおいて適用される任意の方法により、仮想オブジェクトを所望の風景位置に重畳させる仮想オブジェクトを表示させてもよい。例えば、このような技術を開示する文献の例として、特開2015-116336号公報、特開2016-525741号公報などが存在する。これらの文献に示されるように、表示装置1は、ユーザの視線検出などを行い、仮想オブジェクトが適切に視認されるように制御を行う。
 なお、図3において説明した仮想オブジェクト取得部40、特徴点情報出力部41、特徴点出力部42、構造照合部43、反映部44及び光源制御部45の各構成要素は、例えば、制御部17がプログラムを実行することによって実現できる。より具体的には、各構成要素は、記憶部14に格納されたプログラムを、制御部17が実行することによって実現され得る。また、必要なプログラムを任意の不揮発性記録媒体に記録しておき、必要に応じてインストールすることで、各構成要素を実現するようにしてもよい。なお、これらの各構成要素は、プログラムによるソフトウェアで実現することに限ることなく、ハードウェア、ファームウェア、及びソフトウェアのうちのいずれかの組み合わせ等により実現してもよい。また、これらの各構成要素は、例えばFPGA(field-programmable gate array)又はマイコン等の、ユーザがプログラミング可能な集積回路を用いて実現してもよい。この場合、この集積回路を用いて、上記の各構成要素から構成されるプログラムを実現してもよい。このように、各構成要素は、プロセッサ以外のハードウェアにより実現されてもよい。以上のことは、後述する他の実施の形態においても同様である。
 (3)識別器の学習
 ここで、パラメータ記憶部21に記憶する識別器のパラメータを生成するための学習について補足説明する。
 図4は、パラメータ記憶部21に記憶する識別器のパラメータを生成する学習装置3の概略構成を示す。学習装置3は、学習データ記憶部23を参照可能な装置であって、表示装置1であってもよく、表示装置1以外の任意の装置(例えばパーソナルコンピュータ等)であってもよい。学習装置3は、表示装置1がユーザに使用される前段階(表示装置1の製造段階等)において、学習データ記憶部23を参照し、パラメータ記憶部21に記憶する識別器のパラメータを生成するための学習を行う。
 学習データ記憶部23には、対象構造物が撮像された学習用の画像(学習画像)と、当該学習画像における各構造特徴点の位置及びラベルを示す正解データとの組み合わせが複数組記憶されている。この場合、好適には、複数の場所に存在する各バリエーションの対象構造物(例えばテニスコートの場合には各サーフェスに対応したテニスコート)が撮像された学習画像が学習データ記憶部23に記憶されているとよい。同様に、対象構造物を種々の撮像環境(例えば照明の有無や度合の異なる環境)において撮像した学習画像が学習データ記憶部23に記憶されているとよい。このような学習画像を用いることにより、対象構造物のバリエーション及び撮像環境の変化に対して頑強な識別器を好適に学習することが可能となる。
 また、学習装置3は、機能的には、学習部31と、フォーマット部32とを有する。
 フォーマット部32は、学習データ記憶部23に記憶された正解データを、構造特徴点情報IFと同様の形式に変更する。例えば、ラベル毎の構造特徴点に対する信頼度マップを出力するように識別器が学習される場合、フォーマット部32は、正解データが示す構造特徴点の座標位置が最大値となる信頼度の正規分布を示す信頼度マップを生成する。また、ラベル毎の構造特徴点に対する座標値を出力するように識別器が学習される場合には、フォーマット部32は、正解データが示す構造特徴点の座標位置を、画像サイズに依存しない0から1の値に正規化した座標値を有する2次元座標に変換する。
 学習部31は、撮像画像Imと、フォーマット部32により正解データを適切な形式に変換した情報とに基づき、学習モデル(識別器)の学習を行う。この場合、学習部31は、例えば、学習画像が識別器に入力された場合に識別器が出力する情報と、フォーマット部32から供給される正解情報との誤差(損失)が最小となるように、識別器のパラメータを決定する。損失を最小化するように上述のパラメータを決定するアルゴリズムは、勾配降下法や誤差逆伝播法などの機械学習において用いられる任意の学習アルゴリズムであってもよい。そして、学習部31は、学習後の識別器のパラメータを、パラメータ記憶部21に記憶する。
 表示装置1は、キャリブレーション処理において、上記のように学習された識別器のパラメータを用いることで、識別器を構成する。この場合、識別器は、各バリエーションの対象構造物及び種々の撮像環境に対応する学習データを用いて学習されていることにより、対象構造物のバリエーション及び撮像環境の変化によらず正確な構造特徴点情報IFを好適に出力する。
 (4)構造特徴点情報の生成例
 次に、特徴点情報出力部41が生成する構造特徴点情報IFの具体例について説明する。
 図5(A)及び図5(B)は、対象構造物が撮像された撮像画像Imの例を示す。図5(A)に示す撮像画像Imには、対象構造物としてテニスコートが撮像されており、図5(B)に示す撮像画像Imには、対象構造物として競泳用プールが撮像されている。そして、図5(A)に示す撮像画像Imには、合計16個の構造特徴点「P1」~「P16」が存在し、図5(B)に示す撮像画像Imには、合計9個の構造特徴点「P20」~「P29」が存在している。従って、図5(A)に示す撮像画像Imをキャリブレーションに使用する場合には、特徴点情報出力部41は、16個の構造特徴点P1~P16の夫々に対応する構造特徴点情報IFを生成する。また、図5(B)に示す撮像画像Imをキャリブレーションに使用する場合には、構造照合部43は、9個の構造特徴点P20~P28の各々に対応する構造特徴点情報IFを生成する。なお、後述するように、特徴点情報出力部41は、これらの全ての構造特徴点に対する構造特徴点情報IFを生成する必要はなく、一直線上に並んでいない少なくとも3つの構造特徴点に対する構造特徴点情報IFを生成すればよい。また、デバイス座標系(第1座標系)と構造座標系(第2座標系)の一軸が等価と仮定できれば、2つの構造特徴点のみで構造特徴点情報IFを生成してもよい。例えば、デバイス座標系の鉛直軸と構造座標系の鉛直軸が同じであると仮定すると、対象構造物であるスポーツ競技フィールドの面は2点のみで決定することができる。一方、デバイス座標系(第1座標系)の軸と構造座標系(第2座標系)の軸とが夫々異なる場合には、上述したように、特徴点情報出力部41は、一直線上に並んでいない少なくとも3つの構造特徴点に対する構造特徴点情報IFを生成する。
 図6は、図5(A)に示す撮像画像Imに基づき生成された構造特徴点情報IFを撮像画像Im上に明示した図である。ここでは、一例として、特徴点情報出力部41は、構造特徴点情報IFとして、構造特徴点の分類(ラベル)毎の構造特徴点の位置の信頼度マップを出力するものとする。図6は、説明便宜上、信頼度が0とならない主要な部分領域(ここでは3×3又は4×4の矩形領域)のみに対して信頼度マップを明示している。信頼度マップの各画素は、濃いほど信頼度が高いことを示すものとする。また、図6では、各構造特徴点の信頼度マップと共に、各信頼度マップが対応する構造特徴点のラベル「Lb1」~「Lb16」を明示している。ラベルLb1~Lb16は、夫々、構造特徴点P1~P16の分類に夫々対応している。なお、図6では、全ての構造特徴点の信頼度マップを1つの画像内に表示しているが、実際には、ラベル毎の信頼度マップが識別器から出力される。
 (5)座標変換情報の生成
 次に、構造照合部43による座標変換情報Icの生成処理について説明する。構造照合部43は、デバイス座標系での構造特徴点の位置と、構造座標系で表される構造データの構造特徴点の位置とをラベル毎に対応付けて照合することで、デバイス座標系を構造座標系に変換するのに必要な移動量及び回転量を示す座標変換情報Icを生成する。
 座標変換情報Icの生成処理について、図7及び図8を参照して具体的に説明する。図7は、デバイス座標系と構造座標系との関係を示す図である。
 デバイス座標系は、表示装置1が基準とする3次元座標系である。表示装置1は、例えば、起動時の表示装置1の位置及び姿勢を基準として、デバイス座標系を決定する。具体的には、表示装置1は、表示装置1の起動時のカメラ15の撮像方向及び撮像画像Imの縦方向及び横方向を各軸とする3次元座標系、又は、表示装置1の起動時の表示装置1の姿勢に基づく他の任意の3次元座標系を、デバイス座標系と定める。
 また、構造座標系は、対象構造物を基準として設定された座標系であり、構造データにおいて採用されている座標系に相当する。図7は、一例として、図5(A)及び図6に示すテニスコートの構造特徴点P13を原点とし、テニスコートの長手方向及び短手方向及び垂直方向を軸とした構造座標系を設定した例を示している。図7の例では、構造座標系の3軸方向を、対象構造物であるテニスコートの長手方向、短手方向及び垂直方向に夫々対応させているが、これに代えて、緯度、経度、高度の方向を構造座標系の3軸方向として定めてもよい。
 ここで、まず、構造照合部43は、特徴点出力部42が出力する構造特徴点位置PdとラベルLbの各組について、位置姿勢変化量Apに基づき、デバイス座標系におけるベクトル(「構造特徴点ベクトル」とも呼ぶ。)を定める。図7は、図6に示すラベルLb1に対応する構造特徴点ベクトル「V1」と、ラベルLb4に対応する構造特徴点ベクトル「V4」と、ラベルLb16に対応する構造特徴点ベクトル「V16」とを示している。
 ここで、構造特徴点ベクトルの設定方法について詳しく説明する。
 まず、説明便宜上、位置姿勢変化量Apを考慮する前の(即ち位置姿勢変化量Apが0である場合の)構造特徴点ベクトルについて検討する。一般に、撮像画像Imの画素位置ごとにカメラ15からの当該画素が表示する被撮像位置の方向が異なる。よって、構造照合部43は、撮像画像Im内の画素位置を示す構造特徴点位置Pdに基づき、構造特徴点ベクトルの方向を決定する。この場合、構造照合部43は、例えば、画素位置毎に構造特徴点ベクトルの方向を定めたマップを記憶部14に記憶しておき、当該マップを参照することで、各構造特徴点位置Pdから構造特徴点ベクトルの方向を決定する。また、構造照合部43は、構造特徴点ベクトルの原点をデバイス座標系の原点に定める。なお、構造特徴点ベクトルの長さについては規定しない。
 次に、位置姿勢変化量Apを考慮した構造特徴点ベクトルの補正について検討する。構造照合部43は、位置姿勢変化量Apのうち表示装置1の姿勢の変化量に基づき、上述の構造特徴点ベクトルの方向を補正する。この場合、構造照合部43は、例えば、表示装置1の姿勢の変化量と構造特徴点ベクトルの方向の補正量とを定めたマップを記憶部14に記憶しておき、当該マップを参照することで、各構造特徴点位置Pdの構造特徴点ベクトルの方向を補正する。また、構造照合部43は、位置姿勢変化量Apのうち表示装置1の位置の変化量に基づき、構造特徴点ベクトルを平行移動させる。
 そして、構造照合部43は、特定した各構造特徴点ベクトルと、対象構造物のサイズ情報とに基づき、デバイス座標系における対象構造物の各構造特徴点の位置を特定する。図7の例では、構造照合部43は、構造データのサイズ情報を参照し、対象構造物であるテニスコートの長手方向の幅「L1」(即ち構造特徴点P4及び構造特徴点P16間の距離)及び短手方向の幅「L2」(即ち構造特徴点P1及び構造特徴点P4間の距離)を認識する。この場合、構造特徴点ベクトルV1、V4、V16の各延長線上に構造特徴点P1、P4、P16が夫々存在し、かつ、構造特徴点P1及び構造特徴点P4間の距離が幅L2、構造特徴点P4及び構造特徴点P16間の距離が幅L1となる。よって、構造照合部43は、このような条件を満たす構造特徴点P1、P4、P16のデバイス座標系での座標値を算出する。
 図8は、図7に示すデバイス座標系を座標変換する前後の状態を示す。この場合、構造照合部43は、検出した各構造特徴点に関するデバイス座標系での座標値と構造データに記録された構造座標系での座標値とに基づき、デバイス座標系を構造座標系に一致させるように座標変換する。そして、構造照合部43は、この座標変換に必要なデバイス座標系から構造座標系への回転及並進に関する変換パラメータを座標変換情報Icとして算出する。図7の例では、構造照合部43は、これらの構造特徴点P1、P4、P16のデバイス座標系での座標値と、構造データに記録された構造座標系での座標値とが一致するように、デバイス座標系から構造座標系への回転及並進に関する変換パラメータを算出する。このように、構造照合部43は、直線上に並ばない少なくとも3つの構造特徴点を基準として、座標変換情報Icを好適に生成することができる。また、第1座標系と第2座標系の一軸が等価と仮定すれば、少なくとも2つの構造特徴点を用いて座標変換情報Icを生成することができる。例えば、デバイス座標系の鉛直軸と構造座標系の鉛直軸が同じであると仮定すると、対象構造物であるスポーツ競技フィールドの面は2点のみで決定することができる。一方、デバイス座標系(第1座標系)の軸と構造座標系(第2座標系)の軸とが夫々異なる場合には、構造照合部43は、上述したように、一直線上に並んでいない少なくとも3つの構造特徴点を基準として、座標変換情報Icを生成する。
 なお、図7及び図8の例では、構造照合部43は、3つの構造特徴点に基づき、座標変換情報Icを生成したが、これに代えて、4つ以上の構造特徴点に基づき、座標変換情報Icを生成してもよい。この場合、構造照合部43は、各構造特徴点から算出した構造特徴点ベクトルと、サイズ情報が示す各構造特徴点間の距離と、に基づき、最小二乗法などの回帰分析手法を適用することで、各構造特徴点ベクトル上の構造特徴点のデバイス座標系での座標値を算出する。また、構造照合部43は、各構造特徴点のデバイス座標系での座標値と、構造データに記録された構造座標系での座標値とに基づき、最小二乗法等を用いることで、デバイス座標系から構造座標系への回転及並進に関する変換パラメータを算出する。
 ここで、好適には、構造照合部43は、撮像画像Imから検出した構造特徴点の信頼度に基づき、座標変換情報Icの算出に用いるNr個(Nrは3以上の整数)の構造特徴点を選定してもよい。例えば、構造照合部43は、特徴点情報出力部41が算出した構造特徴点情報IFを参照し、各構造特徴点の信頼度を取得する。例えば、特徴点情報出力部41が用いる識別器が構造特徴点毎の信頼度マップを出力する場合には、構造特徴点毎の信頼度マップにおいて最大となる信頼度を、各構造特徴点の信頼度として認識する。そして、構造照合部43は、信頼度が上位Nr個分の構造特徴点を用いて、座標変換情報Icを算出する。これにより、構造照合部43は、信頼性が高い構造特徴点のみを用いて正確な座標変換情報Icを好適に算出することができる。
 他の例では、構造照合部43は、画像の縁部分の画素ではレンズの歪みの影響を受けやすいことを勘案し、各構造特徴点の撮像画像Im内の検出位置(即ち構造特徴点位置Pd)に応じ、座標変換情報Icの算出に用いる構造特徴点を選定してもよい。例えば、特徴点情報出力部41は、レンズの歪みの影響が実質的に生じない撮像画像Im内の領域の情報を予め記憶部14等に記憶しておき、当該領域内において検出された構造特徴点を、座標変換情報Icの算出に用いる構造特徴点として選定する。この態様によっても、構造照合部43は、レンズの歪みの影響が実質的に生じない構造特徴点の情報を用いて正確な座標変換情報Icを好適に算出することができる。
 なお、表示装置1は、1枚の撮像画像Imから座標変換情報Icの算出に用いる構造特徴点を3個以上検出できなかった場合には、複数の撮像画像Imから検出される構造特徴点に基づき、座標変換情報Icを算出してもよい。この場合であっても、構造照合部43は、夫々の撮像画像Imで検出される構造特徴点に対する構造特徴点ベクトルを、各撮像画像Imの撮像時の位置姿勢変化量Apを用いて補正する。これにより、構造照合部43は、各撮像画像Imの撮像時の位置及び姿勢の変化の影響を受けることなく複数の撮像画像Imに基づき座標変換情報Icを好適に算出することができる。
 (6)処理フロー
 図9は、第1実施形態において制御部17が実行する仮想オブジェクトの表示処理に関する処理概要を示すフローチャートの一例である。
 まず、制御部17は、表示装置1の起動を検知する(ステップS11)。この場合、制御部17は、表示装置1の起動時の表示装置1の姿勢及び位置を基準としたデバイス座標系を設定する(ステップS12)。その後、制御部17は、カメラ15が生成する撮像画像Imを取得すると共に、位置姿勢検出センサ16が出力する検出信号に基づく位置姿勢変化量Apを取得する(ステップS13)。制御部17は、ステップS13で取得した撮像画像Im及び位置姿勢変化量Apの組合せを、センサデータ記憶部20に記憶する。
 そして、制御部17は、仮想オブジェクトの表示要求があるか否か判定する(ステップS14)。例えば、仮想オブジェクト取得部40は、興行者が管理する図示しないサーバ装置から仮想オブジェクトの表示を指示する配信情報を受信した場合に、仮想オブジェクトの表示要求があると判定する。そして、仮想オブジェクトの表示要求がない場合(ステップS14;No)、引き続きステップS13において撮像画像Im及び位置姿勢変化量Apの取得を行う。
 一方、仮想オブジェクトの表示要求があった場合(ステップS14;Yes)、制御部17は、伽リブレーション処理を実行する(ステップS15)。このキャリブレーション処理の手順の詳細は図10を参照して後述する。
 次に、制御部17の反映部44は、ステップS15のキャリブレーション処理で得られた座標変換情報Icに基づき、表示要求において指定された仮想オブジェクト及び表示位置に対応する仮想オブジェクトを表示するための表示信号Sdを生成する(ステップS16)。なお、この場合、実際には、制御部17は、種々の従来のAR表示製品と同様、ユーザの視線方向及び位置姿勢変化量Ap等を考慮してAR座標系においてユーザが視認する空間を認識し、当該空間内において仮想オブジェクトが指定された位置で表示されるように表示信号Sdを生成する。そして、制御部17の光源制御部45は、表示信号Sdに基づき、光源ユニット10の射出制御を行う(ステップS17)。
 なお、図9に示すフローチャートの処理手順は一例であり、この処理手順に対し種々の変更を行うことができる。
 例えば、制御部17は、ステップS15のキャリブレーション処理を仮想オブジェクト表示要求がある度に実行しているが、これに限られない。これに代えて、制御部17は、前回のキャリブレーション処理から所定時間以上経過した場合に限り、キャリブレーション処理を行ってもよい。このように、制御部17は、キャリブレーション処理を、表示装置1の起動後少なくとも1度行えばよい。
 また、制御部17は、表示装置1の起動時の表示装置1の位置及び姿勢を基準としてデバイス座標系を決定しているが、これに限られない。これに代えて、例えば、制御部17は、表示装置1の起動後に最初に表示要求があったとき(即ち最初にキャリブレーション処理を実行したとき)の表示装置1の位置及び姿勢を基準として、デバイス座標系を決定してもよい。他の例では、制御部17は、表示要求がある度に、当該表示要求時(即ちキャリブレーション処理実行時)の表示装置1の位置及び姿勢を基準としてデバイス座標系を再設定してもよい。この場合、後述する座標変換情報Icの生成処理には位置姿勢変化量Apを使用する必要がない。
 図10は、図9のステップS15のキャリブレーション処理の詳細な処理手順を示すフローチャートの一例である。
 まず、制御部17の特徴点情報出力部41は、センサデータ記憶部20等から取得する撮像画像Imに基づき、対象構造物の構造特徴点に関する構造特徴点情報IFを出力する(ステップS21)。この場合、特徴点情報出力部41は、パラメータ記憶部21から取得するパラメータに基づき識別器を構成し、当該識別器に撮像画像Imを入力することで構造特徴点情報IFを取得する。そして、特徴点出力部42は、特徴点情報出力部41が出力する構造特徴点情報IFに基づき、各構造特徴点の構造特徴点位置Pd及びラベルLbの組合せを出力する(ステップS22)。
 次に、構造照合部43は、図9のステップS13で算出された位置姿勢変化量Apと、構造データ記憶部22が記憶する対象構造物のサイズ情報と、に基づき、デバイス座標系での各構造特徴点の検出位置を特定する(ステップS23)。この場合、構造照合部43は、図7及び図8を用いて説明したように、構造特徴点位置Pd及び位置姿勢変化量Apに基づき特定される構造特徴点ベクトルと、構造特徴点間の距離とに基づき、デバイス座標系での各構造特徴点の検出位置を特定する。
 そして、構造照合部43は、構造特徴点のラベル毎に、ステップS23で特定した構造特徴点のデバイス座標系での検出位置と、構造データに含まれる登録位置情報が示す構造座標系の構造特徴点の位置と、を夫々対応付けて照合を行う(ステップS24)。そして、構造照合部43は、ラベル毎に照合した位置同士が一致するように、デバイス座標系から構造座標系へ変換するための座標変換情報Icを算出する(ステップS25)。
 次に、第1実施形態の効果について補足説明する。
 表示装置1は、パラメータ記憶部21を参照して構造特徴点情報IFを出力するための識別器を構成する。この場合、種々の撮像環境及び対象構造物のバリエーションに対応した学習画像を用いて識別器を予め学習しておくことができるため、表示装置1は、撮像環境の変化及び対象構造物のバリエーションに対してロバストに構造特徴点情報IFを生成することができる。
 また、表示装置1は、キャリブレーション処理において撮像画像Imから予め登録されている(即ち既にラベルが登録された)構造特徴点のみを抽出した情報を、構造データに登録された構造特徴点の情報と照合させる。これにより、座標変換情報Icを算出するための照合処理に要する計算量を大幅に削減し、かつ、撮像画像Imに含まれるノイズ(即ち対象構造物以外の特徴点)の抽出に起因した影響等を受けないロバストな座標変換情報Icの算出が可能となる。なお、座標変換情報Icを算出する際には、対象構造物の実スケールを加味するため、競技ルールに基づき予め定められた又は設計時等に既に計測された対象構造物の実スケールに関する情報を、サイズ情報として構造データに含めて予め記憶しておけばよい。
 <第2実施形態>
 図11は、第2実施形態における表示システムの構成を示す。図11に示すように、第2実施形態に係る表示システムは、表示装置1Aと、サーバ装置2とを有する。第2実施形態では、キャリブレーション処理等を、表示装置1Aの代わりにサーバ装置2が実行する点において、第1実施形態と異なる。以後では、第1実施形態と同様の構成要素については適宜同一符号を付し、その説明を省略する。
 表示装置1Aは、サーバ装置2がキャリブレーション処理等を行うために必要な情報であるアップロード信号「S1」をサーバ装置2に送信する。この場合、アップロード信号S1には、例えば、カメラ15が生成する撮像画像Im及び位置姿勢検出センサ16の出力に基づき検出される位置姿勢変化量Apが含まれている。そして、表示装置1Aは、サーバ装置2から送信される配信信号「S2」を受信した場合、配信信号S2に基づき、光源ユニット10の光の射出制御を行うことで、仮想オブジェクトを表示する。例えば、配信信号S2は、第1実施形態の表示信号Sdに相当する情報を含んでおり、表示装置1Aは、配信信号S2の受信後、第1実施形態の光源制御部45と同様の処理を行うことで、光源ユニット10に仮想オブジェクトを表示するための光を射出させる。
 サーバ装置2は、例えば、興行者が管理するサーバ装置であり、表示装置1Aから受信するアップロード信号S1に基づき、配信信号S2の生成及び表示装置1Aへの配信信号S2の配信を行う。図12は、サーバ装置2のブロック図である。サーバ装置2は、入力部26と、制御部27と、通信部28と、記憶部29とを有する。
 記憶部29は、制御部27がサーバ装置2の制御に必要な種々の情報を記憶する不揮発性メモリである。記憶部29には、制御部27が実行するプログラムが記憶される。記憶部29は、センサデータ記憶部20と、パラメータ記憶部21と、構造データ記憶部22とを有する。センサデータ記憶部20には、制御部27の制御に基づき、アップロード信号S1に含まれる撮像画像Im及び位置姿勢変化量Apが記憶される。なお、記憶部29は、サーバ装置2に接続又は内蔵されたハードディスクなどの外部記憶装置であってもよく、フラッシュメモリなどの記憶媒体であってもよい。また、記憶部29は、サーバ装置2とデータ通信を行うサーバ装置(即ち、他の装置から参照可能に情報を記憶する装置)であってもよい。また、この場合、記憶部29は、複数のサーバ装置から構成され、センサデータ記憶部20と、パラメータ記憶部21と、構造データ記憶部22とを分散して記憶してもよい。
 制御部27は、例えばCPU、GPUなどのプロセッサ、作業メモリとして機能する揮発性メモリなどを有しており、サーバ装置2の全体的な制御を行う。制御部27は、入力部26へのユーザ入力等に基づき、仮想オブジェクトとして表示させる仮想オブジェクト及び表示位置の情報(即ち第1実施形態の指定表示情報Idに相当する情報)を生成する。さらに、制御部27は、センサデータ記憶部20、パラメータ記憶部21、構造データ記憶部22を参照することで、図10に示されるキャリブレーション処理を実行し、配信信号S2を生成する。このように、制御部27は、図3に示す仮想オブジェクト取得部40、特徴点情報出力部41、特徴点出力部42、構造照合部43、反映部44に相当する機能を含む。
 図13は、第2実施形態においてサーバ装置2の制御部27が実行する処理手順を示すフローチャートの一例である。
 まず、制御部27は、通信部28を介し、撮像画像Im及び位置姿勢変化量Apなどを含むアップロード信号S1を表示装置1Aから受信する(ステップS31)。この場合、制御部27は、アップロード信号S1に基づきセンサデータ記憶部20に記憶させるデータを更新する。そして、制御部27は、仮想オブジェクトの表示タイミングか否か判定する(ステップS32)。そして、制御部27は、表示タイミングではない場合(ステップS32;No)、引き続きステップS31においてアップロード信号S1を表示装置1Aから受信する。
 一方、制御部27は、表示タイミングである場合(ステップS32;Yes)、ステップS31で受信した最新のアップロード信号S1等に基づき、キャリブレーション処理を実行する。この場合、制御部27は、図10に示されるフローチャートを実行する。そして、制御部27は、キャリブレーション処理で得られた座標変換情報Icに基づき、仮想オブジェクトを表示装置1Aが表示するための配信信号S2を生成する(ステップS34)。そして、制御部27は、生成した配信信号S2を、通信部28により表示装置1Aに送信する(ステップS35)。その後、配信信号S2を受信した表示装置1Aは、配信信号S2に基づき光源ユニット10を制御することで、仮想オブジェクトを表示する。
 以上のように、第2実施形態によっても、表示システムは、表示装置1Aによる仮想オブジェクトの表示に必要な座標変換情報Icを的確に算出し、仮想オブジェクトを好適にユーザに視認させることができる。
 なお、第2実施形態において、キャリブレーション処理等をサーバ装置2が行う代わりに、表示装置1Aが行ってもよい。この場合、表示装置1Aは、サーバ装置2からキャリブレーション処理に必要な情報を適宜受信することで、図9及び図10に示すフローチャートの処理を実行する。この態様であっても、表示システムは、表示装置1Aのユーザに好適に仮想オブジェクトを視認させることができる。
 <第3実施形態>
 図14は、第3実施形態における情報処理装置4の概略構成を示す。図14に示すように、情報処理装置4は、取得部41Aと、構造照合部43Aとを有する。情報処理装置4は、例えば、第1実施形態における表示装置1の制御部17又は第2実施形態におけるサーバ装置2の制御部27により実現される。
 取得部41Aは、風景に重ねて仮想オブジェクトを表示する表示装置の撮像部15Aが撮像した撮像画像から、対象構造物の構造的な特徴点である構造特徴点の分類情報及び当該構造特徴点の位置情報の複数の組合せを取得する。上述の表示装置は、例えば、第1実施形態の表示装置1又は第2実施形態の表示装置1Aである。また、情報処理装置4と表示装置は同一装置であってもよい。「構造特徴点の分類情報及び当該構造特徴点の位置情報の複数の組合せ」は、例えば、第1実施形態又は第2実施形態における、複数の構造特徴点に対する構造特徴点位置PdとラベルLbの複数の組合せに相当する。
 構造照合部43Aは、対象構造物の各構造特徴点の位置及び分類に関する情報を含む構造データ「Ds」と、上述の複数の組合せとを照合することで、表示装置が基準とする座標系である第1座標系と、構造データDsにおいて用いられる座標系である第2座標系との間の座標変換に関する座標変換情報を生成する。第1座標系は、例えば、第1実施形態及び第2実施形態におけるデバイス座標系に相当する。また、第2座標系は、例えば、第1実施形態及び第2実施形態における構造座標系に相当する。
 この態様によれば、情報処理装置4は、表示装置が基準とする座標系と構造データDsにおいて基準とする座標系との間の座標変換に関する座標変換情報を好適に生成することができる。
 なお、上述した各実施形態において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータであるプロセッサ等に供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
 その他、上記の実施形態(変形例を含む、以下同じ)の一部又は全部は、以下の付記のようにも記載され得るが以下には限られない。
[付記1]
 風景に重ねて仮想オブジェクトを表示する表示装置の撮像部が撮像した撮像画像から、対象構造物の構造的な特徴点である構造特徴点の分類情報及び当該構造特徴点の位置情報の複数の組合せを取得する取得部と、
 前記対象構造物の各構造特徴点の位置及び分類に関する情報を含む構造データと、前記複数の組合せとを照合することで、前記表示装置が基準とする座標系である第1座標系と、前記構造データにおいて用いられる座標系である第2座標系との間の座標変換に関する座標変換情報を生成する構造照合部と、
を有する情報処理装置。
[付記2]
 前記取得部は、前記対象構造物又は当該対象構造物と同一種類の対象構造物を撮像した複数の画像と、当該対象構造物の構造特徴点の各々の前記画像内の位置及び分類に関する正解データと、を用いて学習された識別器のパラメータに基づき前記識別器を構成し、当該識別器に前記撮像画像を入力することで、前記複数の組合せを取得する、付記1に記載の情報処理装置。「同一種類」は、用途が同一であればよい。例えば、テニスコートが対象物構造物の場合、サーフェスが異なる複数のテニスコートは、同一種類の対象構造物に該当する。
[付記3]
 前記識別器は、前記撮像画像から前記構造特徴点の分類毎の信頼度マップを出力し、
 前記取得部は、前記構造特徴点の分類毎に前記信頼度マップが示す信頼度が最大となる前記撮像画像内の位置に基づき、前記複数の組合せを決定する、付記2に記載の情報処理装置。
[付記4]
 前記識別器は、前記撮像画像から前記構造特徴点の分類毎の座標値を出力し、
 前記取得部は、前記構造特徴点の分類毎の座標値に基づき、前記複数の組合せを決定する、付記2に記載の情報処理装置。
[付記5]
 前記構造照合部は、前記第1座標系と前記第2座標系の一軸が等価な場合、少なくとも2つの構造特徴点に関する前記組合せと、前記構造データとを照合することで、前記座標変換情報を生成し、前記第1座標系の軸と前記第2座標系の軸とが夫々異なる場合、少なくとも3つの構造特徴点に関する前記組合せと、前記構造データとを照合することで、前記座標変換情報を生成する、付記1~4のいずれか一項に記載の情報処理装置。
[付記6]
 前記構造照合部は、前記取得部が取得する前記構造特徴点の位置情報の信頼度に基づき、前記構造データと照合する構造特徴点を選定する、付記5に記載の情報処理装置。
[付記7]
 前記構造照合部は、前記取得部が取得する前記構造特徴点の位置情報が示す前記撮像画像内の位置に基づき、前記前記構造データと照合する構造特徴点を選定する、付記5に記載の情報処理装置。
[付記8]
 前記構造照合部は、
 前記対象構造物のサイズ情報と、前記取得部が取得した前記構造特徴点の位置情報とに基づき特定される、前記第1座標系における前記構造特徴点の位置と、
 前記構造データが示す前記第2座標系における当該構造特徴点の位置と、を照合することで、前記座標変換情報を生成する、付記1~7のいずれか一項に記載の情報処理装置。
[付記9]
 前記構造照合部は、前記サイズ情報と、前記取得部が取得した前記構造特徴点の位置情報と、前記第1座標系が基準とする前記表示装置の位置姿勢に対する前記撮像画像の撮像時の前記表示装置の位置姿勢の変化量と、に基づき、前記第1座標系における前記構造特徴点の各々の位置を特定する、付記8に記載の情報処理装置。
[付記10]
 前記情報処理装置は、前記表示装置であって、
 前記仮想オブジェクトを表示するための表示光を射出する光源ユニットと、
 前記表示光の少なくとも一部を反射することで、前記仮想オブジェクトを風景に重ねて観察者に視認させる光学素子と、
をさらに有する、付記1~9のいずれか一項に記載の情報処理装置。
[付記11]
 前記情報処理装置は、前記表示装置と通信を行うサーバ装置であって、
 前記撮像画像を前記表示装置から受信し、かつ、前記座標変換情報に基づき生成した表示信号を、前記表示装置に送信する通信部をさらに有する、付記1~9のいずれか一項に記載の情報処理装置。
[付記12]
 情報処理装置が実行する制御方法であって、
 風景に重ねて仮想オブジェクトを表示する表示装置の撮像部が撮像した撮像画像から、対象構造物の構造的な特徴点である構造特徴点の分類情報及び当該構造特徴点の位置情報の複数の組合せを取得し、
 前記対象構造物の各構造特徴点の位置及び分類に関する情報を含む構造データと、前記複数の組合せとを照合することで、前記表示装置が基準とする座標系である第1座標系と、前記構造データにおいて用いられる座標系である第2座標系との間の座標変換に関する座標変換情報を生成する、制御方法。
[付記13]
 風景に重ねて仮想オブジェクトを表示する表示装置の撮像部が撮像した撮像画像から、対象構造物の構造的な特徴点である構造特徴点の分類情報及び当該構造特徴点の位置情報の複数の組合せを取得する取得部と、
 前記対象構造物の各構造特徴点の位置及び分類に関する情報を含む構造データと、前記複数の組合せとを照合することで、前記表示装置が基準とする座標系である第1座標系と、前記構造データにおいて用いられる座標系である第2座標系との間の座標変換に関する座標変換情報を生成する構造照合部
としてコンピュータを機能させるプログラムを格納する記憶媒体。
 以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。すなわち、本願発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。また、引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。
 1、1A 表示装置
 2 サーバ装置
 3 学習装置
 4 情報処理装置
 10 光源ユニット
 11 光学素子
 12 通信部
 13 入力部
 14 記憶部
 15 カメラ
 16 位置姿勢検出センサ
 20 センサデータ記憶部
 21 パラメータ記憶部
 22 構造データ記憶部

Claims (13)

  1.  風景に重ねて仮想オブジェクトを表示する表示装置の撮像部が撮像した撮像画像から、対象構造物の構造的な特徴点である構造特徴点の分類情報及び当該構造特徴点の位置情報の複数の組合せを取得する取得部と、
     前記対象構造物の各構造特徴点の位置及び分類に関する情報を含む構造データと、前記複数の組合せとを照合することで、前記表示装置が基準とする座標系である第1座標系と、前記構造データにおいて用いられる座標系である第2座標系との間の座標変換に関する座標変換情報を生成する構造照合部と、
    を有する情報処理装置。
  2.  前記取得部は、前記対象構造物又は当該対象構造物と同一種類の対象構造物を撮像した複数の画像と、当該対象構造物の構造特徴点の各々の前記画像内の位置及び分類に関する正解データと、を用いて学習された識別器のパラメータに基づき前記識別器を構成し、当該識別器に前記撮像画像を入力することで、前記複数の組合せを取得する、請求項1に記載の情報処理装置。
  3.  前記識別器は、前記撮像画像から前記構造特徴点の分類毎の信頼度マップを出力し、
     前記取得部は、前記構造特徴点の分類毎に前記信頼度マップが示す信頼度が最大となる前記撮像画像内の位置に基づき、前記複数の組合せを決定する、請求項2に記載の情報処理装置。
  4.  前記識別器は、前記撮像画像から前記構造特徴点の分類毎の座標値を出力し、
     前記取得部は、前記構造特徴点の分類毎の座標値に基づき、前記複数の組合せを決定する、請求項2に記載の情報処理装置。
  5.  前記構造照合部は、前記第1座標系と前記第2座標系の一軸が等価な場合、少なくとも2つの構造特徴点に関する前記組合せと、前記構造データとを照合することで、前記座標変換情報を生成し、前記第1座標系の軸と前記第2座標系の軸とが夫々異なる場合、少なくとも3つの構造特徴点に関する前記組合せと、前記構造データとを照合することで、前記座標変換情報を生成する、請求項1~4のいずれか一項に記載の情報処理装置。
  6.  前記構造照合部は、前記取得部が取得する前記構造特徴点の位置情報の信頼度に基づき、前記構造データと照合する構造特徴点を選定する、請求項5に記載の情報処理装置。
  7.  前記構造照合部は、前記取得部が取得する前記構造特徴点の位置情報が示す前記撮像画像内の位置に基づき、前記構造データと照合する構造特徴点を選定する、請求項5に記載の情報処理装置。
  8.  前記構造照合部は、
     前記対象構造物のサイズ情報と、前記取得部が取得した前記構造特徴点の位置情報とに基づき特定される、前記第1座標系における前記構造特徴点の位置と、
     前記構造データが示す前記第2座標系における当該構造特徴点の位置と、を照合することで、前記座標変換情報を生成する、請求項1~7のいずれか一項に記載の情報処理装置。
  9.  前記構造照合部は、前記サイズ情報と、前記取得部が取得した前記構造特徴点の位置情報と、前記第1座標系が基準とする前記表示装置の位置姿勢に対する前記撮像画像の撮像時の前記表示装置の位置姿勢の変化量と、に基づき、前記第1座標系における前記構造特徴点の各々の位置を特定する、請求項8に記載の情報処理装置。
  10.  前記情報処理装置は、前記表示装置であって、
     前記仮想オブジェクトを表示するための表示光を射出する光源ユニットと、
     前記表示光の少なくとも一部を反射することで、前記仮想オブジェクトを風景に重ねて観察者に視認させる光学素子と、
    をさらに有する、請求項1~9のいずれか一項に記載の情報処理装置。
  11.  前記情報処理装置は、前記表示装置と通信を行うサーバ装置であって、
     前記撮像画像を前記表示装置から受信し、かつ、前記座標変換情報に基づき生成した表示信号を、前記表示装置に送信する通信部をさらに有する、請求項1~9のいずれか一項に記載の情報処理装置。
  12.  情報処理装置が実行する制御方法であって、
     風景に重ねて仮想オブジェクトを表示する表示装置の撮像部が撮像した撮像画像から、対象構造物の構造的な特徴点である構造特徴点の分類情報及び当該構造特徴点の位置情報の複数の組合せを取得し、
     前記対象構造物の各構造特徴点の位置及び分類に関する情報を含む構造データと、前記複数の組合せとを照合することで、前記表示装置が基準とする座標系である第1座標系と、前記構造データにおいて用いられる座標系である第2座標系との間の座標変換に関する座標変換情報を生成する、制御方法。
  13.  風景に重ねて仮想オブジェクトを表示する表示装置の撮像部が撮像した撮像画像から、対象構造物の構造的な特徴点である構造特徴点の分類情報及び当該構造特徴点の位置情報の複数の組合せを取得する取得部と、
     前記対象構造物の各構造特徴点の位置及び分類に関する情報を含む構造データと、前記複数の組合せとを照合することで、前記表示装置が基準とする座標系である第1座標系と、前記構造データにおいて用いられる座標系である第2座標系との間の座標変換に関する座標変換情報を生成する構造照合部
    としてコンピュータを機能させるプログラムを格納する記憶媒体。
PCT/JP2019/050628 2019-12-24 2019-12-24 情報処理装置、制御方法及び記憶媒体 WO2021130860A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2021566603A JP7494862B2 (ja) 2019-12-24 2019-12-24 情報処理装置、制御方法及びプログラム
US17/783,450 US12072496B2 (en) 2019-12-24 2019-12-24 Information processing device, control method, and storage medium
PCT/JP2019/050628 WO2021130860A1 (ja) 2019-12-24 2019-12-24 情報処理装置、制御方法及び記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/050628 WO2021130860A1 (ja) 2019-12-24 2019-12-24 情報処理装置、制御方法及び記憶媒体

Publications (1)

Publication Number Publication Date
WO2021130860A1 true WO2021130860A1 (ja) 2021-07-01

Family

ID=76575797

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/050628 WO2021130860A1 (ja) 2019-12-24 2019-12-24 情報処理装置、制御方法及び記憶媒体

Country Status (3)

Country Link
US (1) US12072496B2 (ja)
JP (1) JP7494862B2 (ja)
WO (1) WO2021130860A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023119412A1 (ja) * 2021-12-21 2023-06-29 日本電気株式会社 情報処理装置、制御方法及び記憶媒体

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7207520B2 (ja) * 2019-03-26 2023-01-18 日本電気株式会社 興味判定装置、興味判定システム、興味判定方法及びプログラム
US20210383573A1 (en) * 2020-06-03 2021-12-09 Labsphere, Inc. Calibration network systems and methods of using the same
CN116301527B (zh) * 2023-03-13 2023-11-21 北京力控元通科技有限公司 显示控制方法及装置、电子设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010113731A (ja) * 2007-03-09 2010-05-20 Omron Corp 認識処理方法およびこの方法を用いた画像処理装置
JP2014032623A (ja) * 2012-08-06 2014-02-20 Kddi Corp 画像処理装置
JP2014215755A (ja) * 2013-04-24 2014-11-17 キヤノン株式会社 画像処理システム、画像処理装置及び画像処理方法
WO2019130945A1 (ja) * 2017-12-27 2019-07-04 ソニー株式会社 情報処理装置、情報処理方法、プログラム、及び移動体

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5728159B2 (ja) 2010-02-02 2015-06-03 ソニー株式会社 画像処理装置、画像処理方法及びプログラム
JPWO2019130864A1 (ja) * 2017-12-28 2021-01-28 ソニー株式会社 情報処理装置、情報処理方法およびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010113731A (ja) * 2007-03-09 2010-05-20 Omron Corp 認識処理方法およびこの方法を用いた画像処理装置
JP2014032623A (ja) * 2012-08-06 2014-02-20 Kddi Corp 画像処理装置
JP2014215755A (ja) * 2013-04-24 2014-11-17 キヤノン株式会社 画像処理システム、画像処理装置及び画像処理方法
WO2019130945A1 (ja) * 2017-12-27 2019-07-04 ソニー株式会社 情報処理装置、情報処理方法、プログラム、及び移動体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023119412A1 (ja) * 2021-12-21 2023-06-29 日本電気株式会社 情報処理装置、制御方法及び記憶媒体

Also Published As

Publication number Publication date
US12072496B2 (en) 2024-08-27
JP7494862B2 (ja) 2024-06-04
JPWO2021130860A1 (ja) 2021-07-01
US20230011625A1 (en) 2023-01-12

Similar Documents

Publication Publication Date Title
WO2021130860A1 (ja) 情報処理装置、制御方法及び記憶媒体
KR101761751B1 (ko) 직접적인 기하학적 모델링이 행해지는 hmd 보정
US10972715B1 (en) Selective processing or readout of data from one or more imaging sensors included in a depth camera assembly
EP3109825B1 (en) Marker, method of detecting position and pose of marker, and computer program
US10373334B2 (en) Computer program, object tracking method, and object tracking device
US11372249B2 (en) Information processing device and information processing method
WO2017126172A1 (ja) 情報処理装置、情報処理方法、及び記録媒体
US10481679B2 (en) Method and system for optical-inertial tracking of a moving object
CN107004279A (zh) 自然用户界面相机校准
US11156843B2 (en) End-to-end artificial reality calibration testing
JP2009020614A (ja) 複合現実感システムに用いるマーカユニット、複合現実感システム、マーカユニット作成支援システム、及び、マーカユニット作成支援プログラム
WO2012142202A1 (en) Apparatus, systems and methods for providing motion tracking using a personal viewing device
US8625898B2 (en) Computer-readable storage medium, image recognition apparatus, image recognition system, and image recognition method
JP6823403B2 (ja) 情報処理装置、情報処理装置の制御方法、情報処理方法およびプログラム
US20120219177A1 (en) Computer-readable storage medium, image processing apparatus, image processing system, and image processing method
JP2019164420A (ja) 透過型頭部装着型表示装置および透過型頭部装着型表示装置の制御方法、透過型頭部装着型表示装置の制御のためのコンピュータープログラム
EP3714955A1 (en) Video tracking system and method
US20120219178A1 (en) Computer-readable storage medium, image processing apparatus, image processing system, and image processing method
US20220036779A1 (en) Information processing apparatus, information processing method, and recording medium
JP7364052B2 (ja) 情報処理装置、制御方法及びプログラム
WO2023119412A1 (ja) 情報処理装置、制御方法及び記憶媒体
US20230120092A1 (en) Information processing device and information processing method
WO2023281593A1 (ja) 情報処理装置、制御方法及び記憶媒体
WO2023281585A1 (ja) 情報処理装置、制御方法及び記憶媒体
WO2023281587A1 (ja) 情報処理装置、制御方法及び記憶媒体

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19957649

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021566603

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19957649

Country of ref document: EP

Kind code of ref document: A1