Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

StereoWedgeBug #2555

Merged
merged 73 commits into from
Jul 17, 2020
Merged

StereoWedgeBug #2555

merged 73 commits into from
Jul 17, 2020

Conversation

ralphrschmidt
Copy link
Contributor

I am trying to merge a first attempt at creating a 3D WedgeBug algorithm for path planning and obstacle avoidance. The integration is based on the publications by Laubach 1999 and Kamon 1999. Also, a hypothetical virtual Bebop drone with stereo vision was created for this.

 On branch stereoCamerasNewDrone
 Changes to be committed:
	new file:   conf/userconf/tudelft/ralphthesis2020_conf.xml
	new file:   conf/userconf/tudelft/ralphthesis2020_control_panel.xml
On branch stereoCamerasNewDrone
Changes to be committed:
	new file:   conf/airframes/tudelft/bebop_ralphthesis2020_stereo.xml
	new file:   conf/flight_plans/tudelft/ralphthesis2020_stereo_cyberzoo.xml
	modified:   conf/simulator/gazebo/airframes/bebop_w_stereo_cams.xml
	modified:   conf/simulator/gazebo/models/bebop_w_stereo_cams/bebop_w_stereo_cams.sdf
	modified:   conf/simulator/gazebo/models/bebop_w_stereo_cams/model.config
	modified:   conf/userconf/tudelft/ralphthesis2020_conf.xml
On branch stereoCamerasNewDrone
Changes to be committed:
	modified:   conf/simulator/gazebo/models/bebop_w_stereo_cams/bebop_w_stereo_cams.sdf
On branch stereoCamerasNewDrone
Changes to be committed:
	modified:   conf/simulator/gazebo/models/bebop_w_stereo_cams/bebop_w_stereo_cams.sdf
…hthesis2020_stereo.xml"

Also, used "make" to create tool for creating modules
On branch wedgeBug
Your branch is up to date with 'origin/wedgeBug'.
Changes to be committed:
	modified:   conf/airframes/tudelft/bebop_ralphthesis2020_stereo.xml
	new file:   conf/modules/wedgebug.xml
	modified:   conf/userconf/tudelft/ralphthesis2020_conf.xml
	new file:   sw/airborne/modules/wedgebug/wedgebug.c
	new file:   sw/airborne/modules/wedgebug/wedgebug.h
	new file:   sw/tools/create_module/create_module_ui.py
	new file:   sw/tools/create_module/datalink_ui.py
	new file:   sw/tools/create_module/event_ui.py
	modified:   sw/tools/create_module/files_create.py
	new file:   sw/tools/create_module/init_ui.py
	new file:   sw/tools/create_module/periodic_ui.py
…ariables

On branch wedgeBug
Your branch is ahead of 'origin/wedgeBug' by 1 commit.
 Changes to be committed:
	modified:   conf/airframes/tudelft/bebop_ralphthesis2020_stereo.xml
	modified:   conf/modules/wedgebug.xml
	modified:   conf/simulator/gazebo/models/bebop_w_stereo_cams/bebop_w_stereo_cams.sdf
	modified:   sw/airborne/modules/wedgebug/wedgebug.c
… entries by incrementing pointer)

Changes to be committed:
	deleted:    Color_Image.jpg
	modified:   conf/airframes/tudelft/bebop_ralphthesis2020_stereo.xml
	deleted:    merged_stereo_image.jpg
	modified:   sw/airborne/modules/wedgebug/wedgebug.c
	modified:   sw/airborne/modules/wedgebug/wedgebug.h
	modified:   sw/airborne/modules/wedgebug/wedgebug_opencv.cpp
	modified:   sw/airborne/modules/wedgebug/wedgebug_opencv.h
…d cropping image functionality of block matching function.
…and a new type called "IMAGE_OPENCV_DISP" was added, specifically for OpenCV disparity images.
…3d point structure to image.h 3) Loop in wedebug.c for findin edge point closest to target.
…urned out to be a wrong implementation. Next commit will be the correct implementation)
… drone testing, 4. Created state machine template in module 5. Debugged the "SBM_OCV" function 6. Filled in the state for "Initial position", "Move to start", "Start position" and "Goal reached" 7. Started to fill in the state "Move to goal" 8. Created function to get median distance of object in front ("median_disparity_to_point") 9. Created function to determine angle between drone and goal point ("heading_towards_waypoin") 10. Cleaned up code, removed non-essential variables (especially images) and added new variables.
… the goal. Also increase periodic loop speed to 15 hz to counter the fast turning of the drone
…id of bug in function calculating heading direction.
… set, after an obstacle was encountered. Also added various shapes (with birck texture) for testing.
… based on disparity). It works relatively ok with all shapes investigated.
…coordinates2 function. Additionally, added function to got from image place coordinates to camera coordinate using depth as input. Lastly, depth is now measured in cm when considerring the thresholds.
…rity image (tested in direct control mode only). Next step is to implement this for the guided mode.
…as in the c file. This has been changed such that the baseline in the drone model now resembles the one in the c file.

By addressing this bug of the Bug algorithm the drone can now judge distances accurately. This in turn results in the drone being able to accurately avoid the wall (2mxm) obstacle.
Copy link
Contributor

@tomvand tomvand left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me

@tomvand tomvand merged commit d047a9b into paparazzi:master Jul 17, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants