بسته های توزیع شده در اینجا به هر نوع تنظیم خاصی نیاز دارند ، به سادگی آنها را در فضای کاری Catkin خود بسازید. توجه داشته باشید که شما به شاخه 2. 0 https://github.com/strands-project/soma (که به نوبه خود نیاز به نسخه up-date از https://github.com/strands-project/mongodb_store دارد) نیاز دارید. با این حال ، بسته های ما برای همجوشی و تجسم داده ها به گرافیک نیاز دارند ، در زیر نحوه تنظیم آن بر روی رایانه بدون نمایشگر توضیح می دهد.
نمایشگر بدون سر و elasticfusion¶
این بسته به معنای اجرا بر روی یک ربات بدون صفحه نمایش اما با کارت گرافیک NVIDIA است. این امر به هر زمان که بسته اجرا شود ، نیاز به برخی از تنظیمات دارد (به دو خط آخر کد مراجعه کنید).
در حال حاضر ، این بسته دارای چند وابستگی است که باید به صورت دستی نصب شوند. در آینده ، چنگال ElasticFusion ما با نسخه جدیدی که در CUDA اجرا شده است جایگزین می شود. در حال حاضر ، شما باید repo https://github.com/stevenlovegrove/pangolin را در هر نقطه از پوشه خانه رایانه خود کلون کنید. دستورالعمل های ساخت را در README دنبال کنید.
سپس باید چنگال ElasticFusion ما را نصب کنید. برای اعضای پروژه ، لطفاً با یکی از نگهبانان تماس بگیرید و ما به کد دسترسی خواهیم داشت. توجه داشته باشید که برای اجرای ElasticFusion حداقل به نسخه CUDA 7 نیاز دارید. برای به دست آوردن یک درایور گرافیکی سازگار با این نسخه ، ساده ترین راه (تحت Ubuntu 14. 04) نصب Sudo Apt-Get نصب NVIDIA-352 است.
برای اجرای این برنامه ها بر روی یک رایانه بدون سر ، باید مراحل زیر را انجام دهیم. اول ، انجام دهید
و سپس رایانه را مجدداً راه اندازی کنید. علاوه بر این ، ما باید به صفحه نمایش جدیدی که در سرور X استفاده می شود اشاره کنیم که با تایپ استفاده می شود
اگر چندین بار برنامه ها را اجرا می کنید ، ممکن است این را در . BASHRC قرار دهید. توجه داشته باشید که این بدان معنی است که اگر می خواهید SSH را ب ا-x تنظیم کنید ، مجدداً صفحه نمایش را به صورت دستی تنظیم کنید. سپس ، هر بار که کامپیوتر را مجدداً راه اندازی می کنید و گره ها را اجرا می کنید ، باید اجرا کنید
این باعث می شود سرور X قبلی را از بین ببرد و یک مورد جدید را شروع کند که در حالت بی سر کار می کند.
جدا از این آکروباتیک ها ، تنها کاری که باید انجام دهید این است که Catkin_make در فضای کاری خود باشد.
اطلاعات عمومی و راه اندازی
بسته های موجود در این repo قابلیت ساخت پایگاه داده از اشیاء از مشاهدات را به روشی بدون نظارت فراهم می کند. برای جمع آوری داده ها در الگوی metaroom ساخته شده است. کتابخانه های مورد استفاده برای بازیابی ابرهای نقطه از چند هفته از جمع آوری داده ها را می توان در https://github.com/strands-project/strands_3d_mapping/tree/hydro-devel/dynamic_object_retreieval یافت.
برای راه اندازی خط لوله برای ساختن نمایندگی و پرس و جو روی ربات ، انجام دهید
در اینجا ، /path/to/. semanticmap به طور معمول در واقع شده است~/. SemanticMap. لطفاً مسیر کامل را تایپ کنید. با این کار گره های لازم و پرونده های راه اندازی ، هم برای حفظ یک پایگاه داده از مدل های شیء و هم برای بازیابی ابرهای نقطه در طی هفته های اکتشاف ، راه اندازی می شود.
تجسم¶
مؤلفه بازیابی
ساده ترین راه برای تجسم خط لوله بازیابی (جستجوی تاریخچه ابر نقطه) ، بررسی تصویر منتشر شده در موضوع /quasimodo_retrieval /تجسم است. سمت چپ ترین تصویر تصویر RGB ماسک شده از شیء پرس و جو را نشان می دهد و در سمت راست نمایی از ده مسابقه نزدیک به عنوان ابرهای گشت و گذار سه بعدی ارائه می شود.
شما می توانید با شروع به صورت دستی یک جستجو (یعنی بدون استفاده از چارچوب ساختمانی شیء افزایشی) ایجاد کنید
و سپس ، در یک پنجره دیگر که مسیر XML از نماهای اضافی را مشخص می کند:
همچنین می توانید از SOMA برای تجسم نمایش داده ها به مرور زمان استفاده کنید.
مؤلفه ساختمان مدل
jekekrantz در اینجا چیزهای دیگری اضافه کنید!
توضیحات مفصل بسته ها ، گره ها ، پرونده ها و پیام های راه اندازی
بازیابی_پروسسی
این بسته همراه با گره های metaroom بصورت آنلاین بر روی ربات اجرا می شود. با جمع آوری metarooms ، بسته بندی به طور مداوم بخش ها ، ویژگی های عصاره ها را می بخشد و آنها را به یک نمایش واژگان ویژگی اضافه می کند. برای راه اندازی کل خط لوله ، انجام دهید
گره ها
- REARIVAL_SEAGMENTATION-از بسته محدب_segmentation ، https://github.com/strands-project/strands_3d_mapping/tree/hydro-devel/dynamic_object_retrieval/convex_segmentation استفاده می کند ، برای تقسیم یک نقطه ابر با نرمال به صورت کوچکتر در مخروط های کوچکتر
- REARIVAL_FEATURES-از بسته Dynamic_Object_Retrerival ، https://github.com/strands-project/strands_3d_mapping/tree/hydro-devel/dynamic_object_retrieval/dynamic_object_retrerival ، برای استخراج ویژگی های Pfhrgb Segments استفاده می کند.
- REARIVAL_VOCABULARY-از بسته K_MEANS_TREE ، https://github.com/strands-project/strands_3d_mapping/hydro-devel/dynamic_object_retrieval/k_means_tree ، برای سازماندهی ویژگی ها در یک بازنمایی Hierarchicaly queryrachical استفاده می کند.
- بازیابی_simulate_observations - اگر قبلاً داده هایی را که می خواهید پردازش کنید ، از این گره استفاده می شود ، یا اگر می خواهید بدون انجام جارو بر روی ربات اشکال زدایی کنید
راه اندازی پرونده ها
- پردازش. launch - این پرونده تمام گره های فوق را راه اندازی می کند. به طور پیش فرض آن را بازیابی_simulate_observations راه اندازی نمی کند ، این با پارامتر شبیه سازی_Observations: = درست است. مهم است که پارامتر data_folder را تنظیم کنید: =/مسیر/به/metarooms در محل متاوم ها ، به طور معمول~/. SemanticMap.
quasimodo_retreieval¶
این بسته گره هایی را برای بازیابی ابرهای نقطه از حافظه ایجاد شده توسط Retrieval_Processing فراهم می کند. همه چیز را به سادگی با راه اندازی کنید
جایی که واژگان بیشتر در آن قرار دارند~/. semanticmap/vocabulary.
گره ها
- quasimodo_retrieval_node - سرویس /query_normal_cloud را ارائه می دهد و در موضوع /مدل ها /جدید مشترک می شود. اگر چیزی در مورد موضوع منتشر شود ، نتیجه را در /بازیابی_result برمی گرداند.
- quasimodo_visualization_server-این گره به سادگی مشترک/بازیابی می شود و نتیجه پرس و جو را با استفاده از ابزارهای موجود در بسته هدف_3D_BENCHMARK ، https://github.com/strands-project/strands_mapping/tree/hydro/hydro-devel/dynammarite_obbreate_retrief_retbection_obbredieveievitreievitreievitreievitreievitreievitreievitreievitreievitreief_ertreievitreievitreievitreievitreievitreievitreievitreievitreief_obecندنده_تصویر حاصل در /Visualization_Image منتشر شده است.
- quasimodo_retrieve_observation - به سیستم اجازه می دهد تا از مؤلفه ساختمان مدل دور شود ، در عوض با استفاده از چارچوب بازیابی ، نتایج را مستقیماً جستجو می کند. به سادگی چیزی مانند Pub Rostopic/Object_Leaing/Leaing_Object_xml STD_MSGS/رشته "داده ها: '/path/to/. semanticmap/201422/patrol_run_56/room_016-apr-22 14: 58: 33. 536964_object_0. xml را منتشر کنید. از آن شی
گره های دیگر
- quasimodo_visualize_model - این گره به سادگی با ادغام آن در یک ابر نقطه و نشان دادن یک Visualizer PCL ، موضوع /مدل ها /جدید را تجسم می کند
- quasimodo_retrieval_publisher - این گره برای همه اشیاء دارای برچسب در یک جارو خاص متاوم ، که توسط پارامتر data_path ارائه شده است ، پرس و جو می کند.
- quasimodo_retrieval_server - نسخه Barebones از quasimodo_retrieval_node ، به سادگی ابرهای بازیابی شده را بدون بارگذاری هرگونه تصویر یا ماسک اشیاء باز می گرداند
راه اندازی پرونده ها
- REARIVAL. LAUNCH - راه اندازی quasimodo_retrieval_node ، quasimodo_visualization_server و یک گره برای فیوز کردن فریم های RG B-D ورودی. واژگان پارامتر را می گیرد ، بیشتر اوقات این است~/. semanticmap/vocabulary.
quasimodo_optimization¶
این بسته ابزاری کلی برای بهینه سازی مقادیر با ارزیابی برخی از متریک ها که از تجزیه و تحلیل یک گلاب است. بسته ابزار از Dynamic_Reconfigure برای بازی Rosbag با پارامترهای مختلف استفاده می کند و مقادیر مرتبط با پارامترها را ضبط می کند.
می تواند با راه اندازی شود
پس از آن ، plot_values. py را در پوشه ای که پرونده پرتاب را اجرا کردید ، اجرا کنید.
گره ها
- Optimizer. py - مراحل از طریق پارامترها و بازی های Rosbags را برای هر پیکربندی پارامتر بازی می کند
- rosbag_player. py - یک سرور اکشن برای پخش کیسه های ROS در صورت تقاضا
- plot_values. py - مقادیر را به عنوان نقشه گرما در فضای پارامتر ترسیم می کند
راه اندازی پرونده ها
- Optimizer. Launch - راه اندازی Optimizer. py و Rosbag_player. py.
quasimodo_msgs¶
تمام پیام ها و انواع خدمات مورد نیاز برای چارچوب Quasimodo.
انواع پیام
- image_array. msg - مجموعه ای از تصاویر
- int_array. msg - مجموعه ای از ints
- model. msg - یک شیء مدل ، متشکل از ابرهای نقطه ، فریم ، پارامترهای دوربین و تبدیل نسبی
- REARIVAL_QUERY. MSG - نوع پیام برای پرس و جو quasimodo_retreieval
- بازیابی_result. msg - نتیجه نوع پیام از پرس و جو quasimodo_retreieval
- REARIVAL_QUERY_RESULT. MSG - یک پیام ترکیبی برای پرس و جو و نتیجه
- rgbd_frame. msg - تصاویر RGD ، تصاویر عمق و پارامترهای دوربین
- string_array. msg - مجموعه ای از رشته ها
انواع خدمات
- cloud_from_model. srv - سرویس فیوز مدل ها به ابرها
- fuse_models. srv - چندین مدل به یک مدل ذوب شده
- get_model. srv - دریافت مدل برای شناسه
- index_frame. srv - قاب را به پایگاه داده مدل اضافه کنید
- model_from_frame. srv - قاب را به مدل تبدیل کنید
- query_cloud. srv - بازیابی Query با استفاده از RETRIEVAL_QUERY. MSG
- Simple_query_cloud. srv - بازیابی پرس و جو با استفاده از Sensor_MSGS/PointCloud2 PointCloud با نرمال
- Visualize_query. srv - تجسم یک بازیابی_result. msg
quasimodo_brain¶
این بسته جریان داده ها را در سیستم Quasimodo کنترل می کند و بانک اطلاعاتی مدل های شی را حفظ می کند. به بسته quasimodo_models به شدت متکی است. این بسته همچنین حاوی لودر برای قالب های مختلف داده ها ، مانند مثال metarooms است.
گره ها
- preload_object_data - داده ها را با فرمت metarooms می خواند. درخواست UPPON داده ها را برای ModelServer منتشر می کند. ورودی: مسیرهای مجموعه ای از پوشه های حاوی داده.
- Robot_Listener - گوش دادن به موضوع. هر زمان که مسیر یک فایل XML را دریافت کند ، داده ها را در قالب metarooms از پرونده می خواند و داده ها را برای ModelServer منتشر می کند. ورودی: نام موضوع برای گوش دادن به.
- ModelServer - به داده های ماژول های ورودی گوش می دهد ، از بسته quasimodo_models برای ثبت و ادغام مدل ها در مدل های کامل تر استفاده می کند و از این طریق پایگاه داده اشیاء را حفظ می کند. ورودی: '-V' برای تجسم ، '-p/path/to/پوشه' برای تنظیم پوشه ای که در آن پایگاه داده خوانده شده و ذخیره می شود ، "-M" پایگاه داده را با داده های/مسیر/به/پوشه آغاز می کند ، "-MassReg_Timeout Value "زمان توقف برای ثبت نام چند منظوره را تعیین می کند ،" -CCLUSION_PENATTY "مقدار مجازات را برای انسداد تعیین می کند (کنترل چگونگی ادغام پایگاه داده برای ادغام مدل ها).
راه اندازی پرونده ها
- ModelServer. Launch - این پرونده گره ModelServer را بدون پرچم تجسم راه اندازی می کند.
- robot_listener. launch - این پرونده گره robot_listener را بدون نام موضوع به "/برخی/موضوع" راه اندازی می کند.
- Brain. Launch - گره های ModelServer و Preload_Object_Data را راه اندازی می کند. در راه اندازی مجدد اتوماتیک.
quasimodo_models¶
این بسته شامل کتابخانه هایی برای ثبت نام ، تقسیم ، ادغام و بهینه سازی مدل های شیء quasimodo است. مدل های شیء quasimodo حاوی RGBDFRAME ، ماسک های تقسیم بندی ، عمق و نکات نسبی بین داده ها برای فریم ها هستند.
© Copyright 2017 ، Michal Staniaszek. تجدید نظر BFCE5694.
نسخه های آخرین بارگیری htmlzip در خواندن پروژه Docs Project Home میزبانی اسناد رایگان تهیه شده توسط Read The Docs.
سیگنالهای معاملاتی...
ما را در سایت سیگنالهای معاملاتی دنبال می کنید
برچسب :
نویسنده : عارف لرستانی
بازدید : <-PostHit->
تاريخ : پنجشنبه
10 فروردين
1402 ساعت: 17:18