The present invention relates to a processing device, a processing system, a processing method, and a non-transitory computer readable medium storing a program.
Patent Literature 1 describes a position recognition system. The position recognition system of Patent Literature 1 extracts a plurality of two-dimensional images with viewpoints and line-of-sight direction vectors attached to point cloud data acquired by a three-dimensional scanner such as light detection and ranging (LiDAR). Then, by matching feature points between the extracted two-dimensional image and the camera image of the object, the position of the object corresponding to the camera image on the point cloud data is identified.
In the position recognition system of Patent Literature 1, point cloud data is converted into image data from various viewpoints and angles of view in advance, and this data is matched with the image data to be processed. Therefore, the point cloud image generation causes problems such as storage area compression. As drones and crawlers (ground mobile robots) become more widely used for surveillance, the amount of data to be acquired will increase, and this problem will become more pronounced.
An object of the present disclosure is to solve such a problem, and to provide a processing device, a processing system, a processing method, and a non-transitory computer readable medium storing a program, which can improve visibility when displaying image data and three-dimensional data while suppressing storage area usage.
A processing device according to the present disclosure, including: an image data input means to which image data acquired by a shooting means for shooting a display object is input; an image data acquisition information input means to which image data acquisition information when the image data is acquired is input; a three-dimensional data input means to which three-dimensional data acquired by a scanning means for scanning the display object is input; a viewpoint image generation means for generating a viewpoint image by determining a position and line-of-sight direction of a viewpoint in the three-dimensional data based on the position and shooting direction of the shooting means in the image data acquisition information, and generating a viewpoint image that projects the three-dimensional data onto a surface orthogonal to the line-of-sight direction; a target area extraction means for matching the image data with the viewpoint image and extracting a target area corresponding to the image data in the viewpoint image; and a three-dimensional data display parameter generation means for generating parameters for displaying the target area.
The processing system according to the present disclosure also includes a three-dimensional data acquisition device that acquires the three-dimensional data by the scanning means for scanning the display object, and the processing device described above.
Furthermore, the processing method according to the present disclosure includes: inputting image data acquired by a shooting means for shooting a display object; inputting image data acquisition information when the image data is acquired; inputting three-dimensional data acquired by a scanning means for scanning the display object; determining a position and line-of-sight direction of a viewpoint in the three-dimensional data based on the position and shooting direction of the shooting means in the image data acquisition information and generating a viewpoint image that projects the three-dimensional data onto a surface orthogonal to the line-of-sight direction; matching the image data with the viewpoint image and extracting a target area corresponding to the image data in the viewpoint image; and generating parameters for displaying the target area.
Furthermore, the program according to the present disclosure causes a computer to execute: inputting image data acquired by a shooting means for shooting a display object; inputting image data acquisition information when the image data is acquired; inputting three-dimensional data acquired by a scanning means for scanning the display object; determining a position and line-of-sight direction of a viewpoint in the three-dimensional data based on the position and shooting direction of the shooting means in the image data acquisition information and generating a viewpoint image that projects the three-dimensional data onto a surface orthogonal to the line-of-sight direction; matching the image data with the viewpoint image and extracting a target area corresponding to the image data in the viewpoint image; and generating parameters for displaying the target area.
The present disclosure provides a processing device, a processing system, a processing method, and a non-transitory computer readable medium storing a program, which can improve visibility when displaying image data and three-dimensional data while suppressing storage area usage.
Hereinafter, example embodiments will be described with reference to the drawings. For clarity of description, in the following description and figures, omission and simplification are made as appropriate. In the figures, the same elements are denoted by the same reference numerals, and redundant description is omitted as necessary.
A processing device according to the first example embodiment will be described.
The processing device 10 may be composed of hardware including, for example, a microcomputer including a central processing unit (CPU), a read only memory (ROM), a random access memory (RAM), and an interface unit (I/F). The CPU and others function as the viewpoint image generation unit 14, target area extraction unit 15, and three-dimensional data display parameter generation unit 16, and execute processing such as data generation, data extraction, and control. It may execute data display processing as a data display function. The ROM stores data generation programs, data extraction programs, data display programs, and control programs executed by the CPU. RAM stores various types of data such as image data and three-dimensional data. The interface unit (I/F) inputs and outputs signals to and from the outside. The CPU, ROM, RAM, and interface unit are connected to each other via a data bus or other means.
<Image Data Input Unit>
The image data input unit 11 may receive the image data 20 from the image data holding unit described below. The image data input unit 11 may receive the image data 20 directly from a shooting means such as a camera.
<Image Data Acquisition Information Input Unit>
The image data acquisition information input unit 12 may receive image data acquisition information from the image data acquisition information holding unit described later. The image data acquisition information input unit 12 may receive image data acquisition information directly from a shooting means such as a camera.
<Three-Dimensional Data Input Unit>
For example, the principle of the ToF (time of flight) LiDAR 40 is as follows. That is, the LiDAR 40 has a light emitting unit EM that emits a beam LB such as laser light, and a detection unit DE that detects the reflected light RB reflected by the beam LB at the measurement object OB. The LiDAR 40 detects the reflected light RB reflected by the measurement object OB while scanning the beam LB against the measurement object OB at a predetermined angle of view. Then, the LiDAR 40 calculates the distance D to the measurement object OB from D=(t2−t1)/2×(speed of light), in which t1 is the time until the beam LB reaches the measurement object OB, and t2 is the time until the reflected light RB reaches the detection unit DE. As a result, the LiDAR 40 can acquire the point cloud data having the coordinate value and the luminance value including the distance to the measurement object OB as the scan data in the scanned range.
The three-dimensional data 30 includes the shape data of the display object acquired by the LiDAR 40, and may further include additional information such as luminance information. When a plurality of three-dimensional data 30 are acquired from a plurality of positions, it is desirable to integrate the plurality of three-dimensional data 30. For example, in a case where the three-dimensional data 30 is acquired from a plurality of points in the facility to be monitored, it is desirable to align and integrate these data in advance. The three-dimensional data 30 may be associated with parameters for conversion to a world coordinate system.
The three-dimensional data input unit 13 may receive the three-dimensional data 30 from a storage device such as a three-dimensional data holding unit described later. The three-dimensional data input unit 13 may receive the three-dimensional data 30 directly from a three-dimensional data acquisition device such as the LiDAR 40.
<Viewpoint Image Generation Unit>
<Target Area Extraction Unit>
<Three-Dimensional Data Display Parameter Generation Unit>
The three-dimensional data display parameter generation unit 16 generates parameters for displaying the range of the target area 35 in the three-dimensional data 30. Specifically, the three-dimensional data display parameter generation unit 16 generates parameters for displaying the target area 35 on the display unit 17. The parameters include image data acquisition information, information on screen settings of a display screen on which the display unit 17 displays the target area 35, and information on the range of the target area 35.
The parameters include, for example, the width of the graphical user interface (GUI) screen, the height of the GUI screen, the coordinates of the sensors such as the shooting means and scanning means in the world coordinate system, the shooting direction vector of the shooting means, the line-of-sight direction vector of the scanning means, the vector indicating the upward direction of the sensors, the display range in the depth direction (front side), the display range in the depth direction (back side), and the angle formed by the screen height with the focal point (field of view: FOV). The parameters may include camera parameters from a point cloud library (PCL).
In the coordinates of a sensor in the world coordinate system, the world coordinate system is a coordinate system common to those existing within some range. It is, for example, a common coordinate system for all sensors (LiDAR and cameras) installed in infrastructure facilities. It is also, for example, a coordinate system (including latitude, longitude, and altitude) common to the entire globe.
The LiDAR 40 generally acquires the three-dimensional data 30 in a local coordinate system having the origin at the point of measurement. In a case where the measurement is performed at a plurality of places in a facility, the coordinate systems of the three-dimensional data 30 are different from each other, but it is preferable to convert the local coordinate system of each LiDAR 40 to the world coordinate system through the use of a global positioning system (GPS) or a beacon.
It is preferable that the camera can determine its shooting position in the world coordinate system through linkage with GPS and beacons. A world coordinate system with the position of a specific LiDAR 40 as the origin may be used, in which case the three-dimensional data 30 acquired by each LiDAR 40 can be aligned with each other and each three-dimensional data 30 can be converted to data in the world coordinate system.
In the FOV, in the case of the LiDAR 40, the focal point may be the origin of the LiDAR 40 coordinate system.
The followings are examples of parameters and means of acquiring parameters. That is, the width and height of the GUI screen may be acquired from display system settings. The coordinates of the sensors such as shooting and scanning means in the world coordinate system may be acquired from GPS or other means for enabling handling of the world coordinate system. The shooting direction vector of the shooting means may be acquired from the shooting direction of the camera or other shooting means. The line-of-sight direction vector of the scanning means may be acquired from the shooting direction vector. The vector indicating the upward direction of the sensor may be acquired from the orientation of the LiDAR 40 during measurement, estimation of the acquired point cloud data (for example, extracting the ground and assuming a vertical direction with respect to it). The display range in the depth direction (front) may be acquired by matching the point cloud image generated from the point cloud data with the camera image and extracting the point cloud data corresponding to the target area of the point cloud image with the smallest depth direction coordinates from the LiDAR 40. The display range in the depth direction (back) may be acquired in the same manner as above, by extracting the largest depth coordinates from the LiDAR. The angle formed by the screen height with the focal point may be acquired from the FOV of the camera image.
<Display Unit>
The display unit 17 may display the three-dimensional data 30 in synchronization with the image data 20. For example, in a case where predetermined frames of video captured by the shooting means are input to the image data input unit 11 at predetermined intervals, the display unit 17 may display the target area 35 corresponding to the image data 20 in synchronization with the timing of the display of the image data 20 of the predetermined frames.
The processing device 10b may include only some of the image data holding unit 11a, image data acquisition information holding unit 12a, three-dimensional data holding unit 13a, and screen setting holding unit 18. The image data holding unit 11a, image data acquisition information holding unit 12a, three-dimensional data holding unit 13a, and screen setting holding unit 18 may each be provided independently of the processing device 10 as stand-alone functional storage devices. The processing device 10b may further include a display unit 17.
<Image Data Holding Unit>
The image data holding unit 11a holds the image data 20. As long as the image data holding unit 11a holds the image data 20 acquired by a shooting means for shooting the display object, it may hold other pieces of image data 20. The image data holding unit 11a may, for example, acquire the image data 20 from a camera or other shooting means, or may acquire the image data 20 from other holding means that holds the image data 20. The image data 20 held in the image data holding unit 11a is input to the image data input unit 11 from the image data holding unit 11a.
<Image Data Acquisition Information Holding Unit>
The image data acquisition information holding unit 12a holds image data acquisition information. The image data acquisition information holding unit 12a may hold other image data acquisition information as long as it holds the image data acquisition information when the image data 20 is acquired. For example, the image data acquisition information holding unit 12a may acquire the image data acquisition information from a shooting means such as a camera, or may acquire the image data acquisition information from another holding unit holding the image data acquisition information. The image data acquisition information is input from the image data acquisition information holding unit 12a to the image data acquisition information input unit 12.
<Three-Dimensional Data Holding Unit>
The three-dimensional data holding unit 13a holds the three-dimensional data 30. As long as the three-dimensional data holding unit 13a holds the three-dimensional data 30 acquired by a scanning means for scanning the display object, it may hold other pieces of three-dimensional data 30. For example, the three-dimensional data holding unit 13a may acquire the three-dimensional data from a three-dimensional data acquisition device that acquires the three-dimensional data 30 by a scanning means for scanning a display object, or may acquire the three-dimensional data 30 from another holding unit that holds the three-dimensional data 30. The three-dimensional data 30 is input to the three-dimensional data input unit 13 from the three-dimensional data holding unit 13a.
<Screen Setting Holding Unit>
The screen setting holding unit 18 holds the screen setting information of the display screen on which the display unit 17 displays the target area 35. The screen setting information includes the height and width of the display screen for displaying the three-dimensional data 30. The above parameters may include screen setting information.
<Processing Method>
Next, the processing method using the processing device 10 according to the present example embodiment will be described.
As illustrated in step S11 in
As illustrated in step S12 and
As illustrated in step S13 and
Steps S11, S12, and S13 are not necessarily in this order. For example, they may be in the order of step S13, step S11, step S12, or any other order.
Next, as illustrated in step S14 and
Next, as illustrated in step S15 and
Next, as illustrated in step S16, parameters are generated. For example, the three-dimensional data display parameter generation unit 16 generates parameters for displaying the target area 35. In this manner, the processing device 10 can generate display parameters.
Next, the processing method of displaying on the display unit 17 using display parameters will be described.
As illustrated in step S27 and
Next, effects of the processing device 10 of the present example embodiment will be described. The processing devices 10a and 10b are also included and referred to as processing device 10. The processing device 10 of the present example embodiment generates the target area 35 from which the three-dimensional data 30 corresponding to the image data 20 is extracted. Then, the processing device 10 displays the target area 35. Therefore, the three-dimensional data can be generated and displayed at the same angle and angle of view as the image data, thus improving visibility when displaying the image data 20 and three-dimensional data 30.
For example, in facility monitoring of electric power facilities or the like, in addition to cameras, a three-dimensional data acquisition device such as the LiDAR 40 could be used to acquire data for monitoring. The camera acquires two-dimensional RGB data (image data 20), and the LiDAR 40 acquires point cloud data (three-dimensional data 30). The camera and LiDAR 40 have different parameters related to the measurement range, such as angle of view.
The processing device 10 of the present example embodiment extracts the three-dimensional data 30 corresponding to the display object or range indicated by the image data 20. In addition, the processing device 10 of the present example embodiment displays the three-dimensional data 30 at the same angle and angle of view as those of the camera. Therefore, the person in charge of facility monitoring can display the three-dimensional data 30 corresponding to the image data 20, allowing him or her to check the condition of the facility to be monitored with good visibility.
The processing device 10 may display the three-dimensional data 30 alongside the image data 20 or in synchronization with the image data 20. This further improves the visibility of the image data 20 and the three-dimensional data 30.
The processing device 10 of the present example embodiment extracts the target area 35 corresponding to the image data 20 from the input three-dimensional data 30. Therefore, it is not necessary to prepare in advance the three-dimensional data 30 converted into image data from various viewpoint positions 31 and line-of-sight directions 32 to correspond to the image data 20 taken from various shooting positions 21 and shooting directions 22. This suppresses the storage area usage.
By having the image data 20, image data acquisition information, three-dimensional data 30, and screen setting information held in the image data holding unit 11a, image data acquisition information holding unit 12a, three-dimensional data holding unit 13a, and screen setting holding unit 18, the storage area usage can be further suppressed.
Next, the processing system according to the second example embodiment will be described. The processing system includes the above-described processing device 10 (the processing devices 10a and 10b are also included and referred to as processing device 10) and a three-dimensional data acquisition unit. The three-dimensional data acquisition unit functions as a three-dimensional data acquisition means. The three-dimensional data acquisition unit includes a scanning means and acquires three-dimensional data by the scanning means for scanning the display object. The three-dimensional data acquisition unit is, for example, a LiDAR 40. In this case, the three-dimensional data is point cloud data acquired by the LiDAR 40 as a display object. The processing method according to the present example embodiment is the processing method of the first example embodiment which further includes a step of causing a scanning means for scanning the display object to acquire the three-dimensional data 30.
Since the processing system according to the present example embodiment includes the three-dimensional data acquisition unit in addition to the processing device 10, it can display the three-dimensional data 30 of the display object located at the desired location. Other configurations and effects are included in the description of the first example embodiment.
Although the present invention has been described above with reference to the first and second example embodiments, the present invention is not limited to the above first and second example embodiments. Various modifications that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention. For example, an example embodiment combining the respective configurations of the first and second example embodiments is also included in the scope of the technical concept. A program for causing a computer to execute the processing methods of the first and second example embodiments is also included in the technical scope of the first and second example embodiments.
Some or all of the above example embodiments may be described as the following supplementary notes, but are not limited to the following.
(Supplementary note 1)
A processing device including:
(Supplementary note 2)
The processing device according to Supplementary note 1, further including a display means for displaying the three-dimensional data according to the parameters.
(Supplementary note 3)
The processing device according to Supplementary note 2, in which the display means displays the three-dimensional data alongside the image data.
(Supplementary note 4)
The processing device according to Supplementary note 2 or 3, in which the display means displays the three-dimensional data in synchronization with the image data.
(Supplementary note 5)
The processing device according to any one of Supplementary notes 2 to 4, in which
(Supplementary note 6)
The processing device according to any one of Supplementary notes 1 to 5, in which the target area includes horizontal and vertical ranges orthogonal to the line-of-sight direction, as well as a depth range along the line-of-sight direction.
(Supplementary note 7)
The processing device according to any one of Supplementary notes 1 to 6, further including an image data holding means for holding the image data,
(Supplementary note 8)
The processing device according to any one of Supplementary notes 1 to 7, further including an image data acquisition information holding means for holding the image data acquisition information,
(Supplementary note 9)
The processing device according to any one of Supplementary notes 1 to 8, further including a three-dimensional data holding means for holding the three-dimensional data,
(Supplementary note 10)
The processing device according to any one of Supplementary notes 1 to 9, in which the parameters include at least one of: a width of a GUI screen, a height of the GUI screen, coordinates of the shooting and scanning means in a world coordinate system, a shooting direction vector of the shooting means, a line-of-sight direction vector of the scanning means, a vector indicating an upward direction of the shooting and scanning means, a display range in a depth direction, and FOV.
(Supplementary note 11)
A processing system including:
(Supplementary note 12)
A processing method including:
(Supplementary note 13)
The processing method according to Supplementary note 12, further including displaying the three-dimensional data according to the parameters.
(Supplementary note 14)
The processing method according to Supplementary note 13, further including displaying the three-dimensional data alongside the image data when displaying the three-dimensional data according to the parameters.
(Supplementary note 15)
The processing method according to Supplementary note 13 or 14, further including displaying the three-dimensional data in synchronization with the image data when displaying the three-dimensional data according to the parameters.
(Supplementary note 16)
The processing method according to any one of Supplementary notes 13 to 15, further including holding screen setting information of a display screen on which the target area is to be displayed,
(Supplementary note 17)
The processing method according to any one of Supplementary notes 12 to 16, in which the target area includes horizontal and vertical ranges orthogonal to the line-of-sight direction and a depth range along the line-of-sight direction.
(Supplementary note 18)
The processing method according to any one of Supplementary notes 12 to 17, further including:
(Supplementary note 19)
The processing method according to any one of Supplementary notes 12 to 18, further including:
(Supplementary note 20)
The processing method according to any one of Supplementary notes 12 to 19, further including:
(Supplementary note 21)
The processing method according to any one of Supplementary notes 12 to 20, in which the parameters include at least one of: a width of a GUI screen, a height of the GUI screen, coordinates of the shooting and scanning means in a world coordinate system, a shooting direction vector of the shooting means, a line-of-sight direction vector of the scanning means, a vector indicating an upward direction of the shooting and scanning means, a display range in a depth direction, and FOV.
(Supplementary note 22)
The processing method according to any one of Supplementary notes 12 to 21, further including causing a three-dimensional data acquisition device configured to acquire the three-dimensional data by the scanning means for scanning the display object, to acquire the three-dimensional data.
(Supplementary note 23)
A non-transitory computer readable medium storing a program configured to cause a computer to execute:
(Supplementary note 24)
The non-transitory computer readable medium storing a program according to Supplementary note 23, further causing a computer to execute displaying the three-dimensional data according to the parameters.
(Supplementary note 25)
The non-transitory computer readable medium storing a program according to Supplementary note 24, further causing a computer to execute displaying the three-dimensional data alongside the image data when displaying the three-dimensional data according to the parameters.
(Supplementary note 26)
The non-transitory computer readable medium storing a program according to Supplementary note 24 or 25, further causing a computer to execute displaying the three-dimensional data in synchronization with the image data when displaying the three-dimensional data according to the parameters.
(Supplementary note 27)
The non-transitory computer readable medium storing a program according to any one of Supplementary notes 24 to 26, further causing a computer to execute:
(Supplementary note 28)
The non-transitory computer readable medium storing a program according to any one of Supplementary notes 23 to 27, further causing a computer to execute making the target area include horizontal and vertical ranges orthogonal to the line-of-sight direction and a depth range along the line-of-sight direction.
(Supplementary note 29)
The non-transitory computer readable medium storing a program according to any one of Supplementary notes 23 to 28, further causing a computer to execute:
(Supplementary note 30)
The non-transitory computer readable medium storing a program according to any one of Supplementary notes 23 to 29, further causing a computer to execute:
(Supplementary note 31)
The non-transitory computer readable medium storing a program according to any one of Supplementary note 23 to 30, further causing a computer to execute:
(Supplementary note 32)
The non-transitory computer readable medium storing a program according to any one of Supplementary note 23 to 31, further causing a computer to execute making the parameters include at least one of: a width of a GUI screen, a height of the GUI screen, coordinates of the shooting and scanning means in a world coordinate system, a shooting direction vector of the shooting means, a line-of-sight direction vector of the scanning means, a vector indicating an upward direction of the shooting and scanning means, a display range in a depth direction, and FOV.
(Supplementary note 33)
The non-transitory computer readable medium storing a program according to any one of Supplementary notes 23 to 32, further causing a computer to execute making the three-dimensional data acquisition device, which acquires the three-dimensional data by the scanning means for scanning the display object, acquire the three-dimensional data.
In the above-described example, the program can be stored using various types of non-transitory computer readable media to be supplied to a computer. The non-transitory computer readable media include various types of tangible storage media. Examples of the non-transitory computer readable medium include a magnetic recording medium (for example, a flexible disk, a magnetic tape, or a hard disk drive), an optical magnetic recording medium (for example, a magneto-optical disk), a compact disc-read only memory (CD-ROM), a CD-R, a CD-R/W, and a semiconductor memory such as a mask ROM, a programmable ROM (PROM), an erasable PROM (EPROM), a flash ROM, or a random access memory (RAM). In addition, the program may be supplied to the computer by various types of transitory computer readable media. Examples of the transitory computer readable media include electric signals, optical signals, and electromagnetic waves. The transitory computer readable medium can provide the program to the computer via a wired communication line such as an electric wire and optical fibers or a wireless communication line.
| Filing Document | Filing Date | Country | Kind |
|---|---|---|---|
| PCT/JP2020/037885 | 10/6/2020 | WO |