WO2020195876A1 - 移動体およびその制御方法、並びにプログラム - Google Patents

移動体およびその制御方法、並びにプログラム Download PDF

Info

Publication number
WO2020195876A1
WO2020195876A1 PCT/JP2020/010740 JP2020010740W WO2020195876A1 WO 2020195876 A1 WO2020195876 A1 WO 2020195876A1 JP 2020010740 W JP2020010740 W JP 2020010740W WO 2020195876 A1 WO2020195876 A1 WO 2020195876A1
Authority
WO
WIPO (PCT)
Prior art keywords
line segment
unit
control unit
moving
captured
Prior art date
Application number
PCT/JP2020/010740
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 US17/438,942 priority Critical patent/US20220153411A1/en
Priority to CN202080021996.8A priority patent/CN113678082A/zh
Priority to JP2021509022A priority patent/JP7476882B2/ja
Publication of WO2020195876A1 publication Critical patent/WO2020195876A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/10Simultaneous control of position or course in three dimensions
    • G05D1/101Simultaneous control of position or course in three dimensions specially adapted for aircraft
    • G05D1/106Change initiated in response to external conditions, e.g. avoidance of elevated terrain or of no-fly zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64CAEROPLANES; HELICOPTERS
    • B64C39/00Aircraft not otherwise provided for
    • B64C39/02Aircraft not otherwise provided for characterised by special use
    • B64C39/024Aircraft not otherwise provided for characterised by special use of the remote controlled vehicle type, i.e. RPV
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64DEQUIPMENT FOR FITTING IN OR TO AIRCRAFT; FLIGHT SUITS; PARACHUTES; ARRANGEMENT OR MOUNTING OF POWER PLANTS OR PROPULSION TRANSMISSIONS IN AIRCRAFT
    • B64D47/00Equipment not otherwise provided for
    • B64D47/08Arrangements of cameras
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U10/00Type of UAV
    • B64U10/10Rotorcrafts
    • B64U10/13Flying platforms
    • B64U10/14Flying platforms with four distinct rotor axes, e.g. quadcopters
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/0202Control of position or course in two dimensions specially adapted to aircraft
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/10Simultaneous control of position or course in three dimensions
    • G05D1/101Simultaneous control of position or course in three dimensions specially adapted for aircraft
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U20/00Constructional aspects of UAVs
    • B64U20/80Arrangement of on-board electronics, e.g. avionics systems or wiring
    • B64U20/87Mounting of imaging devices, e.g. mounting of gimbals
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U2101/00UAVs specially adapted for particular uses or applications
    • B64U2101/30UAVs specially adapted for particular uses or applications for imaging, photography or videography
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U2201/00UAVs characterised by their flight controls
    • B64U2201/10UAVs characterised by their flight controls autonomous, i.e. by navigating independently from ground or air stations, e.g. by using inertial navigation systems [INS]

Definitions

  • the present technology relates to a moving body and its control method and a program, and in particular, a moving body and its control method and a program capable of accurately detecting and avoiding a linear object which may be an obstacle in movement. Regarding.
  • a moving object that flies autonomously such as a drone, recognizes the position of an object around the aircraft from an image captured by a stereo camera, and moves autonomously while avoiding obstacles.
  • the baseline is a line segment connecting the optical centers of the two cameras constituting the stereo camera.
  • Patent Document 1 discloses a technique of flying while maintaining a certain distance from an electric wire based on the magnitude of the current flowing through the electric wire and imaging the electric wire as an unmanned aerial vehicle that detects and flies the electric wire.
  • Patent Document 1 can only handle electric wires during power transmission, and can only fly along the electric wires.
  • This technology was made in view of such a situation, and makes it possible to accurately detect and avoid linear objects that can be obstacles in movement.
  • the moving body on one side of the present technology has a line segment detection unit that detects a line segment in an image captured by at least one of the stereo cameras, and the stereo camera fixed in a direction orthogonal to the line segment. It is equipped with a control unit that moves the aircraft.
  • the moving body detects a line segment in an captured image captured by at least one of the stereo cameras, and the stereo camera is oriented in a direction orthogonal to the line segment. Moves the fixed aircraft.
  • the program of one aspect of the present technology is to move the computer to a line segment detection unit that detects a line segment in a captured image captured by at least one of the stereo cameras, and the stereo camera in a direction orthogonal to the line segment. Is for functioning as a control unit for moving the fixed aircraft.
  • a line segment in an captured image captured by at least one of the stereo cameras is detected, and the aircraft to which the stereo camera is fixed is moved in a direction orthogonal to the line segment. ..
  • the program can be provided by transmitting via a transmission medium or by recording on a recording medium.
  • FIG. 1 is a plan view of a drone which is a moving body to which the present technology is applied.
  • Drone 1 in FIG. 1 is a quad-type flying moving object having four rotors (rotor blades) 11.
  • the drone 1 is a quad-type flight moving body having four rotors 11, but the drone 1 is not limited to this, and may be, for example, a multicopter having six or eight rotors 11. ..
  • a plurality of cameras 13 are arranged on the main body 12 of the drone 1. More specifically, eight cameras 13A to 13H are arranged on the side surface of the outer peripheral portion of the main body portion 12, and one camera 14 is arranged on the bottom surface of the main body portion 12.
  • Each of the cameras 13A to 13H provided on the side surface captures a subject captured within a predetermined viewing angle in the vertical and horizontal directions with the horizontal direction of the drone 1 as the imaging center.
  • the camera 14 provided on the bottom surface captures a subject captured within a predetermined viewing angle in the vertical and horizontal directions with the lower portion facing the ground as the imaging center.
  • each of the cameras 13A to 13H is not particularly distinguished, it is simply referred to as a camera 13.
  • the number and arrangement of the cameras 13 are not limited to the example of FIG. 1, and can be arbitrarily determined.
  • a stereo camera is composed of a pair of two cameras 13 arranged so that the optical axes are parallel to each other among the eight cameras 13 provided on the side surface.
  • the cameras 13A and 13B form a stereo camera
  • the cameras 13C and 13D form a stereo camera
  • the cameras 13E and 13F form a stereo camera
  • the cameras 13G and 13H form a stereo camera. .. From the two captured images (paired captured images) captured by the two cameras 13 that make up the stereo camera, the object existing around the drone 1 and the distance to that object are recognized by the principle of triangulation. Will be done.
  • the stereo camera composed of the cameras 13A and 13B captures the traveling direction, detects the situation of obstacles in the traveling direction, and the like.
  • the cameras 13C to 13H capture an image for detecting the situation of the entire surroundings of the drone 1.
  • the drone 1 recognizes an object existing as an obstacle in the traveling direction based on two captured images captured by the stereo camera, autonomously flies while avoiding the obstacle, and moves to the destination.
  • the destination is received by wireless communication or the like from a remote terminal (not shown).
  • the baseline is a line segment connecting the optical centers of the two cameras 13 constituting the stereo camera.
  • FIG. 2 shows a state in which the electric wire 15 is imaged with a stereo camera.
  • the captured image L1 (hereinafter referred to as the left camera captured image L1) is an image captured by the left camera, which is one of the stereo cameras, and the captured image R1 (hereinafter referred to as the right camera captured image R1) is It is an image taken by the other right camera.
  • the drone 1 is equipped with a control that enables detection of an object with little change in texture in the direction of a straight line parallel to the baseline, such as the electric wire 15 in FIG.
  • the electric wire 15 shown in FIG. 2 when the aircraft is rotated and imaged with a stereo camera, the electric wire 15 is as shown in the left camera image L1'and the right camera image R1' in FIG. Can acquire an image tilted by a predetermined angle ⁇ .
  • the electric wire 15 cannot be accurately detected because the image does not have a small change in texture in the direction of the straight line parallel to the baseline. it can.
  • FIG. 3 is a block diagram relating to flight control of the drone 1.
  • the drone 1 includes at least a controller 31, an RTK-GPS receiving unit 32, and an airframe driving unit 33.
  • the controller 31 determines the current location and surrounding conditions of the drone 1 based on the images captured by the cameras 13 and 14 and the position information, speed information, time information, and the like detected by the RTK-GPS receiver 32. Recognize and control the flight (movement) of the drone 1.
  • the controller 31 is composed of, for example, a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), a microprocessor, or the like, and executes a program stored in a storage unit such as a ROM. Then, the control of the drone 1 is executed.
  • the RTK-GPS receiver 32 receives both radio waves from GPS satellites, which are one of the GNSS (Global Navigation Satellite System), and radio waves from reference stations installed on the ground, and has an accuracy of several centimeters. Detects (positions) its current position with.
  • the GNSS is not limited to GPS, and positioning signals of positioning satellites such as GLONASS (US), BeiDou (China), Galileo (EU), and quasi-zenith satellite Michibiki (Japan) may be used or used in combination.
  • the RTK-GPS receiving unit 32 supplies the position information, speed information, time information, etc. of the drone 1 to the self-position estimation unit 43.
  • the machine body drive unit 33 includes four rotors 11 and a motor 51 that drives each rotor 11.
  • the machine body drive unit 33 moves the machine body or changes the posture of the machine body by changing the rotation speeds of the four rotors 11 according to the control from the controller 31.
  • the controller 31 has an object recognition unit 41, a stereo ranging unit 42, a self-position estimation unit 43, a line segment detection unit 44, a rotation angle calculation unit 45, an occupied grid construction unit 46, and an action control unit 47.
  • the object recognition unit 41 advances based on the captured image captured by one of the cameras 13 (monocular camera) of the two stereo cameras (for example, cameras 13A and 13B) that capture the traveling direction among the plurality of cameras 13. Detects (recognizes) an object in the direction. Among the objects included in the captured image, the object recognition unit 41 detects an elongated linear object such as an electric wire, an antenna, and a utility pole, and provides information (object) for identifying the object such as the position and size of the detected object. Specific information) is supplied to the line segment detection unit 44.
  • a known method can be adopted as an algorithm for detecting an arbitrary object from an image, but for detecting an elongated linear object such as an electric wire or an antenna, for example, "Gubbi, Jayavardhana, Ashley Varghese, and P. Balamuralidhar”
  • Machine Vision Applications (MVA) 2017 Fifteenth IAPR International Conference on. IEEE, 2017 can be adopted.
  • the object recognition unit 41 detects an elongated linear object based on the captured image captured by the monocular camera, but based on the captured image captured by the stereo camera. , An elongated linear object may be detected.
  • the stereo ranging unit 42 measures the distance with a stereo camera. Specifically, the stereo ranging unit 42 generates a parallax map from two captured images (paired captured images) captured by two cameras 13 arranged so that the optical axes are parallel, and occupies the parallax map. It is supplied to the lattice construction unit 46.
  • the parallax map is an image in which a parallax amount corresponding to a distance in the depth direction of an object reflected in the captured image is added to one captured image of a pair of captured images in pixel units of the captured image.
  • the parallax map is an image showing depth information corresponding to the captured image, and is also called a depth image.
  • the self-position estimation unit 43 determines the current self-position of the drone 1 based on the position information and speed information of the drone 1 supplied from the RTK-GPS receiving unit 32 and the captured images supplied from the plurality of cameras 13 and 14. And estimate the posture. For example, when the self-position estimation unit 43 can receive radio waves from a positioning satellite or a base station, the self-position estimation unit 43 estimates the self-position based on the position information measured by the RTK-GPS reception unit 32, indoors, a tunnel, or the like. In places where radio waves cannot be received, feature points of captured images supplied from a plurality of cameras 13 and 14 are detected, and the self-position and orientation are estimated by Visual-SLAM (Simultaneous Localization and Mapping). The self-position estimation unit 43 supplies the detected self-position and posture to the occupied grid construction unit 46 and the behavior control unit 47.
  • Visual-SLAM Simultaneous Localization and Mapping
  • the drone 1 may further include inertial measurement sensors such as a gyro sensor, an acceleration sensor, a magnetic sensor, and a pressure sensor.
  • the self-position estimation unit 43 also uses the sensor information to self-use. The position and orientation can be estimated with high accuracy.
  • the line segment detection unit 44 converts the elongated linear object detected by the object recognition unit 41 into a line segment using the Hough transform, and detects the elongated linear object as a line segment.
  • the detected line segment information is supplied to the rotation angle calculation unit 45 and the action control unit 47.
  • the rotation angle calculation unit 45 calculates the angle ⁇ of the line segment detected by the line segment detection unit 44, and supplies the calculation result to the action control unit 47. For example, assuming that the line segment detected by the line segment detection unit 44 is the electric wire 15 in FIG. 2, the rotation angle calculation unit 45 calculates the rotation angle ⁇ on the image of the electric wire 15 in FIG. 2 and controls the action. It is supplied to the unit 47.
  • the occupancy grid construction unit 46 folds the result of the parallax map supplied from the stereo ranging unit 42 in the time direction to show the presence or absence of obstacles in the three-dimensional space around the drone 1 (occupancy grid). ) Is constructed.
  • the occupied grid construction unit 46 is also supplied with the position (self-position) and attitude of the drone 1 estimated by the self-position estimation unit 43.
  • P (m p) of the formula (1) represents the prior probability in the captured image of the index p
  • z p, g p) represents the noise characteristics of the sensor, if the sensor is a stereo camera For example, it corresponds to an error due to distance resolution.
  • P (M) represents the prior probability of the three-dimensional space map M.
  • a in FIG. 4 shows an example of a parallax map supplied from the stereo ranging unit 42.
  • the distance information of each pixel is represented by an 8-bit gray value, and the brighter the brightness (white), the closer the distance.
  • FIG. 4 shows an example of an occupied grid map constructed by the occupied grid construction unit 46.
  • the action control unit 47 uses the self-position and posture supplied from the self-position estimation unit 43 and the occupancy grid map constructed by the occupancy grid construction unit 46 to target the drone 1 from the current position.
  • a movement route to the ground is set, and each motor 51 of the machine body drive unit 33 is controlled according to the set movement route.
  • the destination is transmitted from the remote terminal, received by a communication unit (not shown), and input to the behavior control unit 47.
  • the behavior control unit 47 is a motor that rotates the machine body in the yaw direction when a line segment of an elongated linear obstacle such as the electric wire 15 in FIG. 2 is supplied from the line segment detection unit 44. 51 is controlled.
  • the action control unit 47 rotates the machine body in the yaw direction until the angle ⁇ of the line segment supplied from the rotation angle calculation unit 45 becomes the angle R.
  • the angle R is determined as follows. As shown in FIG. 5, the horizontal resolution of the camera 13 is width [pixel], and the horizontal and vertical pixels of the block when performing block matching for searching the corresponding points of the two captured images by the stereo camera. Assuming that the number is B [pixel], the angle R is calculated by the following equation (2).
  • the angle R is an angle at which a predetermined object in the center of the image moves in the vertical direction by an amount corresponding to the block size of block matching in the captured image.
  • the self-position estimation unit 43 performs self-position estimation. That is, the current position and attitude of the drone 1 are estimated (determined) based on the position information and speed information from the RTK-GPS receiver 32 and the captured images supplied from the plurality of cameras 13 and the cameras 14, and the behavior is controlled. It is supplied to the unit 47.
  • step S12 the behavior control unit 47 determines whether or not the vehicle has arrived at the destination based on the current position of the drone 1. If it is determined in step S12 that the drone 1 has arrived at the destination, the flight control process ends.
  • step S12 determines whether the drone 1 has not yet arrived at the destination. If it is determined in step S12 that the drone 1 has not yet arrived at the destination, the process proceeds to step S13, and the action control unit 47 is a passing point in the movement route to the final destination.
  • a local destination within a predetermined distance from the current location hereinafter referred to as a local destination
  • a movement route to the local destination is determined, and the movement is started. If the final destination exists within a predetermined distance from the current location, that destination becomes the local destination.
  • the movement route to the local destination is determined by inputting the three-dimensional occupied grid map from the occupied grid construction unit 46 and calculating the cost when the drone 1 passes through a certain space.
  • the cost represents the difficulty of passing the drone 1, and the closer to the obstacle, the higher the cost is set.
  • semantic information such as electric wires and buildings is attached to the occupied grid map
  • the cost can be changed according to the semantic information. For example, a high cost is set near an area recognized as an electric wire or a moving object such as a person. As a result, a movement route is determined so that the drone 1 takes a distance from an obstacle with a high cost.
  • a known search algorithm such as A * algorithm, D * algorithm, RRT (Rapidly Exploring Random Tree), DWA (Dynamic Window Approach), etc. can be used for the search of the movement route.
  • step S14 the RTK-GPS receiving unit 32 acquires GPS position information. More specifically, the RTK-GPS receiving unit 32 detects (positions) its own position by receiving both radio waves from GPS satellites and radio waves from a reference station installed on the ground.
  • a plurality of cameras 13 perform imaging.
  • two adjacent cameras 13 having the traveling direction as the imaging direction take an image in the traveling direction, and another camera 13 takes an image of the surroundings other than the traveling direction.
  • steps S14 and S15 are processes that are continuously executed during the flight, and the GPS position information and the stereo camera image are sequentially updated according to the movement of the drone 1. Then, the occupied grid map by the occupied grid construction unit 46 is updated (reconstructed).
  • step S16 the behavior control unit 47 determines whether an obstacle is detected in the traveling direction.
  • step S16 If it is determined in step S16 that an obstacle is detected in the traveling direction, the process proceeds to step S17, and the drone 1 executes the obstacle avoidance action process.
  • the details of the obstacle avoidance action processing will be described later with reference to FIG. 7.
  • step S16 determines whether obstacle is detected in the traveling direction. If it is determined in step S16 that no obstacle is detected in the traveling direction, the process proceeds to step S18, and the drone 1 moves along the movement route set in step S13.
  • step S17 or step S18 the process proceeds to step S19, and the action control unit 47 determines whether or not the self-position has arrived at the local destination.
  • step S19 If it is determined in step S19 that the self-position has not yet arrived at the local destination, the process returns to step S14, and steps S14 to S19 described above are repeated.
  • step S19 determines whether or not the self-position has arrived at the local destination. If it is determined in step S19 that the self-position has arrived at the local destination, the process returns to step S12, and it is determined again whether or not the user has arrived at the destination. The processes of steps S13 to S19 are repeated until it is determined that the aircraft has arrived at the destination in step S12, and when it is determined that the aircraft has arrived at the destination, the flight control process ends.
  • step S17 which is executed when it is determined that an obstacle is detected in the traveling direction in step S16 of FIG. 6, will be described.
  • the obstacle avoidance action process of FIG. 7 describes a case where an elongated linear object that is difficult to recognize as an object, such as the above-mentioned electric wire, antenna, and utility pole, is avoided among the obstacles.
  • step S41 the action control unit 47 controls each motor 51 of the machine body drive unit 33 to decelerate the machine body.
  • the drone 1 is moving in a forward leaning posture in the traveling direction, although the speed is slower than before decelerating.
  • step S42 the object recognition unit 41 recognizes an object as an obstacle from the captured image captured in the traveling direction, and supplies the object identification information for identifying the recognized object to the line segment detection unit 44.
  • step S43 the line segment detection unit 44 performs line segment conversion that converts the elongated linear object detected by the object recognition unit 41 into a line segment using the Hough transform. As a result, an elongated linear object is detected as a line segment.
  • the detected line segment information is supplied to the rotation angle calculation unit 45 and the action control unit 47.
  • the object recognition in step S42 and the line segment detection in step S43 are continuously executed until the obstacle is avoided, in other words, until the processing in step S52 is started.
  • step S44 the action control unit 47 controls the motor 51 and moves the aircraft in the direction dir orthogonal to the detected line segment LL as shown in FIG.
  • the direction dir orthogonal to the detected line segment LL as shown in FIG. 8
  • the upward direction is selected instead of the ground direction, but it is also controlled by the occupied grid map around it.
  • step S44 the drone 1 moves in the direction dir orthogonal to the detected line segment LL for a certain period of time or a certain distance.
  • step S45 the action control unit 47 determines whether the obstacle can be avoided based on the detection result from the line segment detection unit 44, that is, whether the line segment corresponding to the electric wire or the like cannot be seen from the line of sight. To do.
  • step S45 If it is determined in step S45 that the obstacle can be avoided, the process proceeds to step S52 described later.
  • step S45 determines whether the obstacle could not be avoided. If it is determined in step S45 that the obstacle could not be avoided, the process proceeds to step S46, and the action control unit 47 controls the motor 51 to rotate the aircraft in the yaw direction.
  • step S47 the rotation angle calculation unit 45 calculates the angle ⁇ of the line segment detected by the line segment detection unit 44, and supplies the calculation result to the action control unit 47.
  • step S48 the action control unit 47 determines whether the angle ⁇ of the line segment is the angle R of the equation (2).
  • step S48 If it is determined in step S48 that the angle ⁇ of the line segment is not the angle R, the process proceeds to step S46, and the processes of steps S46 to S48 are repeated. That is, the drone 1 rotates the airframe in the yaw direction until the angle ⁇ of the line segment becomes the angle R. As a result, as described with reference to FIG. 2, an elongated object such as an electric wire can be accurately detected by two captured images of a stereo camera.
  • step S48 when it is determined in step S48 that the angle ⁇ of the line segment is the angle R, the process proceeds to step S49, and the stereo ranging unit 42 is a stereo camera in the traveling direction with the aircraft rotated.
  • a parallax map is generated from the two captured images and supplied to the occupied grid construction unit 46.
  • step S50 the occupied grid construction unit 46 indicates the presence or absence of obstacles in the three-dimensional space around the drone 1 by adding the result of the parallax map supplied from the stereo ranging unit 42 to the occupied grid map. Update (reconstruct) the occupied grid map.
  • step S51 the action control unit 47 controls each motor 51 based on the updated occupied grid map to take an obstacle avoidance action.
  • the drone 1 is moved in a direction of avoiding an elongated object such as an electric wire.
  • the process proceeds to step S52.
  • the local destination initially set by the obstacle avoidance action is performed. It will deviate from the movement route to.
  • step S52 the action control unit 47 resets the local destination, determines the movement route to the local destination, controls each motor 51, and starts the movement.
  • the method of resetting the local destination is the same as the setting of the local destination in step S13.
  • step S17 the process proceeds from step S17 to step S19 of FIG. 6, and it is determined whether or not the self-position has arrived at the local destination. After that, it is as described with reference to FIG.
  • an elongated linear object which is difficult to accurately recognize with a stereo camera, can be accurately recognized by rotating the aircraft in the yaw direction. You can avoid the object and fly to the destination accurately.
  • it is determined whether the angle ⁇ of the line segment is the target angle R, and the machine is controlled to rotate in the yaw direction until the target angle R is reached. It may be a simple control that rotates the machine body in the yaw direction by a predetermined predetermined angle without determining whether or not.
  • the drone flies while keeping a certain distance from the power line. Since the electric wire is bent and sways by the wind, it is difficult to grasp the detailed three-dimensional structure in advance. In addition, the altitude of the electric wire is high, and it is an environment in which the stereo camera tends to cause a deviation in self-position recognition.
  • a marker or the like for recognizing the self-position may be attached to a fixed facility such as a steel tower, and the self-position recognition by the marker may be performed as an auxiliary.
  • the camera 13 that captures the traveling direction is fixed to the main body 12 of the drone 1, and when the captured image is controlled to be tilted by the angle R, the entire drone 1 is rotated.
  • a camera such as an FPV (First Person View) camera that can rotate the camera itself with respect to the main body 12 of the drone 1 can be used. In this case, only the camera is rotated, and the drone 1 does not need to be rotated.
  • FPV First Person View
  • the plurality of cameras 13 are arranged in the horizontal direction, but for example, a part (at least one) of the plurality of cameras 13 is arranged in the vertical direction.
  • two vertically arranged cameras 13 may be used as stereo cameras. Since the stereo cameras arranged in the horizontal direction and the stereo cameras arranged in the vertical direction have different textures in the horizontal direction (horizontal direction) in the image, the detection and avoidance of the elongated object described above can be performed without rotating the camera 13. Is possible.
  • the movement control of the present disclosure can be applied to the movement control of vehicles such as ordinary automobiles and trucks that are automatically driven.
  • it is effective for recognizing line segments parallel to the baseline of a stereo camera such as guardrails and road signs.
  • the series of flight control processes described above can be executed by hardware or software.
  • the programs constituting the software are installed on the computer.
  • the computer includes a microcomputer embedded in dedicated hardware and, for example, a general-purpose personal computer capable of executing various functions by installing various programs.
  • FIG. 9 is a block diagram showing a configuration example of computer hardware that executes the above-mentioned series of flight control processes programmatically.
  • a CPU Central Processing Unit
  • ROM ReadOnly Memory
  • RAM RandomAccessMemory
  • An input / output interface 105 is further connected to the bus 104.
  • An input unit 106, an output unit 107, a storage unit 108, a communication unit 109, and a drive 110 are connected to the input / output interface 105.
  • the input unit 106 includes a keyboard, a mouse, a microphone, a touch panel, an input terminal, and the like.
  • the output unit 107 includes a display, a speaker, an output terminal, and the like.
  • the storage unit 108 includes a hard disk, a RAM disk, a non-volatile memory, and the like.
  • the communication unit 109 is composed of a network interface or the like that performs wired communication or wireless communication.
  • the communication unit 109 includes, for example, the Internet, a public telephone line network, a wide area communication network for wireless mobiles such as so-called 4G lines and 5G lines, WAN (Wide Area Network), LAN (Local Area Network), and Bluetooth (registered trademark). Communicate in accordance with the standard.
  • the communication unit 109 complies with standards such as short-range wireless communication such as NFC (Near Field Communication), infrared communication, HDMI (registered trademark) (High-Definition Multimedia Interface), and USB (Universal Serial Bus). Wired communication and communication via a communication network or communication path of any communication standard are performed.
  • the drive 110 drives a removable recording medium 111 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
  • the CPU 101 loads the program stored in the storage unit 108 into the RAM 103 via the input / output interface 105 and the bus 104 and executes the above-described series. Flight control processing is performed.
  • the RAM 103 also appropriately stores data and the like necessary for the CPU 101 to execute various processes.
  • the program executed by the computer can be recorded and provided on the removable recording medium 111 as a package medium or the like, for example. Programs can also be provided via wired or wireless transmission media such as local area networks, the Internet, and digital satellite broadcasting. In addition, the program can be pre-installed in the ROM 102 or the storage unit 108.
  • this technology can have a cloud computing configuration in which one function is shared by a plurality of devices via a network and processed jointly.
  • each step described in the above flowchart can be executed by one device or can be shared and executed by a plurality of devices.
  • one step includes a plurality of processes
  • the plurality of processes included in the one step can be executed by one device or shared by a plurality of devices.
  • the present technology can have the following configurations.
  • a line segment detector that detects a line segment in a captured image captured by at least one of the stereo cameras,
  • a moving body including a control unit for moving the body to which the stereo camera is fixed in a direction orthogonal to the line segment.
  • An object recognition unit that recognizes an object in the captured image is further provided.
  • the moving body according to (2), wherein the line segment detecting unit detects the line segment by converting the object in the captured image into the line segment.
  • a stereo ranging unit that generates a parallax map from the captured image captured by the stereo camera when the rotation angle of the line segment is the predetermined angle. It is further equipped with an occupied grid map construction unit that constructs an occupied grid map from the parallax map.
  • the control unit After moving the aircraft, the control unit resets the local destination, which is the local destination of the aircraft, and moves the aircraft to the local destination after the resetting (1) to The moving body according to any one of (7).
  • the moving body Detects line segments in captured images captured by at least one of the stereo cameras and A method for controlling a moving body in which the body to which the stereo camera is fixed is moved in a direction orthogonal to the line segment.
  • Computer A line segment detector that detects a line segment in a captured image captured by at least one of the stereo cameras, A program for making the stereo camera function as a control unit for moving a fixed body in a direction orthogonal to the line segment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Image Analysis (AREA)

