Loading [MathJax]/extensions/TeX/AMSsymbols.js
Open3D (C++ API)  0.16.0
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Dataset.h
Go to the documentation of this file.
1 // ----------------------------------------------------------------------------
2 // - Open3D: www.open3d.org -
3 // ----------------------------------------------------------------------------
4 // The MIT License (MIT)
5 //
6 // Copyright (c) 2018-2021 www.open3d.org
7 //
8 // Permission is hereby granted, free of charge, to any person obtaining a copy
9 // of this software and associated documentation files (the "Software"), to deal
10 // in the Software without restriction, including without limitation the rights
11 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12 // copies of the Software, and to permit persons to whom the Software is
13 // furnished to do so, subject to the following conditions:
14 //
15 // The above copyright notice and this permission notice shall be included in
16 // all copies or substantial portions of the Software.
17 //
18 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21 // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
23 // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
24 // IN THE SOFTWARE.
25 // ----------------------------------------------------------------------------
26 
27 #pragma once
28 
29 #include <string>
30 #include <unordered_map>
31 #include <utility>
32 #include <vector>
33 
34 namespace open3d {
35 namespace data {
36 
41 std::string LocateDataRoot();
42 
46 std::string Open3DDownloadsPrefix();
47 
75 class Dataset {
76 public:
89  Dataset(const std::string& prefix, const std::string& data_root = "");
90 
91  virtual ~Dataset() {}
92 
95  const std::string GetDataRoot() const { return data_root_; }
96 
98  const std::string GetPrefix() const { return prefix_; }
99 
102  const std::string GetDownloadDir() const {
103  return GetDataRoot() + "/download/" + GetPrefix();
104  }
105 
108  const std::string GetExtractDir() const {
109  return GetDataRoot() + "/extract/" + GetPrefix();
110  }
111 
112 protected:
114  std::string data_root_;
115 
117  std::string prefix_;
118 
120  void CheckPathsExist(const std::vector<std::string>& paths) const;
121 };
122 
131  DataDescriptor(const std::vector<std::string>& urls,
132  const std::string& md5,
133  const std::string& extract_in_subdir = "")
134  : urls_(urls), md5_(md5), extract_in_subdir_(extract_in_subdir) {}
135 
141  DataDescriptor(const std::string& url,
142  const std::string& md5,
143  const std::string& extract_in_subdir = "")
144  : DataDescriptor(
145  std::vector<std::string>{url}, md5, extract_in_subdir) {}
146 
148  std::vector<std::string> urls_;
149 
151  std::string md5_;
152 
155  std::string extract_in_subdir_ = "";
156 };
157 
166 class DownloadDataset : public Dataset {
167 public:
168  DownloadDataset(const std::string& prefix,
169  const DataDescriptor& data_descriptor,
170  const std::string& data_root = "");
171 
172  DownloadDataset(const std::string& prefix,
173  const std::vector<DataDescriptor>& data_descriptors,
174  const std::string& data_root = "");
175 
176  virtual ~DownloadDataset() {}
177 
178 protected:
180  bool HasDownloaded(const DataDescriptor& data_descriptor) const;
181  std::vector<DataDescriptor> data_descriptors_;
182 };
183 
188 public:
189  ArmadilloMesh(const std::string& data_root = "");
190 
192  std::string GetPath() const { return path_; }
193 
194 private:
196  std::string path_;
197 };
198 
203 public:
204  AvocadoModel(const std::string& data_root = "");
205 
207  std::string GetPath() const { return path_; }
208 
209 private:
211  std::string path_;
212 };
213 
219 public:
220  BedroomRGBDImages(const std::string& data_root = "");
221 
223  std::vector<std::string> GetColorPaths() const { return color_paths_; }
225  std::vector<std::string> GetDepthPaths() const { return depth_paths_; }
226 
229  std::string GetTrajectoryLogPath() const { return trajectory_log_path_; }
231  std::string GetReconstructionPath() const { return reconstruction_path_; }
232 
233 private:
235  std::vector<std::string> color_paths_;
237  std::vector<std::string> depth_paths_;
238 
240  std::string trajectory_log_path_;
242  std::string reconstruction_path_;
243 };
244 
248 class BunnyMesh : public DownloadDataset {
249 public:
250  BunnyMesh(const std::string& data_root = "");
251 
253  std::string GetPath() const { return path_; }
254 
255 private:
257  std::string path_;
258 };
259 
266 class CrateModel : public DownloadDataset {
267 public:
268  CrateModel(const std::string& data_root = "");
269 
272  std::string GetPath(const std::string filename = "crate_model") const {
273  return map_filename_to_path_.at(filename);
274  }
275 
278  std::unordered_map<std::string, std::string> GetPathMap() const {
279  return map_filename_to_path_;
280  }
281 
282 private:
284  std::unordered_map<std::string, std::string> map_filename_to_path_;
285 };
286 
291 public:
292  DamagedHelmetModel(const std::string& data_root = "");
293 
295  std::string GetPath() const { return path_; }
296 
297 private:
299  std::string path_;
300 };
301 
308 public:
309  DemoColoredICPPointClouds(const std::string& data_root = "");
310 
312  std::vector<std::string> GetPaths() const { return paths_; }
315  std::string GetPaths(size_t index) const;
316 
317 private:
318  // List of path to PCD point-cloud fragments.
319  std::vector<std::string> paths_;
320 };
321 
328 public:
329  DemoCropPointCloud(const std::string& data_root = "");
330 
332  std::string GetPointCloudPath() const { return point_cloud_path_; }
334  std::string GetCroppedJSONPath() const { return cropped_json_path_; }
335 
336 private:
337  // Path to example point cloud.
338  std::string point_cloud_path_;
339  // Path to saved selected polygon volume file.
340  std::string cropped_json_path_;
341 };
342 
349 public:
350  DemoCustomVisualization(const std::string& data_root = "");
351 
353  std::string GetPointCloudPath() const { return point_cloud_path_; }
355  std::string GetTrajectoryPath() const { return camera_trajectory_path_; }
357  std::string GetRenderOptionPath() const { return render_option_path_; }
358 
359 private:
360  std::string point_cloud_path_;
361  std::string camera_trajectory_path_;
362  std::string render_option_path_;
363 };
364 
371 public:
372  DemoFeatureMatchingPointClouds(const std::string& data_root = "");
373 
375  std::vector<std::string> GetPointCloudPaths() const {
376  return point_cloud_paths_;
377  }
380  std::vector<std::string> GetFPFHFeaturePaths() const {
381  return fpfh_feature_paths_;
382  }
385  std::vector<std::string> GetL32DFeaturePaths() const {
386  return l32d_feature_paths_;
387  }
388 
389 private:
391  std::vector<std::string> point_cloud_paths_;
394  std::vector<std::string> fpfh_feature_paths_;
397  std::vector<std::string> l32d_feature_paths_;
398 };
399 
405 public:
406  DemoICPPointClouds(const std::string& data_root = "");
407 
409  std::vector<std::string> GetPaths() const { return paths_; }
412  std::string GetPaths(size_t index) const;
415  std::string GetTransformationLogPath() const {
416  return transformation_log_path_;
417  }
418 
419 private:
420  // List of path to PCD point-cloud fragments.
421  std::vector<std::string> paths_;
422  std::string transformation_log_path_;
423 };
424 
430 public:
431  DemoPoseGraphOptimization(const std::string& data_root = "");
432 
434  std::string GetPoseGraphFragmentPath() const {
435  return pose_graph_fragment_path_;
436  }
438  std::string GetPoseGraphGlobalPath() const {
439  return pose_graph_global_path_;
440  }
441 
442 private:
444  std::string pose_graph_fragment_path_;
446  std::string pose_graph_global_path_;
447 };
448 
453 public:
454  EaglePointCloud(const std::string& data_root = "");
455 
457  std::string GetPath() const { return path_; }
458 
459 private:
461  std::string path_;
462 };
463 
471 public:
472  FlightHelmetModel(const std::string& data_root = "");
473 
477  std::string GetPath(const std::string filename = "flight_helmet") const {
478  return map_filename_to_path_.at(filename);
479  }
480 
483  std::unordered_map<std::string, std::string> GetPathMap() const {
484  return map_filename_to_path_;
485  }
486 
487 private:
489  std::unordered_map<std::string, std::string> map_filename_to_path_;
490 };
491 
496 public:
497  JackJackL515Bag(const std::string& data_root = "");
498 
500  std::string GetPath() const { return path_; }
501 
502 private:
504  std::string path_;
505 };
506 
509 class JuneauImage : public DownloadDataset {
510 public:
511  JuneauImage(const std::string& data_root = "");
512 
514  std::string GetPath() const { return path_; }
515 
516 private:
518  std::string path_;
519 };
520 
523 class KnotMesh : public DownloadDataset {
524 public:
525  KnotMesh(const std::string& data_root = "");
526 
528  std::string GetPath() const { return path_; }
529 
530 private:
532  std::string path_;
533 };
534 
540 public:
541  LivingRoomPointClouds(const std::string& data_root = "");
542 
544  std::vector<std::string> GetPaths() const { return paths_; }
548  std::string GetPaths(size_t index) const;
549 
550 private:
552  std::vector<std::string> paths_;
553 };
554 
560 public:
561  LoungeRGBDImages(const std::string& data_root = "");
562 
564  std::vector<std::string> GetColorPaths() const { return color_paths_; }
566  std::vector<std::string> GetDepthPaths() const { return depth_paths_; }
567 
570  std::string GetTrajectoryLogPath() const { return trajectory_log_path_; }
572  std::string GetReconstructionPath() const { return reconstruction_path_; }
573 
574 private:
576  std::vector<std::string> color_paths_;
578  std::vector<std::string> depth_paths_;
579 
581  std::string trajectory_log_path_;
583  std::string reconstruction_path_;
584 };
585 
590 public:
591  MetalTexture(const std::string& data_root = "");
593  std::string GetAlbedoTexturePath() const {
594  return map_filename_to_path_.at("albedo");
595  }
597  std::string GetNormalTexturePath() const {
598  return map_filename_to_path_.at("normal");
599  }
601  std::string GetRoughnessTexturePath() const {
602  return map_filename_to_path_.at("roughness");
603  }
605  std::string GetMetallicTexturePath() const {
606  return map_filename_to_path_.at("metallic");
607  }
610  std::unordered_map<std::string, std::string> GetPathMap() const {
611  return map_filename_to_path_;
612  }
613 
614 private:
616  std::unordered_map<std::string, std::string> map_filename_to_path_;
617 };
618 
625 class MonkeyModel : public DownloadDataset {
626 public:
627  MonkeyModel(const std::string& data_root = "");
628 
631  std::string GetPath(const std::string filename = "monkey_model") const {
632  return map_filename_to_path_.at(filename);
633  }
634 
637  std::unordered_map<std::string, std::string> GetPathMap() const {
638  return map_filename_to_path_;
639  }
640 
641 private:
643  std::unordered_map<std::string, std::string> map_filename_to_path_;
644 };
645 
651 public:
652  OfficePointClouds(const std::string& data_root = "");
653 
655  std::vector<std::string> GetPaths() const { return paths_; }
659  std::string GetPaths(size_t index) const;
660 
661 private:
663  std::vector<std::string> paths_;
664 };
665 
670 public:
671  PCDPointCloud(const std::string& data_root = "");
672 
674  std::string GetPath() const { return path_; }
675 
676 private:
678  std::string path_;
679 };
680 
685 public:
686  PLYPointCloud(const std::string& data_root = "");
687 
689  std::string GetPath() const { return path_; }
690 
691 private:
693  std::string path_;
694 };
695 
700 public:
701  PTSPointCloud(const std::string& data_root = "");
702 
704  std::string GetPath() const { return path_; }
705 
706 private:
708  std::string path_;
709 };
710 
715 public:
716  PaintedPlasterTexture(const std::string& data_root = "");
718  std::string GetAlbedoTexturePath() const {
719  return map_filename_to_path_.at("albedo");
720  }
722  std::string GetNormalTexturePath() const {
723  return map_filename_to_path_.at("normal");
724  }
726  std::string GetRoughnessTexturePath() const {
727  return map_filename_to_path_.at("roughness");
728  }
731  std::unordered_map<std::string, std::string> GetPathMap() const {
732  return map_filename_to_path_;
733  }
734 
735 private:
737  std::unordered_map<std::string, std::string> map_filename_to_path_;
738 };
739 
766 public:
767  RedwoodIndoorLivingRoom1(const std::string& data_root = "");
768 
770  std::string GetPointCloudPath() const { return point_cloud_path_; }
772  std::vector<std::string> GetColorPaths() const { return color_paths_; }
774  std::vector<std::string> GetDepthPaths() const { return depth_paths_; }
776  std::vector<std::string> GetNoisyDepthPaths() const {
777  return noisy_depth_paths_;
778  }
780  std::string GetONIPath() const { return oni_path_; }
782  std::string GetTrajectoryPath() const { return trajectory_path_; }
784  std::string GetNoiseModelPath() const { return noise_model_path_; }
785 
786 private:
787  std::string point_cloud_path_;
788  std::vector<std::string> color_paths_;
789  std::vector<std::string> depth_paths_;
790  std::vector<std::string> noisy_depth_paths_;
791  std::string oni_path_;
792  std::string trajectory_path_;
793  std::string noise_model_path_;
794 };
795 
822 public:
823  RedwoodIndoorLivingRoom2(const std::string& data_root = "");
824 
826  std::string GetPointCloudPath() const { return point_cloud_path_; }
828  std::vector<std::string> GetColorPaths() const { return color_paths_; }
830  std::vector<std::string> GetDepthPaths() const { return depth_paths_; }
832  std::vector<std::string> GetNoisyDepthPaths() const {
833  return noisy_depth_paths_;
834  }
836  std::string GetONIPath() const { return oni_path_; }
838  std::string GetTrajectoryPath() const { return trajectory_path_; }
840  std::string GetNoiseModelPath() const { return noise_model_path_; }
841 
842 private:
843  std::string point_cloud_path_;
844  std::vector<std::string> color_paths_;
845  std::vector<std::string> depth_paths_;
846  std::vector<std::string> noisy_depth_paths_;
847  std::string oni_path_;
848  std::string trajectory_path_;
849  std::string noise_model_path_;
850 };
851 
878 public:
879  RedwoodIndoorOffice1(const std::string& data_root = "");
880 
882  std::string GetPointCloudPath() const { return point_cloud_path_; }
884  std::vector<std::string> GetColorPaths() const { return color_paths_; }
886  std::vector<std::string> GetDepthPaths() const { return depth_paths_; }
888  std::vector<std::string> GetNoisyDepthPaths() const {
889  return noisy_depth_paths_;
890  }
892  std::string GetONIPath() const { return oni_path_; }
894  std::string GetTrajectoryPath() const { return trajectory_path_; }
896  std::string GetNoiseModelPath() const { return noise_model_path_; }
897 
898 private:
899  std::string point_cloud_path_;
900  std::vector<std::string> color_paths_;
901  std::vector<std::string> depth_paths_;
902  std::vector<std::string> noisy_depth_paths_;
903  std::string oni_path_;
904  std::string trajectory_path_;
905  std::string noise_model_path_;
906 };
907 
934 public:
935  RedwoodIndoorOffice2(const std::string& data_root = "");
936 
938  std::string GetPointCloudPath() const { return point_cloud_path_; }
940  std::vector<std::string> GetColorPaths() const { return color_paths_; }
942  std::vector<std::string> GetDepthPaths() const { return depth_paths_; }
944  std::vector<std::string> GetNoisyDepthPaths() const {
945  return noisy_depth_paths_;
946  }
948  std::string GetONIPath() const { return oni_path_; }
950  std::string GetTrajectoryPath() const { return trajectory_path_; }
952  std::string GetNoiseModelPath() const { return noise_model_path_; }
953 
954 private:
955  std::string point_cloud_path_;
956  std::vector<std::string> color_paths_;
957  std::vector<std::string> depth_paths_;
958  std::vector<std::string> noisy_depth_paths_;
959  std::string oni_path_;
960  std::string trajectory_path_;
961  std::string noise_model_path_;
962 };
963 
968 public:
969  SampleFountainRGBDImages(const std::string& data_root = "");
970 
972  std::vector<std::string> GetColorPaths() const { return color_paths_; }
974  std::vector<std::string> GetDepthPaths() const { return depth_paths_; }
976  std::string GetKeyframePosesLogPath() const {
977  return keyframe_poses_log_path_;
978  }
980  std::string GetReconstructionPath() const { return reconstruction_path_; }
981 
982 private:
983  std::vector<std::string> color_paths_;
984  std::vector<std::string> depth_paths_;
985  std::string keyframe_poses_log_path_;
986  std::string reconstruction_path_;
987 };
988 
992 public:
993  SampleL515Bag(const std::string& data_root = "");
994 
996  std::string GetPath() const { return path_; }
997 
998 private:
1000  std::string path_;
1001 };
1002 
1008 public:
1009  SampleNYURGBDImage(const std::string& data_root = "");
1010 
1012  std::string GetColorPath() const { return color_path_; }
1014  std::string GetDepthPath() const { return depth_path_; }
1015 
1016 private:
1018  std::string color_path_;
1020  std::string depth_path_;
1021 };
1022 
1026 // Additionally it also contains camera trajectory log, camera odometry log,
1027 // rgbd match, and point cloud reconstruction obtained using TSDF.
1029 public:
1030  SampleRedwoodRGBDImages(const std::string& data_root = "");
1031 
1033  std::vector<std::string> GetColorPaths() const { return color_paths_; }
1035  std::vector<std::string> GetDepthPaths() const { return depth_paths_; }
1036 
1038  std::string GetTrajectoryLogPath() const { return trajectory_log_path_; }
1040  std::string GetOdometryLogPath() const { return odometry_log_path_; }
1042  std::string GetRGBDMatchPath() const { return rgbd_match_path_; }
1044  std::string GetReconstructionPath() const { return reconstruction_path_; }
1046  std::string GetCameraIntrinsicPath() const {
1047  return camera_intrinsic_path_;
1048  }
1049 
1050 private:
1052  std::vector<std::string> color_paths_;
1054  std::vector<std::string> depth_paths_;
1055 
1057  std::string trajectory_log_path_;
1059  std::string odometry_log_path_;
1061  std::string rgbd_match_path_;
1063  std::string reconstruction_path_;
1065  std::string camera_intrinsic_path_;
1066 };
1067 
1073 public:
1074  SampleSUNRGBDImage(const std::string& data_root = "");
1075 
1077  std::string GetColorPath() const { return color_path_; }
1079  std::string GetDepthPath() const { return depth_path_; }
1080 
1081 private:
1083  std::string color_path_;
1085  std::string depth_path_;
1086 };
1087 
1093 public:
1094  SampleTUMRGBDImage(const std::string& data_root = "");
1095 
1097  std::string GetColorPath() const { return color_path_; }
1099  std::string GetDepthPath() const { return depth_path_; }
1100 
1101 private:
1103  std::string color_path_;
1105  std::string depth_path_;
1106 };
1107 
1114 class SwordModel : public DownloadDataset {
1115 public:
1116  SwordModel(const std::string& data_root = "");
1117 
1121  std::string GetPath(const std::string filename = "sword_model") const {
1122  return map_filename_to_path_.at(filename);
1123  }
1124 
1127  std::unordered_map<std::string, std::string> GetPathMap() const {
1128  return map_filename_to_path_;
1129  }
1130 
1131 private:
1133  std::unordered_map<std::string, std::string> map_filename_to_path_;
1134 };
1135 
1140 public:
1141  TerrazzoTexture(const std::string& data_root = "");
1143  std::string GetAlbedoTexturePath() const {
1144  return map_filename_to_path_.at("albedo");
1145  }
1147  std::string GetNormalTexturePath() const {
1148  return map_filename_to_path_.at("normal");
1149  }
1151  std::string GetRoughnessTexturePath() const {
1152  return map_filename_to_path_.at("roughness");
1153  }
1156  std::unordered_map<std::string, std::string> GetPathMap() const {
1157  return map_filename_to_path_;
1158  }
1159 
1160 private:
1162  std::unordered_map<std::string, std::string> map_filename_to_path_;
1163 };
1164 
1169 public:
1170  TilesTexture(const std::string& data_root = "");
1172  std::string GetAlbedoTexturePath() const {
1173  return map_filename_to_path_.at("albedo");
1174  }
1176  std::string GetNormalTexturePath() const {
1177  return map_filename_to_path_.at("normal");
1178  }
1180  std::string GetRoughnessTexturePath() const {
1181  return map_filename_to_path_.at("roughness");
1182  }
1185  std::unordered_map<std::string, std::string> GetPathMap() const {
1186  return map_filename_to_path_;
1187  }
1188 
1189 private:
1191  std::unordered_map<std::string, std::string> map_filename_to_path_;
1192 };
1193 
1198 public:
1199  WoodFloorTexture(const std::string& data_root = "");
1201  std::string GetAlbedoTexturePath() const {
1202  return map_filename_to_path_.at("albedo");
1203  }
1205  std::string GetNormalTexturePath() const {
1206  return map_filename_to_path_.at("normal");
1207  }
1209  std::string GetRoughnessTexturePath() const {
1210  return map_filename_to_path_.at("roughness");
1211  }
1214  std::unordered_map<std::string, std::string> GetPathMap() const {
1215  return map_filename_to_path_;
1216  }
1217 
1218 private:
1220  std::unordered_map<std::string, std::string> map_filename_to_path_;
1221 };
1222 
1227 public:
1228  WoodTexture(const std::string& data_root = "");
1230  std::string GetAlbedoTexturePath() const {
1231  return map_filename_to_path_.at("albedo");
1232  }
1234  std::string GetNormalTexturePath() const {
1235  return map_filename_to_path_.at("normal");
1236  }
1238  std::string GetRoughnessTexturePath() const {
1239  return map_filename_to_path_.at("roughness");
1240  }
1243  std::unordered_map<std::string, std::string> GetPathMap() const {
1244  return map_filename_to_path_;
1245  }
1246 
1247 private:
1249  std::unordered_map<std::string, std::string> map_filename_to_path_;
1250 };
1251 
1252 } // namespace data
1253 } // namespace open3d
Data class for JuneauImage contains the JuneauImage.jpg file.
Definition: Dataset.h:509
Data class for JackJackL515Bag contains the RealSense L515 JackJackL515Bag.bag file.
Definition: Dataset.h:495
std::string GetPath(const std::string filename="sword_model") const
Path to the filename. By default it returns the path to sword.obj file. Refer documentation page for ...
Definition: Dataset.h:1121
std::string GetTrajectoryLogPath() const
Path to camera trajectory log file trajectory.log.
Definition: Dataset.h:1038
Data class for RedwoodIndoorLivingRoom1, containing dense point cloud, rgb sequence, clean depth sequence, noisy depth sequence, oni sequence, and ground-truth camera trajectory.
Definition: Dataset.h:877
std::unordered_map< std::string, std::string > GetPathMap() const
Returns the map of filename to path. Refer documentation page for available options.
Definition: Dataset.h:1156
const std::string GetPrefix() const
Get prefix for the dataset.
Definition: Dataset.h:98
std::vector< std::string > GetDepthPaths() const
Returns List of paths to depth image samples of size 5.
Definition: Dataset.h:1035
std::string GetPointCloudPath() const
Path to the point cloud (ply).
Definition: Dataset.h:353
const std::string GetDownloadDir() const
Get absolute path to download directory. i.e. ${data_root}/download/${prefix}.
Definition: Dataset.h:102
std::string GetKeyframePosesLogPath() const
Path to camera poses at key frames log file key.log.
Definition: Dataset.h:976
Dataset class for LivingRoomPointClouds contains 57 point clouds of binary PLY format.
Definition: Dataset.h:539
std::string GetColorPath() const
Path to color image sample.
Definition: Dataset.h:1077
std::string GetPath() const
Path to the KnotMesh.ply file.
Definition: Dataset.h:528
Data class for EaglePointCloud contains the EaglePointCloud.ply file.
Definition: Dataset.h:452
std::vector< std::string > GetNoisyDepthPaths() const
Paths to the noisy depth images.
Definition: Dataset.h:832
std::string GetReconstructionPath() const
Path to mesh reconstruction lounge.ply.
Definition: Dataset.h:572
std::string GetNormalTexturePath() const
Returns the path to normal texture image.
Definition: Dataset.h:1234
Data class for PLYPointCloud contains the fragment.ply point cloud mesh from the Redwood Living Room ...
Definition: Dataset.h:684
std::string GetNormalTexturePath() const
Returns the path to normal texture image.
Definition: Dataset.h:1205
const std::string GetExtractDir() const
Get absolute path to extract directory. i.e. ${data_root}/extract/${prefix}.
Definition: Dataset.h:108
Data class for BedroomRGBDImages contains a sample set of 21931 color and depth images from Redwood R...
Definition: Dataset.h:218
std::string GetONIPath() const
Paths to the ONI sequence.
Definition: Dataset.h:780
std::unordered_map< std::string, std::string > GetPathMap() const
Returns the map of filename to path. Refer documentation page for available options.
Definition: Dataset.h:1127
std::unordered_map< std::string, std::string > GetPathMap() const
Returns the map of filename to path. Refer documentation page for available options.
Definition: Dataset.h:278
Data class for SampleFountainRGBDImages contains a sample set of 33 color and depth images from the F...
Definition: Dataset.h:967
Data class for KnotMesh contains the KnotMesh.ply file.
Definition: Dataset.h:523
Data class for MonkeyModel contains a monkey model file, along with material and various other textur...
Definition: Dataset.h:625
Data class for DemoFeatureMatchingPointClouds contains 2 point cloud fragments and their respective F...
Definition: Dataset.h:370
Data class for SampleL515Bag contains the SampleL515Bag.bag file.
Definition: Dataset.h:991
std::string GetTrajectoryPath() const
Path to the ground-truth camera trajectory.
Definition: Dataset.h:950
std::string GetPointCloudPath() const
Path to the point cloud.
Definition: Dataset.h:826
std::string GetReconstructionPath() const
Path to mesh reconstruction.
Definition: Dataset.h:980
Data class for SampleTUMRGBDImage contains a color image TUM_color.png and a depth image TUM_depth...
Definition: Dataset.h:1092
std::vector< std::string > GetFPFHFeaturePaths() const
Returns list of paths to saved FPFH features binary for point clouds, respectively, of size 2.
Definition: Dataset.h:380
std::vector< std::string > GetDepthPaths() const
Returns List of paths to depth image samples of size 21931.
Definition: Dataset.h:225
Data class for DamagedHelmetModel contains a damaged helmet model file, along with material and JPG f...
Definition: Dataset.h:290
Infomation about a file to be downloaded.
Definition: Dataset.h:125
std::vector< std::string > GetDepthPaths() const
Paths to the clean depth images.
Definition: Dataset.h:886
std::string GetRoughnessTexturePath() const
Returns the path to roughness texture image.
Definition: Dataset.h:1180
std::string GetRoughnessTexturePath() const
Returns the path to roughness texture image.
Definition: Dataset.h:1209
Data class for RedwoodIndoorLivingRoom1, containing dense point cloud, rgb sequence, clean depth sequence, noisy depth sequence, oni sequence, and ground-truth camera trajectory.
Definition: Dataset.h:765
void CheckPathsExist(const std::vector< std::string > &paths) const
Check if the paths exists after extraction.
Definition: Dataset.cpp:66
Definition: Device.h:126
std::string GetPointCloudPath() const
Path to example point cloud.
Definition: Dataset.h:332
std::string GetRoughnessTexturePath() const
Returns the path to roughness texture image.
Definition: Dataset.h:1238
std::vector< std::string > GetNoisyDepthPaths() const
Paths to the noisy depth images.
Definition: Dataset.h:776
std::string GetCroppedJSONPath() const
Path to saved selected polygon volume file.
Definition: Dataset.h:334
std::string GetRoughnessTexturePath() const
Returns the path to roughness texture image.
Definition: Dataset.h:726
std::vector< std::string > urls_
List of URL mirrors.
Definition: Dataset.h:148
Data class for SwordModel contains a sword model file, along with material and various other texture ...
Definition: Dataset.h:1114
std::string GetTrajectoryPath() const
Path to the ground-truth camera trajectory.
Definition: Dataset.h:782
std::string GetTrajectoryLogPath() const
Path to camera trajectory log file lounge_trajectory.log.
Definition: Dataset.h:570
Data class for LoungeRGBDImages contains a sample set of 3000 color and depth images from Stanford Lo...
Definition: Dataset.h:559
std::string GetPath() const
Path to the EaglePointCloud.ply file.
Definition: Dataset.h:457
std::string GetRenderOptionPath() const
Path to the renderoption.json.
Definition: Dataset.h:357
std::string GetReconstructionPath() const
Path to point cloud reconstruction from TSDF.
Definition: Dataset.h:1044
Data class for DemoPoseGraphOptimization contains an example fragment pose graph, and global pose gra...
Definition: Dataset.h:429
std::string GetPath() const
Path to the PLY format point cloud.
Definition: Dataset.h:689
std::unordered_map< std::string, std::string > GetPathMap() const
Returns the map of filename to path. Refer documentation page for available options.
Definition: Dataset.h:483
std::unordered_map< std::string, std::string > GetPathMap() const
Returns the map of filename to path. Refer documentation page for available options.
Definition: Dataset.h:1214
std::string GetDepthPath() const
Path to depth image sample.
Definition: Dataset.h:1079
std::string GetNoiseModelPath() const
Path to the noise model.
Definition: Dataset.h:952
std::unordered_map< std::string, std::string > GetPathMap() const
Returns the map of filename to path. Refer documentation page for available options.
Definition: Dataset.h:1243
Data class for DemoCustomVisualization contains an example point-cloud, camera trajectory (json file)...
Definition: Dataset.h:348
std::vector< std::string > GetPointCloudPaths() const
Returns list of paths to point clouds, of size 2.
Definition: Dataset.h:375
std::string GetDepthPath() const
Path to depth image sample.
Definition: Dataset.h:1099
std::unordered_map< std::string, std::string > GetPathMap() const
Returns the map of filename to path. Refer documentation page for available options.
Definition: Dataset.h:610
Data class for PTSPointCloud contains a sample point-cloud of PTS format.
Definition: Dataset.h:699
std::string GetAlbedoTexturePath() const
Returns the path to albedo color texture image.
Definition: Dataset.h:1143
DataDescriptor(const std::vector< std::string > &urls, const std::string &md5, const std::string &extract_in_subdir="")
Constructor a list of url mirrors.
Definition: Dataset.h:131
std::string GetTransformationLogPath() const
Path to the transformation metadata log file, containing transformation between frame 0 and 1...
Definition: Dataset.h:415
std::unordered_map< std::string, std::string > GetPathMap() const
Returns the map of filename to path. Refer documentation page for available options.
Definition: Dataset.h:731
Data class for RedwoodIndoorLivingRoom1, containing dense point cloud, rgb sequence, clean depth sequence, noisy depth sequence, oni sequence, and ground-truth camera trajectory.
Definition: Dataset.h:821
std::string GetNoiseModelPath() const
Path to the noise model.
Definition: Dataset.h:840
Data class for WoodFloorTexture contains albedo, normal and roughness texture files for wooden floor ...
Definition: Dataset.h:1197
std::string GetTrajectoryPath() const
Path to the ground-truth camera trajectory.
Definition: Dataset.h:894
Data class for WoodTexture contains albedo, normal and roughness texture files for wood based materia...
Definition: Dataset.h:1226
Data class for BunnyMesh contains the BunnyMesh.ply from the Stanford 3D Scanning Repository...
Definition: Dataset.h:248
std::string Open3DDownloadsPrefix()
Definition: Dataset.cpp:50
std::string GetPath() const
Path to the SampleL515Bag.bag file.
Definition: Dataset.h:996
std::vector< std::string > GetDepthPaths() const
Paths to the clean depth images.
Definition: Dataset.h:774
std::string GetPoseGraphFragmentPath() const
Path to example global pose graph (json).
Definition: Dataset.h:434
std::string GetNormalTexturePath() const
Returns the path to normal texture image.
Definition: Dataset.h:1176
std::vector< std::string > GetColorPaths() const
Paths to the color images.
Definition: Dataset.h:884
std::string GetONIPath() const
Paths to the ONI sequence.
Definition: Dataset.h:892
Base Open3D dataset class.
Definition: Dataset.h:75
Data class for TerrazzoTexture contains albedo, normal and roughness texture files for terrazzo based...
Definition: Dataset.h:1139
std::string GetPath() const
Path to the PTS format point cloud.
Definition: Dataset.h:704
Dataset class with one or more downloaded file.
Definition: Dataset.h:166
std::string GetAlbedoTexturePath() const
Returns the path to albedo color texture image.
Definition: Dataset.h:1230
std::string GetPath(const std::string filename="monkey_model") const
Path to the filename. By default it returns the path to mokey.obj file. Refer documentation page for ...
Definition: Dataset.h:631
std::string GetPath() const
Path to the JackJackL515Bag.bag file.
Definition: Dataset.h:500
std::string GetONIPath() const
Paths to the ONI sequence.
Definition: Dataset.h:948
std::string GetTrajectoryLogPath() const
Path to camera trajectory log file lounge_trajectory.log.
Definition: Dataset.h:229
Data class for AvocadoModel contains a avocado model file, along with material and PNG format embedde...
Definition: Dataset.h:202
std::string GetColorPath() const
Path to color image sample.
Definition: Dataset.h:1097
std::string GetDepthPath() const
Path to depth image sample.
Definition: Dataset.h:1014
std::vector< std::string > GetDepthPaths() const
Paths to the clean depth images.
Definition: Dataset.h:830
Dataset class for OfficePointClouds contains 53 point clouds of binary PLY format.
Definition: Dataset.h:650
std::string GetPointCloudPath() const
Path to the point cloud.
Definition: Dataset.h:770
std::string GetReconstructionPath() const
Path to mesh reconstruction bedroom.ply.
Definition: Dataset.h:231
std::vector< std::string > GetPaths() const
Returns list of paths to ply point-cloud fragments of size 57.
Definition: Dataset.h:544
std::unordered_map< std::string, std::string > GetPathMap() const
Returns the map of filename to path. Refer documentation page for available options.
Definition: Dataset.h:1185
std::vector< std::string > GetPaths() const
Returns list of 3 point cloud paths.
Definition: Dataset.h:409
std::string GetNoiseModelPath() const
Path to the noise model.
Definition: Dataset.h:784
Data class for SampleNYURGBDImage contains a color image NYU_color.ppm and a depth image NYU_depth...
Definition: Dataset.h:1007
std::vector< std::string > GetL32DFeaturePaths() const
Returns list of paths to saved L32D features binary for point clouds, respectively, of size 2.
Definition: Dataset.h:385
std::string GetPath() const
Path to the GLB format avocado model.
Definition: Dataset.h:207
std::string GetPath() const
Path to the JuneauImage.jgp file.
Definition: Dataset.h:514
std::string GetCameraIntrinsicPath() const
Path to pinhole camera intrinsic (json).
Definition: Dataset.h:1046
std::string GetRoughnessTexturePath() const
Returns the path to roughness texture image.
Definition: Dataset.h:1151
Definition: PinholeCameraIntrinsic.cpp:35
std::string LocateDataRoot()
Definition: Dataset.cpp:39
Data class for DemoColoredICPPointClouds contains 2 point clouds of PLY format. This data is used in ...
Definition: Dataset.h:307
DataDescriptor(const std::string &url, const std::string &md5, const std::string &extract_in_subdir="")
Constructor a download url.
Definition: Dataset.h:141
std::vector< std::string > GetColorPaths() const
Paths to the color images.
Definition: Dataset.h:828
Data class for PaintedPlasterTexture contains albedo, normal and roughness texture files for painted ...
Definition: Dataset.h:714
std::vector< std::string > GetPaths() const
Returns list of paths to ply point-cloud fragments of size 52.
Definition: Dataset.h:655
std::string GetPath() const
Path to the BunnyMesh.ply file.
Definition: Dataset.h:253
std::string GetAlbedoTexturePath() const
Returns the path to albedo color texture image.
Definition: Dataset.h:593
Dataset(const std::string &prefix, const std::string &data_root="")
Parameterized Constructor.
Definition: Dataset.cpp:54
std::vector< std::string > GetColorPaths() const
Returns List of paths to color image samples of size 3000.
Definition: Dataset.h:564
const std::string GetDataRoot() const
Get data root directory. The data root is set at construction time or automatically determined...
Definition: Dataset.h:95
std::unordered_map< std::string, std::string > GetPathMap() const
Returns the map of filename to path. Refer documentation page for available options.
Definition: Dataset.h:637
Data class for SampleRedwoodRGBDImages contains a sample set of 5 color and depth images from Redwood...
Definition: Dataset.h:1028
std::vector< DataDescriptor > data_descriptors_
Definition: Dataset.h:181
std::vector< std::string > GetDepthPaths() const
Returns List of paths to depth image samples of size 3000.
Definition: Dataset.h:566
std::string GetAlbedoTexturePath() const
Returns the path to albedo color texture image.
Definition: Dataset.h:718
std::string md5_
MD5 checksum of the downloaded file.
Definition: Dataset.h:151
std::string GetPoseGraphGlobalPath() const
Path to example fragment pose graph (json).
Definition: Dataset.h:438
std::string GetTrajectoryPath() const
Path to the camera_trajectory.json.
Definition: Dataset.h:355
Data class for PCDPointCloud contains the fragment.pcd point cloud mesh from the Redwood Living Room ...
Definition: Dataset.h:669
Data class for MetalTexture contains albedo, normal, roughness and metallic texture files for metal b...
Definition: Dataset.h:589
Data class for SampleSUNRGBDImage contains a color image SUN_color.jpg and a depth image SUN_depth...
Definition: Dataset.h:1072
std::string GetPointCloudPath() const
Path to the point cloud.
Definition: Dataset.h:938
std::string GetPath() const
Path to the ArmadilloMesh.ply file.
Definition: Dataset.h:192
Data class for DemoCropPointCloud contains a point cloud, and cropped.json (a saved selected polygon ...
Definition: Dataset.h:327
Data class for RedwoodIndoorLivingRoom1, containing dense point cloud, rgb sequence, clean depth sequence, noisy depth sequence, oni sequence, and ground-truth camera trajectory.
Definition: Dataset.h:933
std::string GetRGBDMatchPath() const
Path to color and depth image match file rgbd.match.
Definition: Dataset.h:1042
std::string GetAlbedoTexturePath() const
Returns the path to albedo color texture image.
Definition: Dataset.h:1201
std::string GetColorPath() const
Path to color image sample.
Definition: Dataset.h:1012
std::string GetPath() const
Path to the GLB format damaged helmet model.
Definition: Dataset.h:295
std::string GetRoughnessTexturePath() const
Returns the path to roughness texture image.
Definition: Dataset.h:601
std::vector< std::string > GetColorPaths() const
Paths to the color images.
Definition: Dataset.h:772
std::string GetNormalTexturePath() const
Returns the path to normal texture image.
Definition: Dataset.h:597
Data class for TilesTexture contains albedo, normal and roughness texture files for tiles based mater...
Definition: Dataset.h:1168
std::string GetAlbedoTexturePath() const
Returns the path to albedo color texture image.
Definition: Dataset.h:1172
std::string GetPath() const
Path to the pcd format point cloud.
Definition: Dataset.h:674
std::string GetTrajectoryPath() const
Path to the ground-truth camera trajectory.
Definition: Dataset.h:838
std::vector< std::string > GetPaths() const
Returns list of list of 2 point cloud paths.
Definition: Dataset.h:312
virtual ~DownloadDataset()
Definition: Dataset.h:176
std::string GetPointCloudPath() const
Path to the point cloud.
Definition: Dataset.h:882
std::vector< std::string > GetColorPaths() const
Returns List of paths to color image samples of size 33.
Definition: Dataset.h:972
std::vector< std::string > GetDepthPaths() const
Returns List of paths to depth image samples of size 33.
Definition: Dataset.h:974
std::string data_root_
Open3D data root.
Definition: Dataset.h:114
std::vector< std::string > GetColorPaths() const
Returns List of paths to color image samples of size 21931.
Definition: Dataset.h:223
Data class for ArmadilloMesh contains the ArmadilloMesh.ply from the Stanford 3D Scanning Repository...
Definition: Dataset.h:187
virtual ~Dataset()
Definition: Dataset.h:91
std::string GetPath(const std::string filename="flight_helmet") const
Path to the filename. By default it returns the path to FlightHelmet.gltf file. Refer documentation p...
Definition: Dataset.h:477
std::string GetOdometryLogPath() const
Path to camera trajectory log file odometry.log.
Definition: Dataset.h:1040
Data class for FlightHelmetModel contains a flight helmet model file, along with material and various...
Definition: Dataset.h:470
std::string GetPath(const std::string filename="crate_model") const
Path to the filename. By default it returns the path to crate.obj file. Refer documentation page for ...
Definition: Dataset.h:272
std::vector< std::string > GetDepthPaths() const
Paths to the clean depth images.
Definition: Dataset.h:942
std::vector< std::string > GetColorPaths() const
Returns List of paths to color image samples of size 5.
Definition: Dataset.h:1033
std::vector< std::string > GetNoisyDepthPaths() const
Paths to the noisy depth images.
Definition: Dataset.h:888
std::string GetMetallicTexturePath() const
Returns the path to metallic texture image.
Definition: Dataset.h:605
std::string GetNormalTexturePath() const
Returns the path to normal texture image.
Definition: Dataset.h:722
std::vector< std::string > GetColorPaths() const
Paths to the color images.
Definition: Dataset.h:940
std::vector< std::string > GetNoisyDepthPaths() const
Paths to the noisy depth images.
Definition: Dataset.h:944
std::string GetNoiseModelPath() const
Path to the noise model.
Definition: Dataset.h:896
std::string prefix_
Dataset prefix.
Definition: Dataset.h:117
std::string GetONIPath() const
Paths to the ONI sequence.
Definition: Dataset.h:836
Data class for DemoICPPointClouds contains 3 point clouds of binary PCD format. This data is used in ...
Definition: Dataset.h:404
Data class for CrateModel contains a sword model file, along with material and various other texture ...
Definition: Dataset.h:266
const char const char value recording_handle imu_sample recording_handle uint8_t data
Definition: K4aPlugin.cpp:284
std::string GetNormalTexturePath() const
Returns the path to normal texture image.
Definition: Dataset.h:1147