├── LICENSE
├── README.md
├── oakd_description
├── CMakeLists.txt
├── launch
│ └── description.launch
├── meshes
│ ├── OAK-D-LITE.dae
│ ├── OAK-D-POE.dae
│ └── OAK-D.dae
├── package.xml
└── urdf
│ ├── oakd-lite.urdf.xacro
│ ├── oakd-poe.urdf.xacro
│ └── oakd.urdf.xacro
└── oakd_gazebo
├── CMakeLists.txt
├── launch
├── oakd_empty_world.launch
└── oakd_spawn.launch
├── package.xml
└── worlds
└── empty.world
/LICENSE:
--------------------------------------------------------------------------------
1 | BSD 2-Clause License
2 |
3 | Copyright (c) 2022, Jet Dillo
4 | All rights reserved.
5 |
6 | Redistribution and use in source and binary forms, with or without
7 | modification, are permitted provided that the following conditions are met:
8 |
9 | 1. Redistributions of source code must retain the above copyright notice, this
10 | list of conditions and the following disclaimer.
11 |
12 | 2. Redistributions in binary form must reproduce the above copyright notice,
13 | this list of conditions and the following disclaimer in the documentation
14 | and/or other materials provided with the distribution.
15 |
16 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
20 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
22 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
23 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
24 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
25 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # oakd_models
2 | URDF models, materials and Gazebo demo worlds for the Luxonis OAKD v1 Stereo AI Camera.
3 | You will need to run stereo_image_proc along with this model to get disparity images and pointcloud.
4 |
5 | I've validated this model on the Gazebo simulation of my rover, [Tenacity](https://github.com/jetdillo/tenacity_rover), but haven't tested it extensively on other simulations/worlds. \
6 | This replicates the OAKD B&W cameras as described on the [Luxonis Hardware page about the OAK-D](https://docs.luxonis.com/projects/hardware/en/latest/pages/BW1098OAK.html#depth-perception) along with the center RGB camera.
7 |
8 | You should be able to just drop this into an existing URDF as a xacro macro.
9 | Go check out [Tenacity](https://github.com/jetdillo/tenacity_rover) if you need an example of how to do that.
10 | If you don't know how to work with XACRO The [ROS Wiki](wiki.ros.org) has a good [tutorial](http://wiki.ros.org/urdf/Tutorials/Using%20Xacro%20to%20Clean%20Up%20a%20URDF%20File) on the subject.
11 |
12 | This is an initial release of this model, so there might be bugs, inefficiencies, parameters that could be better specified, etc.
13 | I'm open to feedback, bugs, PRs, etc.
14 |
15 | Thanks,
16 | ----Steve " 'dillo" Okay
17 |
--------------------------------------------------------------------------------
/oakd_description/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 2.8.3)
2 | project(oakd_description)
3 |
4 | find_package(catkin REQUIRED COMPONENTS
5 | urdf
6 | xacro
7 | )
8 |
9 | catkin_package(
10 | CATKIN_DEPENDS
11 | urdf
12 | xacro
13 | )
14 |
15 | include_directories(
16 | ${catkin_INCLUDE_DIRS}
17 | )
18 |
19 | install(DIRECTORY launch meshes urdf
20 | DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}
21 | )
22 |
--------------------------------------------------------------------------------
/oakd_description/launch/description.launch:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/oakd_description/package.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | oakd_description
4 | 0.2.2
5 | Gazebo simulation launch files for the Luxonix OAKD AI Camera
6 | Steve Okay
7 | BSD-3-Clause
8 | https://familiarrobotics.com/
9 | https://github.com/jetdillo/oakd
10 | https://github.com/jetdillo/oakd/issues
11 | Steve Okay
12 | catkin
13 |
14 | description_ros
15 | description_ros_control
16 | urdf
17 | xacro
18 | roslaunch
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/oakd_description/urdf/oakd-lite.urdf.xacro:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 | 0.0 0.0 0.0 0.0 0.0 0.0
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 | Gazebo/DarkGrey
70 |
71 | 30.0
72 |
73 | 1.2566
74 |
75 | 1200
76 | 800
77 | L8
78 |
79 |
80 |
81 | 0.3
82 | 35
83 |
84 |
85 | gaussian
86 | 0.0
87 | 0.007
88 |
89 |
90 |
91 | 0 -0.07 0 0 0 0
92 | 1.1.2566
93 |
94 | 1200
95 | 800
96 | L8
97 |
98 |
99 |
100 | 0.3
101 | 35
102 |
103 |
104 | gaussian
105 | 0.0
106 | 0.007
107 |
108 |
109 |
110 | true
111 | 0.0
112 | oakd_lite_${mount_point}/camera
113 | image_raw
114 | camera_info
115 | camera_optical_frame
116 |
117 | 0.075
118 | 0.0
119 | 0.0
120 | 0.0
121 | 0.0
122 | 0.0
123 |
124 |
125 |
126 |
127 |
128 |
129 |
130 | Gazebo/White
131 |
132 | 30.0
133 |
134 | 1.3962634
135 |
136 | 800
137 | 800
138 | R8G8B8
139 |
140 |
141 | 0.02
142 | 300
143 |
144 |
145 | gaussian
146 |
149 | 0.0
150 | 0.007
151 |
152 |
153 |
154 | true
155 | 0.0
156 | oakd_lite_rgb_${mount_point}
157 | image_raw
158 | camera_info
159 | camera_rgb_link_optical
160 |
163 | 0.0
164 | 0.0
165 | 0.0
166 | 0.0
167 | 0.0
168 | 0.0
169 | 0
170 | 0.0
171 | 0.0
172 | 0.0
173 |
174 |
175 |
176 |
177 |
178 |
179 |
180 |
181 |
182 |
183 |
184 |
185 |
186 |
187 |
188 |
189 |
190 |
191 | true
192 |
193 |
194 |
195 |
--------------------------------------------------------------------------------
/oakd_description/urdf/oakd-poe.urdf.xacro:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | 0.0 0.0 0.0 0.0 0.0 0.0
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 | Gazebo/DarkGrey
73 |
74 | 30.0
75 |
76 | 1.2566
77 |
78 | 1200
79 | 800
80 | L8
81 |
82 |
83 |
84 | 0.3
85 | 35
86 |
87 |
88 | gaussian
89 | 0.0
90 | 0.007
91 |
92 |
93 |
94 | 0 -0.07 0 0 0 0
95 | 1.1.2566
96 |
97 | 1200
98 | 800
99 | L8
100 |
101 |
102 |
103 | 0.3
104 | 35
105 |
106 |
107 | gaussian
108 | 0.0
109 | 0.007
110 |
111 |
112 |
113 | true
114 | 0.0
115 | oakd_poe_${mount_point}/camera
116 | image_raw
117 | camera_info
118 | camera_optical_frame
119 |
120 | 0.075
121 | 0.0
122 | 0.0
123 | 0.0
124 | 0.0
125 | 0.0
126 |
127 |
128 |
129 |
130 |
131 |
132 |
133 | Gazebo/White
134 |
135 | 30.0
136 |
137 | 1.3962634
138 |
139 | 800
140 | 800
141 | R8G8B8
142 |
143 |
144 | 0.02
145 | 300
146 |
147 |
148 | gaussian
149 |
152 | 0.0
153 | 0.007
154 |
155 |
156 |
157 | true
158 | 0.0
159 | oakd_rgb_${mount_point}
160 | image_raw
161 | camera_info
162 | camera_rgb_link_optical
163 |
166 | 0.0
167 | 0.0
168 | 0.0
169 | 0.0
170 | 0.0
171 | 0.0
172 | 0
173 | 0.0
174 | 0.0
175 | 0.0
176 |
177 |
178 |
179 |
180 |
181 |
182 |
183 |
184 |
185 |
186 |
187 |
188 |
189 |
190 |
191 |
192 |
193 |
194 | true
195 |
196 |
197 |
198 |
--------------------------------------------------------------------------------
/oakd_description/urdf/oakd.urdf.xacro:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 | 0.0 0.0 0.0 0.0 0.0 0.0
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 | Gazebo/DarkGrey
70 |
71 | 30.0
72 |
73 | 1.2566
74 |
75 | 1200
76 | 800
77 | L8
78 |
79 |
80 |
81 | 0.3
82 | 35
83 |
84 |
85 | gaussian
86 | 0.0
87 | 0.007
88 |
89 |
90 |
91 | 0 -0.07 0 0 0 0
92 | 1.1.2566
93 |
94 | 1200
95 | 800
96 | L8
97 |
98 |
99 |
100 | 0.3
101 | 35
102 |
103 |
104 | gaussian
105 | 0.0
106 | 0.007
107 |
108 |
109 |
110 | true
111 | 0.0
112 | oakd_${mount_point}/camera
113 | image_raw
114 | camera_info
115 | camera_optical_frame
116 |
117 | 0.075
118 | 0.0
119 | 0.0
120 | 0.0
121 | 0.0
122 | 0.0
123 |
124 |
125 |
126 |
127 |
128 |
129 |
130 | Gazebo/White
131 |
132 | 30.0
133 |
134 | 1.3962634
135 |
136 | 800
137 | 800
138 | R8G8B8
139 |
140 |
141 | 0.02
142 | 300
143 |
144 |
145 | gaussian
146 |
149 | 0.0
150 | 0.007
151 |
152 |
153 |
154 | true
155 | 0.0
156 | oakd_rgb_${mount_point}
157 | image_raw
158 | camera_info
159 | camera_rgb_link_optical
160 |
163 | 0.0
164 | 0.0
165 | 0.0
166 | 0.0
167 | 0.0
168 | 0.0
169 | 0
170 | 0.0
171 | 0.0
172 | 0.0
173 |
174 |
175 |
176 |
177 |
178 |
179 |
180 |
181 |
182 |
183 |
184 |
185 |
186 |
187 |
188 |
189 |
190 |
191 | true
192 |
193 |
194 |
195 |
--------------------------------------------------------------------------------
/oakd_gazebo/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 2.8.3)
2 | project(oakd_gazebo)
3 |
4 | find_package(catkin REQUIRED)
5 |
6 | catkin_package(
7 | DEPENDS
8 | gazebo_ros
9 | gazebo_ros_control
10 | stereo_image_proc
11 | )
12 |
13 | install(DIRECTORY launch models worlds
14 | DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}
15 | )
16 |
--------------------------------------------------------------------------------
/oakd_gazebo/launch/oakd_empty_world.launch:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/oakd_gazebo/launch/oakd_spawn.launch:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/oakd_gazebo/package.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | oakd_gazebo
4 | 0.2.2
5 | Gazebo simulation launch files for the Luxonix OAKD AI Camera
6 | Steve Okay
7 | BSD-3-Clause
8 | https://familiarrobotics.com/jetdillo/oakd
9 | https://github.com/jetdillo/oakd
10 | https://github.com/jetdillo/oakd/issues
11 | Steve Okay
12 | catkin
13 | oakd_description
14 | gazebo_ros
15 | gazebo_ros_control
16 | xacro
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/oakd_gazebo/worlds/empty.world:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | 0.4 0.4 0.4 1
8 | 0.7 0.7 0.7 1
9 | true
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | quick
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 | -->
34 | 0.001
35 | 0.02
36 | 100.0
37 | 0.001
38 |
39 |
40 |
41 |
42 |
43 |
44 | model://sun
45 |
46 |
47 |
48 |
49 | model://ground_plane
50 |
51 |
52 |
53 |
56 |
57 |
58 |
59 |
--------------------------------------------------------------------------------