Abstract

本技術は、移動において障害物となり得る線状の物体を正確に検出して回避することができるようにする移動体およびその制御方法、並びにプログラムに関する。 移動体は、ステレオカメラの少なくとも一方のカメラで撮像された撮像画像内の線分を検出し、線分に直交する方向へ、ステレオカメラが固定された機体を移動させる。本技術は、例えば、ドローンなどの自律飛行を行う移動体等に適用できる。

Description

移動体およびその制御方法、並びにプログラム
 本技術は、移動体およびその制御方法、並びにプログラムに関し、特に、移動において障害物となり得る線状の物体を正確に検出して回避することができるようにした移動体およびその制御方法、並びにプログラムに関する。
 ドローンと呼ばれるような自律飛行する移動体は、例えば、ステレオカメラにより撮像された画像から、機体周辺の物体の位置を認識し、障害物を回避しながら自律的に移動する。
 しかしながら、ステレオカメラによる物体認識では、ベースラインに平行な直線の方向にテクスチャの変化が少ない物体は、原理的に物体認識することが難しい。例えば、画像の水平方向に伸びる電線やアンテナなど、細い物体の検出が難しい。なお、ベースラインとは、ステレオカメラを構成する2つのカメラの光学中心を結ぶ線分である。
 特許文献1には、電線を検出して飛行する無人飛行体として、電線を流れる電流の大きさに基づいて電線と一定の距離を保ちながら飛行し、電線を撮像する技術が開示されている。
特開2018-114807号公報
 しかしながら、特許文献1の技術では、送電中の電線にしか対応できず、また、電線に沿った飛行しかできない。
 本技術は、このような状況に鑑みてなされたものであり、移動において障害物となり得る線状の物体を正確に検出して回避することができるようにするものである。
 本技術の一側面の移動体は、ステレオカメラの少なくとも一方のカメラで撮像された撮像画像内の線分を検出する線分検出部と、前記線分に直交する方向へ、前記ステレオカメラが固定された機体を移動させる制御部とを備える。
 本技術の一側面の移動体の制御方法は、移動体が、ステレオカメラの少なくとも一方のカメラで撮像された撮像画像内の線分を検出し、前記線分に直交する方向へ、前記ステレオカメラが固定された機体を移動させる。
 本技術の一側面のプログラムは、コンピュータを、ステレオカメラの少なくとも一方のカメラで撮像された撮像画像内の線分を検出する線分検出部と、前記線分に直交する方向へ、前記ステレオカメラが固定された機体を移動させる制御部として機能させるためのものである。
 本技術の一側面においては、ステレオカメラの少なくとも一方のカメラで撮像された撮像画像内の線分が検出され、前記線分に直交する方向へ、前記ステレオカメラが固定された機体が移動される。
 なお、プログラムは、伝送媒体を介して伝送することにより、又は、記録媒体に記録して、提供することができる。
本技術を適用した移動体であるドローンの平面図である。 ステレオカメラによる電線等の検出を説明する図である。 図1のドローンの飛行制御に関するブロック図である。 視差マップと占有格子地図の例を示す図である。 角度Rの計算方法を説明する図である。 飛行制御処理を説明するフローチャートである。 図6のステップS17の障害物回避行動処理の詳細を説明するフローチャートである。 電線の回避を説明する図である。 本技術を適用したコンピュータの一実施の形態の構成例を示すブロック図である。
 以下、本技術を実施するための形態(以下、実施の形態という)について説明する。なお、説明は以下の順序で行う。
1.ドローンの平面図
2.ステレオカメラによる電線等の検出
3.ドローンのブロック図
4.飛行制御処理のフローチャート
5.ユースケース例
6.カメラの変形例
7.ドローン以外の適用例
8.コンピュータ構成例
<1.ドローンの平面図>
 図1は、本技術を適用した移動体であるドローンの平面図である。
 図1のドローン1は、4つのロータ(回転翼)11をもつクワッド型の飛行移動体である。
 なお、本実施の形態では、ドローン1が、4つのロータ11をもつクワッド型の飛行移動体であるとするが、これに限らず、例えば、6個や8個のロータ11を持つマルチコプタでもよい。
 ドローン1の本体部12には、複数のカメラ13が配置されている。より具体的には、本体部12の外周部の側面に、8個のカメラ13A乃至13Hが配置され、本体部12の底面に、1個のカメラ14が配置されている。側面に設けられたカメラ13A乃至13Hそれぞれは、ドローン1の水平方向を撮像中心として、上下左右に所定の視野角の範囲内に写る被写体を撮像する。底面に設けられたカメラ14は、地面方向となる下方を撮像中心として、上下左右に所定の視野角の範囲内に写る被写体を撮像する。カメラ13A乃至13Hのそれぞれを特に区別しない場合、単に、カメラ13と称する。カメラ13の個数および配置は、図1の例に限られず、任意に決定することができる。
 側面に設けられた8個のカメラ13のうち、光軸が平行となるように配置された2つのカメラ13のペアによりステレオカメラが構成される。具体的には、カメラ13Aと13Bによりステレオカメラが構成され、カメラ13Cと13Dによりステレオカメラが構成され、カメラ13Eと13Fによりステレオカメラが構成され、カメラ13Gと13Hによりステレオカメラが構成されている。ステレオカメラを構成する2つのカメラ13でそれぞれ撮像された2枚の撮像画像(対の撮像画像)から、三角測量の原理により、ドローン1の周囲に存在する物体と、その物体までの距離が認識される。
 図1において矢印で示される右方向が、ドローン1の進行方向とすると、カメラ13Aおよび13Bで構成されるステレオカメラが進行方向を撮像して、進行方向の障害物等の状況を検出し、その他のカメラ13C乃至13Hは、ドローン1の周囲全体の状況を検出するための画像を撮像する。
<2.ステレオカメラによる電線等の検出>
 ドローン1は、ステレオカメラで撮像された2枚の撮像画像に基づいて、進行方向に障害物として存在する物体を認識し、障害物を回避しながら自律飛行し、目的地まで移動する。目的地は、図示せぬリモート端末から無線通信等により受信される。
 ステレオカメラによる物体認識では、ベースラインに平行な直線の方向にテクスチャの変化が少ない物体、例えば、図2に示される電線15のような水平方向に長い物体の検出が難しい。なお、ベースラインとは、ステレオカメラを構成する2つのカメラ13の光学中心を結ぶ線分である。
 図2は、ステレオカメラで電線15を撮像した様子を示している。
 撮像画像L1(以下、左カメラ撮像画像L1と称する。)は、ステレオカメラの一方である左側カメラで撮像された画像であり、撮像画像R1(以下、右カメラ撮像画像R1と称する。)は、他方の右側カメラで撮像された画像である。
 ステレオカメラで撮像された左カメラ撮像画像L1と右カメラ撮像画像R1とから、所定の物体を検出する場合、初めに、2枚の撮像画像に写る物体の対応点を検出する処理が行われる。電線15を検出する場合には、例えば、左カメラ撮像画像L1の電線15の所定の点P1Lに対応する右カメラ撮像画像R1上の点である対応点P1Rを探索する必要がある。しかしながら、右カメラ撮像画像R1の電線15は、点P1Lに対応する右カメラ撮像画像R1の対応点P1Rを通りベースラインに平行な直線の方向にテクスチャの変化が少ないため、右カメラ撮像画像R1の対応点P1Rを特定することができない。なお、図2において、画像内の水平方向の破線は、説明のための補助線である。
 そこで、ドローン1には、図2の電線15のような、ベースラインに平行な直線の方向にテクスチャの変化が少ない物体を検出可能とする制御が搭載されている。
 具体的には、ドローン1自体を所定の角度で回転させてステレオカメラで撮像することにより、ベースラインに平行な直線上の対応点の探索を可能とする。
 例えば、図2に示した電線15を撮像するような状況において、機体を回転させてステレオカメラで撮像すると、図2の左カメラ撮像画像L1’と右カメラ撮像画像R1’のように、電線15が所定の角度θだけ傾いた画像を取得することができる。この左カメラ撮像画像L1’と右カメラ撮像画像R1’を用いれば、電線15がベースラインに平行な直線の方向にテクスチャの変化が少ない画像とはならないため、電線15を正確に検出することができる。
<3.ドローンのブロック図>
 図3は、ドローン1の飛行制御に関するブロック図である。
 ドローン1は、コントローラ31、RTK-GPS受信部32、および、機体駆動部33を少なくとも備える。
 コントローラ31は、カメラ13および14で撮像された画像と、RTK-GPS受信部32で検出された位置情報、速度情報、および、時刻情報などに基づいて、ドローン1の現在地と周囲の状況とを認識し、ドローン1の飛行(移動)を制御する。コントローラ31は、例えば、CPU(Central Processing Unit),ROM(Read Only Memory),RAM(Random Access Memory)、またはマイクロプロセッサなどで構成され、ROM等の記憶部に記憶されたプログラムが実行されることで、ドローン1の制御を実行する。
 RTK-GPS受信部32は、GNSS(Global Navigation Satellite System)の一つであるGPS衛星からの電波と、地上に設置している基準局からの電波の両方を受信することで、数cm単位の精度で自身の現在位置を検出する(測位する)。なお、GNSSは、GPSに限らず、GLONASS(ロシア)、BeiDou(中国)、Galileo(EU)、準天頂衛星みちびき(日本)等の測位衛星の測位信号を利用したり、併用してもよい。RTK-GPS受信部32は、ドローン1の位置情報と速度情報、時刻情報などを自己位置推定部43に供給する。
 機体駆動部33は、4つのロータ11と、各ロータ11を駆動するモータ51とを備える。機体駆動部33は、コントローラ31からの制御にしたがい、4つのロータ11の回転数を変化させることで、機体を移動させたり、機体の姿勢を変化させる。
 コントローラ31は、物体認識部41、ステレオ測距部42、自己位置推定部43、線分検出部44、回転角計算部45、占有格子構築部46、および、行動制御部47を有する。
 物体認識部41は、複数のカメラ13のうち、進行方向を撮像する2つのステレオカメラ(例えば、カメラ13Aおよび13B)の一方のカメラ13(単眼カメラ)で撮像された撮像画像に基づいて、進行方向の物体を検出(認識)する。物体認識部41は、撮像画像に含まれる物体のうち、特に、電線、アンテナ、電柱など、細長い線状の物体を検出し、検出した物体の位置および大きさなど、物体を特定する情報(物体特定情報)を線分検出部44に供給する。画像から任意の物体を検出するアルゴリズムは、公知の手法を採用することができるが、電線やアンテナなどの細長い線状の物体の検出は、例えば、「Gubbi, Jayavardhana, Ashley Varghese, and P. Balamuralidhar. "A new deep learning architecture for detection of long linear infrastructure." Machine Vision Applications (MVA), 2017 Fifteenth IAPR International Conference on. IEEE, 2017」に開示された技術を採用することができる。なお、本実施の形態では、物体認識部41が、単眼カメラで撮像された撮像画像に基づいて、細長い線状の物体を検出することとするが、ステレオカメラで撮像された撮像画像に基づいて、細長い線状の物体を検出してもよい。
 ステレオ測距部42は、ステレオカメラによる測距を行う。具体的には、ステレオ測距部42は、光軸が平行となるように配置された2つのカメラ13で撮像された2枚の撮像画像(対の撮像画像)から視差マップを生成し、占有格子構築部46に供給する。視差マップは、対の撮像画像の一方の撮像画像に対し、その撮像画像に写る物体の奥行き方向の距離に相当する視差量を撮像画像の画素単位で付加した画像である。視差マップは、撮像画像に対応する奥行き情報を示す画像であり、デプス画像とも呼ばれる。
 自己位置推定部43は、RTK-GPS受信部32から供給されるドローン1の位置情報や速度情報と、複数のカメラ13および14から供給される撮像画像に基づいて、ドローン1の現在の自己位置および姿勢を推定する。例えば、自己位置推定部43は、測位衛星や基地局からの電波を受信可能な場合には、RTK-GPS受信部32で測定された位置情報に基づき、自己位置を推定し、屋内やトンネルなど、電波が受信できない場所では、複数のカメラ13および14から供給される撮像画像の特徴点を検出し、Visual-SLAM(Simultaneous Localization and Mapping)により、自己位置および姿勢を推定する。自己位置推定部43は、検出した自己位置および姿勢を、占有格子構築部46および行動制御部47に供給する。
 なお、ドローン1は、ジャイロセンサ、加速度センサ、磁気センサ、圧力センサ等の慣性計測センサをさらに備えてもよく、その場合には、自己位置推定部43は、それらのセンサ情報も用いて、自己位置および姿勢を高精度に推定することができる。
 線分検出部44は、物体認識部41で検出された細長い線状の物体を、Hough変換を用いて線分に変換し、細長い線状の物体を線分として検出する。検出された線分の情報は、回転角計算部45と行動制御部47に供給される。
 回転角計算部45は、線分検出部44で検出された線分の角度θを計算し、計算結果を行動制御部47に供給する。例えば、線分検出部44で検出された線分が、図2の電線15であるとすると、回転角計算部45は、図2の電線15の画像上の回転角θを計算し、行動制御部47に供給する。
 占有格子構築部46は、ステレオ測距部42から供給される視差マップの結果を時間方向に畳み込むことにより、ドローン1の周囲の3次元空間上の障害物の有無を表す占有格子地図(occupancy grid)を構築する。なお、占有格子構築部46には、自己位置推定部43によって推定された、ドローン1の位置(自己位置)および姿勢も供給される。
 現在時刻から所定時間前までの間に、インデックスp=1,2,3,・・・,PのP枚の撮像画像が、ステレオカメラを構成する2つのカメラ13でそれぞれ得られた場合に、インデックスpの撮像画像に対応するデプス画像をzpで表し、インデックスpの撮像画像が得られたときのステレオカメラの位置と姿勢をgpで表すとして、観測結果D={z1:P,g1:P}が与えられたときの、ドローン1の周囲の3次元空間マップMの事後確率P(M|D)は、以下の式(1)で計算することができる。なお、z1:P={z1,2,・・・,P}、g1:P={g1,2,・・・,P}である。ステレオカメラの光学中心の位置および姿勢は、ドローン1自身の位置および姿勢を基準に求めることができる。
Figure JPOXMLDOC01-appb-M000001
 式(1)のP(mp)は、インデックスpの撮像画像における事前確率を表し、P(mp|zp,gp)は、センサのノイズ特性を表し、センサがステレオカメラの場合は、例えば、距離分解能による誤差に相当する。P(M)は、3次元空間マップMの事前確率を表す。
 図4のAは、ステレオ測距部42から供給される視差マップの例の例を示している。図4のAの視差マップでは、各画素の距離情報を8ビットのグレイ値で表しており、輝度が明るい(白い)ほど、距離が近いことを表している。
 図4のBは、占有格子構築部46によって構築された占有格子地図の例を示している。
 図3に戻り、行動制御部47は、自己位置推定部43から供給される自己位置および姿勢と、占有格子構築部46で構築された占有格子地図とを用いて、ドローン1の現在位置から目的地までの移動経路を設定し、設定した移動経路にしたがって、機体駆動部33の各モータ51を制御する。目的地は、リモート端末から送信され、不図示の通信部で受信され、行動制御部47に入力される。
 また、行動制御部47は、図2の電線15のような細長い線状の障害物の線分が線分検出部44から供給された場合、機体をヨー(yaw)方向に回転させるようにモータ51を制御する。行動制御部47は、回転角計算部45から供給される線分の角度θが、角度Rとなるまで機体をヨー方向に回転させる。
 ここで、角度Rは次のようにして決定される。図5に示されるように、カメラ13の水平方向の解像度をwidth[pixel]、ステレオカメラによる2枚の撮像画像の対応点を探索するブロックマッチングを行う際のブロックの水平方向および垂直方向の画素数をB[pixel]とすると、角度Rは、次式(2)で計算される。
Figure JPOXMLDOC01-appb-M000002
 即ち、角度Rは、撮像画像において、画像中心部の所定の物体が、ブロックマッチングのブロックサイズに相当する量だけ垂直方向に移動する角度である。ドローン1は、水平方向に移動する場合、進行方向に対して前傾姿勢で移動するが、前傾姿勢において機体をヨー方向に回転させると、撮像画像上の物体(被写体)を、図2の左カメラ撮像画像L1’および右カメラ撮像画像R1’のように回転することができる。
<4.飛行制御処理のフローチャート>
 次に、図6のフローチャートを参照して、ドローン1が目的地まで飛行を行う際の飛行制御処理について説明する。この処理は、例えば、目的地の情報がリモート端末から送信され、飛行が開始されたとき開始される。
 初めに、ステップS11において、自己位置推定部43は、自己位置推定を行う。すなわち、RTK-GPS受信部32からの位置情報や速度情報と、複数のカメラ13およびカメラ14から供給された撮像画像に基づいて、ドローン1の現在位置および姿勢が推定(決定)され、行動制御部47に供給される。
 ステップS12において、行動制御部47は、ドローン1の現在位置に基づいて、目的地に到着したかを判定する。ステップS12で、ドローン1が目的地に到着したと判定された場合、飛行制御処理は終了する。
 一方、ステップS12で、ドローン1がまだ目的地に到着していないと判定された場合、処理はステップS13に進み、行動制御部47は、最終的な目的地までの移動経路のうちの通過点に相当する、現在地から所定の距離内の局所的な目的地(以下、局所目的地と称する。)を設定し、局所目的地までの移動経路を決定して、移動を開始する。なお、現在地から所定の距離内に最終的な目的地が存在する場合には、その目的地が局所目的地となる。
 局所目的地までの移動経路は、占有格子構築部46からの3次元の占有格子地図を入力として、ドローン1がある空間を通過する際のコストを計算することで決定される。コストは、ドローン1の通過しにくさを表し、障害物に近いほど、コストが高く設定される。占有格子地図に、電線や建物といったセマンティック(Semantic)な情報が付与されていた場合、そのセマンティックな情報に応じて、コストを変化させることができる。例えば、電線と認識された領域の付近や、人などの動く物体には高いコストが設定される。これにより、コストが高い障害物に対して、ドローン1が距離を取るような移動経路が決定される。移動経路の探索は、A*アルゴリズム、D*アルゴリズム、RRT(Rapidly Exploring Random Tree)、DWA(Dynamic Window Approach)等の公知の探索アルゴリズムを用いることができる。
 ステップS14において、RTK-GPS受信部32は、GPS位置情報を取得する。より具体的には、RTK-GPS受信部32が、GPS衛星からの電波と、地上に設置している基準局からの電波の両方を受信することで、自己位置を検出する(測位する)。
 ステップS15において、複数のカメラ13が撮像を行う。特に、進行方向を撮像方向とする2つの隣接するカメラ13が、進行方向の撮像を行い、他のカメラ13が、進行方向以外の周囲の撮像を行う。
 ステップS14およびS15の処理は、飛行中に継続して実行される処理であり、ドローン1の移動に応じてGPS位置情報とステレオカメラ画像が、順次更新される。そして、占有格子構築部46による占有格子地図が更新(再構築)される。
 ステップS16において、行動制御部47は、進行方向に障害物が検出されたかを判定する。
 ステップS16で、進行方向に障害物が検出されたと判定された場合、処理はステップS17に進み、ドローン1は、障害物回避行動処理を実行する。障害物回避行動処理の詳細は、図7を参照して後述する。
 一方、ステップS16で、進行方向に障害物が検出されていないと判定された場合、処理はステップS18に進み、ドローン1は、ステップS13で設定した移動経路に沿って移動する。
 ステップS17またはステップS18の後、処理はステップS19に進み、行動制御部47は、自己位置が局所目的地に到着したかを判定する。
 ステップS19で、自己位置がまだ局所目的地に到着していないと判定された場合、処理はステップS14に戻り、上述したステップS14乃至S19が繰り返される。
 一方、ステップS19で、自己位置が局所目的地に到着したと判定された場合、処理はステップS12に戻り、目的地に到着したかが、再度判定される。ステップS12で目的地に到着したと判定されるまで、ステップS13乃至S19の処理が繰り返され、目的地に到着したと判定されると、飛行制御処理が終了する。
 次に、図7のフローチャートを参照して、図6のステップS16で進行方向に障害物が検出されたと判定された場合に実行される、ステップS17の障害物回避行動処理の詳細について説明する。
 なお、図7の障害物回避行動処理は、障害物のなかでも、上述した電線、アンテナ、電柱などのように、物体としての認識が難しい細長い線状の物体を回避する場合について説明する。
 初めに、ステップS41において、行動制御部47は、機体駆動部33の各モータ51を制御して、機体を減速させる。ドローン1は、減速させる前よりも遅い速度ではあるが、進行方向に前傾姿勢で移動している。
 ステップS42において、物体認識部41は、進行方向を撮像した撮像画像から、障害物としての物体を認識し、認識した物体を特定する物体特定情報を線分検出部44に供給する。
 ステップS43において、線分検出部44は、物体認識部41で検出された細長い線状の物体を、Hough変換を用いて線分に変換する線分変換を行う。これにより、細長い線状の物体が線分として検出される。検出された線分の情報は、回転角計算部45と行動制御部47に供給される。ステップS42の物体認識と、ステップS43の線分検出は、障害物が回避されるまで、換言すれば、ステップS52の処理が開始されるまで、継続して実行される。
 ステップS44において、行動制御部47は、モータ51を制御し、図8に示されるように、検出された線分LLに直交する方向dirへ機体を移動させる。なお、図8において、線分LLに直交する方向は、図8の上方向と下方向の2種類あるが、占有格子地図も参照しながら、一方の方向が選択される。一般的には、地面方向ではない上方向が選択されるが、その周辺の占有格子地図によっても制御される。
 ステップS44の処理により、ドローン1は、検出された線分LLに直交する方向dirに、一定時間または一定距離だけ、移動する。
 そして、ステップS45において、行動制御部47は、線分検出部44からの検出結果に基づいて、障害物を回避できたか、即ち、視線から、電線等に対応する線分が見えなくなったかを判定する。
 ステップS45で、障害物を回避できたと判定された場合、処理は後述するステップS52に進む。
 一方、ステップS45で、障害物を回避できなかったと判定された場合、処理はステップS46に進み、行動制御部47は、モータ51を制御し、機体をヨー方向に回転させる。
 ステップS47において、回転角計算部45は、線分検出部44で検出された線分の角度θを計算し、計算結果を行動制御部47に供給する。
 ステップS48において、行動制御部47は、線分の角度θが式(2)の角度Rとなったかを判定する。
 ステップS48で、線分の角度θが角度Rとなっていないと判定された場合、処理はステップS46に進み、ステップS46乃至S48の処理が繰り返される。すなわち、ドローン1は、線分の角度θが角度Rとなるまで、機体をヨー方向に回転させる。これにより、図2で説明したように、電線などの細長い物体が、ステレオカメラの2枚の撮像画像で、正確に検出することができるようになる。
 そして、ステップS48で、線分の角度θが角度Rとなったと判定された場合、処理はステップS49に進み、ステレオ測距部42は、機体が回転された状態で、進行方向のステレオカメラで撮像された2枚の撮像画像から、視差マップを生成し、占有格子構築部46に供給する。
 ステップS50において、占有格子構築部46は、ステレオ測距部42から供給された視差マップの結果を占有格子地図に足し込むことにより、ドローン1の周囲の3次元空間上の障害物の有無を表す占有格子地図を更新(再構築)する。
 ステップS51において、行動制御部47は、更新された占有格子地図に基づいて各モータ51を制御して、障害物の回避行動を取る。これにより、ドローン1が、電線などの細長い物体を回避する方向へ移動される。障害物を回避する方向へドローン1が移動されると、処理はステップS52に進む。
 上述したステップS45で障害物を回避できたと判定された場合、および、ステップS51で、障害物を回避する方向へ移動した場合のいずれにおいても、障害物の回避行動により、当初設定した局所目的地までの移動経路から外れることになる。
 そこで、ステップS52では、行動制御部47が、局所目的地を再設定し、局所目的地までの移動経路を決定して、各モータ51を制御し、移動を開始する。局所目的地の再設定の方法は、ステップS13における局所目的地の設定と同様である。再設定された局所目的地に対して移動が開始されると、図7の障害物回避行動処理が終了する。
 図7の障害物回避行動処理が終了すると、図6のステップS17からステップS19に進み、自己位置が局所目的地に到着したかが判定される。それ以降は、図6を参照して説明した通りである。
 以上、ドローン1が行う飛行制御処理によれば、ステレオカメラでは正確な物体認識が難しい細長い線状の物体を、機体をヨー方向に回転させることにより正確に認識することができるので、細長い線状の物体を回避して、目的地まで正確に飛行することができる。なお、上述した例では、線分の角度θが目標の角度Rとなっているかを判定し、角度Rとなるまで機体をヨー方向に回転させるように制御したが、目標の角度Rとなっているかを判定せずに、予め定めた所定の角度だけヨー方向に機体を回転させるような簡易的な制御としてもよい。
<5.ユースケース例>
 上述したドローン1の障害物を回避する飛行制御は、例えば、次のようなアプリケーションに適用することができる。
 1.ドローンを用いた有人地帯での荷物の配送
 荷物の集積場所、または、配送用のトラックから、ドローンが荷物を積んで目的地まで移動する。目的地は、緯度経路の値等で与えられ、その周辺や移動経路の情報が未知である。また、人、動物、車の移動など、環境が常に変換するため、環境の3次元構造(3次元空間上の占有格子地図)を事前に取得しておくことが困難な状況であり、細長い線状の物体が存在する可能性が有り得る。
 2.送電線に沿った飛行
 ドローンが、電線と一定の距離を保ちながら飛行する。電線は撓んでおり、風で揺れるため、詳細な3次元構造を事前に把握することが難しい。また、電線の高度が高く、ステレオカメラによる自己位置認識のずれが起きやすい環境である。鉄塔など、固定された設備に、自己位置を認識するためのマーカ等を貼り付け、マーカによる自己位置認識も補助的に行ってもよい。
<6.カメラの変形例>
 上述した実施の形態では、進行方向を撮像するカメラ13をドローン1の本体部12に固定させ、撮像画像が角度Rだけ傾くように制御する場合、ドローン1全体を回転させるようにした。
 しかしながら、カメラ13には、例えば、FPV(First Person View)カメラのような、ドローン1の本体部12に対して、カメラ自体を回転可能なカメラを用いることもできる。この場合、カメラのみを回転させ、ドローン1は、回転させる必要はない。
 また、複数のカメラ13は、図1に示したように、水平方向に配列される構成としたが、例えば、複数のカメラ13の一部(少なくとも1つ)は、垂直方向に配列するような配置とし、カメラを回転させる代わりに、垂直方向に配列した2つのカメラ13をステレオカメラとして用いてもよい。水平方向に並んだステレオカメラと、垂直方向に並んだステレオカメラとは、画像内の水平方向(横方向)のテクスチャが異なるので、カメラ13を回転させずに、上述した細長い物体の検出および回避が可能となる。
<7.ドローン以外の適用例>
 上述した例は、自律的に移動を制御する移動制御に関する本開示の技術を、飛行移動体であるドローンの移動制御に適用した例を説明したが、本開示の技術は、ドローン以外の移動体にも適用することができる。
 例えば、自動運転する普通自動車やトラックなどの車両の移動制御にも、本開示の移動制御を適用することができる。例えば、ガードレールや道路標識など、ステレオカメラのベースラインに平行な線分の認識に有効である。
 また例えば、工場内を移動する移動ロボットなどにも適用可能である。工場内の空中に張られたケーブルなどの細長い物体の正確な検出および回避が可能となる。
<8.コンピュータ構成例>
 上述した一連の飛行制御処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているマイクロコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
 図9は、上述した一連の飛行制御処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
 コンピュータにおいて、CPU(Central Processing Unit)101,ROM(Read Only Memory)102,RAM(Random Access Memory)103は、バス104により相互に接続されている。
 バス104には、さらに、入出力インタフェース105が接続されている。入出力インタフェース105には、入力部106、出力部107、記憶部108、通信部109、及びドライブ110が接続されている。
 入力部106は、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部107は、ディスプレイ、スピーカ、出力端子などよりなる。記憶部108は、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。
 通信部109は、有線通信または無線通信を行うネットワークインタフェースなどよりなる。通信部109は、例えば、インターネット、公衆電話回線網、所謂4G回線や5G回線等の無線移動体用の広域通信網、WAN(Wide Area Network)、LAN(Local Area Network)、Bluetooth(登録商標)規格に準拠した通信を行う。また、通信部109は、例えば、NFC(Near Field Communication)等の近距離無線通信、赤外線通信、HDMI(登録商標)(High-Definition Multimedia Interface)やUSB(Universal Serial Bus)等の規格に準拠した有線通信や、任意の通信規格の通信網や通信路を介した通信を行う。ドライブ110は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブル記録媒体111を駆動する。
 以上のように構成されるコンピュータでは、CPU101が、例えば、記憶部108に記憶されているプログラムを、入出力インタフェース105及びバス104を介して、RAM103にロードして実行することにより、上述した一連の飛行制御処理が行われる。RAM103にはまた、CPU101が各種の処理を実行する上において必要なデータなども適宜記憶される。
 コンピュータ(CPU101)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブル記録媒体111に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。その他、プログラムは、ROM102や記憶部108に、あらかじめインストールしておくことができる。
 なお、本明細書において、フローチャートに記述されたステップは、記載された順序に沿って時系列的に行われる場合はもちろん、必ずしも時系列的に処理されなくとも、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで実行されてもよい。
 本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
 また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
 さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
 なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、本明細書に記載されたもの以外の効果があってもよい。
 なお、本技術は、以下の構成を取ることができる。
(1)
 ステレオカメラの少なくとも一方のカメラで撮像された撮像画像内の線分を検出する線分検出部と、
 前記線分に直交する方向へ、前記ステレオカメラが固定された機体を移動させる制御部と
 を備える移動体。
(2)
 前記制御部は、前記線分に直交する方向へ、一定時間または一定距離だけ、前記機体を移動させる
 前記(1)に記載の移動体。
(3)
 前記撮像画像内の物体を認識する物体認識部をさらに備え、
 前記線分検出部は、前記撮像画像内の前記物体を前記線分に変換することにより、前記線分を検出する
 前記(2)に記載の移動体。
(4)
 前記制御部は、前記線分に直交する方向へ一定時間または一定距離だけ前記機体を移動させることで、前記撮像画像内の前記物体を回避できたかを判定する
 前記(3)に記載の移動体。
(5)
 前記制御部は、前記線分に直交する方向への前記機体の移動では前記物体を回避できない場合、前記ステレオカメラまたは前記機体を、ヨー軸方向に回転させる
 前記(4)に記載の移動体。
(6)
 前記制御部は、前記撮像画像上の前記線分の回転角が所定の角度となるまで、前記ステレオカメラまたは前記機体を、ヨー軸方向に回転させる
 前記(5)に記載の移動体。
(7)
 前記線分の回転角が前記所定の角度となった状態において前記ステレオカメラで撮像される前記撮像画像から視差マップを生成するステレオ測距部と、
 前記視差マップから占有格子地図を構築する占有格子地図構築部と
 をさらに備え、
 前記制御部は、前記占有格子地図に基づいて、前記機体を移動させる
 前記(6)に記載の移動体。
(8)
 前記制御部は、前記機体を移動させた後、前記機体の局所的な目的地である局所目的地を再設定し、再設定後の前記局所目的地へ前記機体を移動させる
 前記(1)乃至(7)のいずれかに記載の移動体。
(9)
 移動体が、
 ステレオカメラの少なくとも一方のカメラで撮像された撮像画像内の線分を検出し、
 前記線分に直交する方向へ、前記ステレオカメラが固定された機体を移動させる
 移動体の制御方法。
(10)
 コンピュータを、
 ステレオカメラの少なくとも一方のカメラで撮像された撮像画像内の線分を検出する線分検出部と、
 前記線分に直交する方向へ、前記ステレオカメラが固定された機体を移動させる制御部
 として機能させるためのプログラム。
 1 ドローン, 11 ロータ, 12 本体部, 13(13A乃至13H) カメラ, 31 コントローラ, 32 RTK-GPS受信部, 33 機体駆動部, 41 物体認識部, 42 ステレオ測距部, 43 自己位置推定部, 44 線分検出部, 45 回転角計算部, 46 占有格子構築部, 47 行動制御部, 51 モータ, 101 CPU, 102 ROM, 103 RAM, 106 入力部, 107 出力部, 108 記憶部, 109 通信部, 110 ドライブ

Claims (10)

  1.  ステレオカメラの少なくとも一方のカメラで撮像された撮像画像内の線分を検出する線分検出部と、
     前記線分に直交する方向へ、前記ステレオカメラが固定された機体を移動させる制御部と
     を備える移動体。
  2.  前記制御部は、前記線分に直交する方向へ、一定時間または一定距離だけ、前記機体を移動させる
     請求項1に記載の移動体。
  3.  前記撮像画像内の物体を認識する物体認識部をさらに備え、
     前記線分検出部は、前記撮像画像内の前記物体を前記線分に変換することにより、前記線分を検出する
     請求項2に記載の移動体。
  4.  前記制御部は、前記線分に直交する方向へ一定時間または一定距離だけ前記機体を移動させることで、前記撮像画像内の前記物体を回避できたかを判定する
     請求項3に記載の移動体。
  5.  前記制御部は、前記線分に直交する方向への前記機体の移動では前記物体を回避できない場合、前記ステレオカメラまたは前記機体を、ヨー軸方向に回転させる
     請求項4に記載の移動体。
  6.  前記制御部は、前記撮像画像上の前記線分の回転角が所定の角度となるまで、前記ステレオカメラまたは前記機体を、ヨー軸方向に回転させる
     請求項5に記載の移動体。
  7.  前記線分の回転角が前記所定の角度となった状態において前記ステレオカメラで撮像される前記撮像画像から視差マップを生成するステレオ測距部と、
     前記視差マップから占有格子地図を構築する占有格子地図構築部と
     をさらに備え、
     前記制御部は、前記占有格子地図に基づいて、前記機体を移動させる
     請求項6に記載の移動体。
  8.  前記制御部は、前記機体を移動させた後、前記機体の局所的な目的地である局所目的地を再設定し、再設定後の前記局所目的地へ前記機体を移動させる
     請求項1に記載の移動体。
  9.  移動体が、
     ステレオカメラの少なくとも一方のカメラで撮像された撮像画像内の線分を検出し、
     前記線分に直交する方向へ、前記ステレオカメラが固定された機体を移動させる
     移動体の制御方法。
  10.  コンピュータを、
     ステレオカメラの少なくとも一方のカメラで撮像された撮像画像内の線分を検出する線分検出部と、
     前記線分に直交する方向へ、前記ステレオカメラが固定された機体を移動させる制御部
     として機能させるためのプログラム。
PCT/JP2020/010740 2019-03-25 2020-03-12 移動体およびその制御方法、並びにプログラム WO2020195876A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US17/438,942 US20220153411A1 (en) 2019-03-25 2020-03-12 Moving body, control method thereof, and program
CN202080021996.8A CN113678082A (zh) 2019-03-25 2020-03-12 移动体、移动体的控制方法和程序
JP2021509022A JP7476882B2 (ja) 2019-03-25 2020-03-12 移動体およびその制御方法、並びにプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-055967 2019-03-25
JP2019055967 2019-03-25

Publications (1)

Publication Number Publication Date
WO2020195876A1 true WO2020195876A1 (ja) 2020-10-01

Family

ID=72609331

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/010740 WO2020195876A1 (ja) 2019-03-25 2020-03-12 移動体およびその制御方法、並びにプログラム

Country Status (4)

Country Link
US (1) US20220153411A1 (ja)
JP (1) JP7476882B2 (ja)
CN (1) CN113678082A (ja)
WO (1) WO2020195876A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2556644B (en) * 2017-02-28 2018-11-28 Matthew Russell Iain Unmanned aerial vehicles

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0239276A (ja) * 1988-07-28 1990-02-08 Agency Of Ind Science & Technol 障害物検出装置
JP2010092279A (ja) * 2008-10-08 2010-04-22 Murata Machinery Ltd 自律移動体及び自律移動体の移動制御方法
JP2011179886A (ja) * 2010-02-26 2011-09-15 National Maritime Research Institute 障害物検知装置及び障害物検知方法
JP2017151499A (ja) * 2016-02-22 2017-08-31 株式会社Ihi 障害物回避方法および装置
JP2019053501A (ja) * 2017-09-14 2019-04-04 Kddi株式会社 飛行装置、管理装置、飛行管理方法及びプログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5606627A (en) * 1995-01-24 1997-02-25 Eotek Inc. Automated analytic stereo comparator
US9185391B1 (en) * 2014-06-17 2015-11-10 Actality, Inc. Adjustable parallax distance, wide field of view, stereoscopic imaging system
CN107850902B (zh) * 2015-07-08 2022-04-08 深圳市大疆创新科技有限公司 可移动物体上的相机配置
CN106054900B (zh) * 2016-08-08 2018-11-09 电子科技大学 基于深度摄像头的机器人临时避障方法
CN206445826U (zh) * 2016-12-09 2017-08-29 南京理工大学 一种带电作业机器人数据通信系统
CN107329490B (zh) * 2017-07-21 2020-10-09 歌尔科技有限公司 无人机避障方法及无人机
US11427218B2 (en) * 2017-08-04 2022-08-30 Sony Corporation Control apparatus, control method, program, and moving body
CN107656545A (zh) * 2017-09-12 2018-02-02 武汉大学 一种面向无人机野外搜救的自主避障与导航方法
CN108500992A (zh) * 2018-04-09 2018-09-07 中山火炬高新企业孵化器有限公司 一种多功能的移动安防机器人
CN108710376A (zh) * 2018-06-15 2018-10-26 哈尔滨工业大学 基于多传感器融合的slam与避障的移动底盘
CN109164825A (zh) * 2018-08-13 2019-01-08 上海机电工程研究所 一种用于多旋翼无人机的自主导航避障方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0239276A (ja) * 1988-07-28 1990-02-08 Agency Of Ind Science & Technol 障害物検出装置
JP2010092279A (ja) * 2008-10-08 2010-04-22 Murata Machinery Ltd 自律移動体及び自律移動体の移動制御方法
JP2011179886A (ja) * 2010-02-26 2011-09-15 National Maritime Research Institute 障害物検知装置及び障害物検知方法
JP2017151499A (ja) * 2016-02-22 2017-08-31 株式会社Ihi 障害物回避方法および装置
JP2019053501A (ja) * 2017-09-14 2019-04-04 Kddi株式会社 飛行装置、管理装置、飛行管理方法及びプログラム

Also Published As

Publication number Publication date
CN113678082A (zh) 2021-11-19
JP7476882B2 (ja) 2024-05-01
JPWO2020195876A1 (ja) 2020-10-01
US20220153411A1 (en) 2022-05-19

Similar Documents

Publication Publication Date Title
US20210065400A1 (en) Selective processing of sensor data
US10599149B2 (en) Salient feature based vehicle positioning
US10936869B2 (en) Camera configuration on movable objects
US10914590B2 (en) Methods and systems for determining a state of an unmanned aerial vehicle
US11721225B2 (en) Techniques for sharing mapping data between an unmanned aerial vehicle and a ground vehicle
US10152059B2 (en) Systems and methods for landing a drone on a moving base
US11288860B2 (en) Information processing apparatus, information processing method, program, and movable object
CN108139211B (zh) 用于测量的装置和方法以及程序
WO2017076929A1 (en) Device and method for autonomous localisation
CN111670419A (zh) 用于自主导航的主动补充曝光设置
JP6380936B2 (ja) 移動体及びシステム
US11709073B2 (en) Techniques for collaborative map construction between an unmanned aerial vehicle and a ground vehicle
CN111093907A (zh) 机器人式运载工具的稳健导航
WO2020195876A1 (ja) 移動体およびその制御方法、並びにプログラム
US11906970B2 (en) Information processing device and information processing method

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: 20777007

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021509022

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: 20777007

Country of ref document: EP

Kind code of ref document: A1