<liclass="toctree-l4"><aclass="reference internal"href="../installation/#step-1-check-virtualization-support">الخطوة 1. تحقق من دعم المحاكاة الافتراضية</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../installation/#step-3-check-memory-and-cpu-allocation">الخطوة 3. تحقق من تخصيص الذاكرة ووحدة المعالجة المركزية</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../arguments/auto-boundary/#what-is-auto-boundary">What Is Auto-Boundary?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../arguments/auto-boundary/#when-is-auto-boundary-helpful">When Is Auto-Boundary Helpful?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../arguments/auto-boundary/#why-would-one-use-auto-boundary">Why would one use auto-boundary?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../arguments/boundary/#what-is-boundary-geojson">What is Boundary [GeoJSON]?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../arguments/boundary/#when-is-boundary-geojson-appropriate">When is Boundary [GeoJSON] appropriate?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../arguments/boundary/#why-would-one-use-boundary-geojson">Why would one use Boundary [GeoJSON]?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../arguments/boundary/#how-would-one-create-boundary-geojson">How would one create Boundary [GeoJSON]?</a><ul>
<liclass="toctree-l3"><aclass="reference internal"href="../arguments/build-overviews/#what-are-overviews">What Are Overviews?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../arguments/build-overviews/#when-are-overviews-appropriate">When are Overviews appropriate?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../arguments/build-overviews/#why-would-one-use-overviews">Why would one use Overviews?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../arguments/camera-lens/#what-are-camera-lens-models">What Are Camera Lens Models?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../arguments/camera-lens/#when-are-manual-selections-appropriate">When are manual selections appropriate?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../arguments/camera-lens/#why-would-one-use-a-particular-camera-lens-model">Why would one use a particular Camera Lens Model?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../large/#getting-started-with-distributed-split-merge">الشروع في البدء في عملية دمج التجزئة الموزعة</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../faq/#can-i-process-two-or-more-orthophoto-geotiffs-to-stitch-them-together">Can I process two or more orthophoto GeoTIFFs to stitch them together?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../faq/#i-want-to-build-a-commercial-application-that-includes-odm-do-i-need-a-commercial-license">I want to build a commercial application that includes ODM. Do I need a commercial license?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../faq/#are-there-other-licensing-options-aside-from-the-agplv3">Are there other licensing options aside from the AGPLv3?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../faq/#your-computer-is-running-out-of-memory-what-can-you-do">Your computer is running out of memory, what can you do?</a></li>
<p>بدون أي تعديلات في المعلمات ، يختار ODM حل وسط جيد بين الجودة والسرعة واستخدام الذاكرة. إذا كنت ترغب في الحصول على نتائج عالية الجودة ، فأنت بحاجة إلى تعديل بعض المعلمات:</p>
<blockquote>
<div><ulclass="simple">
<li><p>Resolution '' هي دقة صورة Orthophoto بالسنتيمتر / بكسل. إنقاص هذه القيمة للحصول على نتيجة دقة أعلى.</p></li>
<li><p>"--ignore-gsd" هي علامة توجه تعليمات ODM لتخطي بعض الذاكرة وتحسينات السرعة التي تؤثر بشكل مباشر على الصورة. سيؤدي استخدام هذه العلامة إلى زيادة وقت التشغيل واستخدام الذاكرة ، ولكن قد ينتج عنه نتائج أكثر وضوحًا.</p></li>
<li><p>يجب زيادة <codeclass="docutils literal notranslate"><spanclass="pre">-texturing-nadir-weight</span></code> إلى <codeclass="docutils literal notranslate"><spanclass="pre">29-32</span></code> في المناطق الحضرية لإعادة بناء حواف أفضل للأسقف. يجب تخفيضها إلى "0-6" في المناطق العشبية / المسطحة.</p></li>
<li><p>يجب تعيين <codeclass="docutils literal notranslate"><spanclass="pre">--texturing-data-term</span></code> على "المنطقة" في مناطق الغابات.</p></li>
<li><p>يجب زيادة <codeclass="docutils literal notranslate"><spanclass="pre">mesh-size--</span></code> إلى <codeclass="docutils literal notranslate"><spanclass="pre">300000-600000</span></code> و <codeclass="docutils literal notranslate"><spanclass="pre">--mesh-octree-depth</span></code> يجب زيادتها إلى <codeclass="docutils literal notranslate"><spanclass="pre">10-11</span></code> في المناطق الحضرية لإعادة إنشاء مباني / أسقف أفضل.</p></li>
<p>تعد معايرة الأميرة تحديًا خاصًا مع كاميرات السلع. يمكن أن تؤثر التغيرات في درجات الحرارة والاهتزازات والتركيز والعوامل الأخرى على المعلمات المشتقة مع تأثيرات كبيرة على البيانات الناتجة. المعايرة التلقائية أو الذاتية ممكنة ومرغوب فيها مع رحلات الطائرات بدون طيار ، ولكن اعتمادًا على نمط الرحلة ، قد لا تؤدي المعايرة التلقائية إلى إزالة كل التشويه من المنتجات الناتجة. جيمس وروبسون (2014) في ورقتهما بعنوان `` التخفيف من الخطأ المنهجي في النماذج الطبوغرافية المشتقة من الطائرات بدون طيار وشبكات الصور الأرضية <<aclass="reference external"href="https://onlinelibrary.wiley.com/doi/full/10.1002/esp.3609">https://onlinelibrary.wiley.com/doi/full/10.1002/esp.3609</a>>"_ معالجة كيف لتقليل التشويه من المعايرة الذاتية.</p>
<p><em>Bowling effect on point cloud over 13,000+ image dataset collected by World Bank Tanzania over the flood prone Msimbasi Basin, Dar es Salaam, Tanzania.</em></p>
<p>للتخفيف من هذا التأثير ، هناك عدد قليل من الخيارات ولكن أبسطها على النحو التالي: حلّق بنمطين مفصولين بـ 20 درجة ، وبدلاً من أن يكون لديك كاميرا (إشارة مستقيمة لأسفل) ، استخدم واحدًا يميل إلى الأمام بمقدار 5 درجات.</p>
<p>نظرًا لأن هذا النهج في الطيران يمكن أن يستغرق وقتًا أطول من الرحلات النموذجية ، يمكن للطيار أو الفريق أن يطير في منطقة صغيرة باستخدام النهج أعلاه. ستقوم OpenDroneMap بإنشاء ملف معايرة يسمى camera.json يمكن استيراده بعد ذلك لاستخدامه لمعايرة رحلة أخرى يتم نقلها بكفاءة أكبر.</p>
<p>بدلاً من ذلك ، يمكن تطبيق الطريقة التجريبية التالية: حلّق بتداخل أقل بكثير ، لكن رحلتين * متصالبتين * (تسمى أحيانًا التقاطع المائل) مفصولتين بزاوية 20 درجة مع كاميرا أمامية 5 درجات.</p>
<ulclass="simple">
<li><p>مكن أن تكون نسب التداخل بين خطوط الشبكة أقل من الرحلات المتوازية. للحصول على نتائج جيدة ثلاثية الأبعاد ، ستحتاج إلى تداخل 68٪ و sidelap لما يعادل 83٪ تداخل و sidelap.</p></li>
<li><p>للحصول على نتائج جيدة ثنائية الأبعاد و 2.5 D (نموذج الارتفاع الرقمي) ، ستحتاج إلى 42٪ تداخل و sidelap للحصول على 70٪ تراكب و sidelap مكافئ.</p></li>
<p>بشكل افتراضي لا يُنشئ ODM DEMs. لإنشاء نموذج تضاريس رقمي ، تأكد من تمرير علامة "--dtm". لإنشاء نموذج سطح رقمي ، تأكد من تمرير علامة "--dsm".</p>
<p>بالنسبة لتوليد DTM ، يتم استخدام مرشح مورفولوجي بسيط (smrf) لتصنيف النقاط في الأرض مقابل غير الأرض ويتم استخدام نقاط الأرض فقط. يمكن التحكم في مرشح `` smrf '' من خلال عدة معلمات:</p>
<blockquote>
<div><ulclass="simple">
<li><p>قيمة القياس `` - smrf-scalar ''. قم بزيادة هذه المعلمة للتضاريس مع الكثير من الاختلافات في الارتفاع.</p></li>
<li><p>معلمة المنحدر `` - smrf-slope '' ، وهو مقياس لـ "تحمل المنحدر". قم بزيادة هذه المعلمة للتضاريس مع الكثير من الاختلافات في الارتفاع. يجب ضبطه على شيء أعلى من 0.1 وليس أعلى من 1.2.</p></li>
<li><p>عتبة ارتفاع "- smrf-threshold". اضبط هذه المعلمة على الحد الأدنى للارتفاع (بالأمتار) الذي تتوقعه من الكائنات غير الأرضية.</p></li>
<li><p>`` --smrf-window '' معلمة نصف قطر النافذة (بالأمتار) التي تتوافق مع حجم أكبر ميزة (المبنى والأشجار وما إلى ذلك) المراد إزالتها. يجب ضبطه على قيمة أعلى من 10.</p></li>
</ul>
</div></blockquote>
<p>يمكن أن يؤثر تغيير هذه الخيارات على نتيجة DTM بشكل كبير. أفضل مصدر للقراءة لفهم كيفية تأثير المعلمات على الإخراج هو قراءة الورقة الأصلية <aclass="reference external"href="https://www.researchgate.net/publication/258333806_An_Improved_Simple_Morphological_Filter_for_the_Terrain_Classification_of_AirDatae_LIDAR_DATA">مرشح مورفولوجي بسيط محسن لتصنيف التضاريس لبيانات LIDAR المحمولة جواً</a> (PDF متاح مجانًا).</p>
<p>بشكل عام ، فإن خيار "- smrf-threshold" له أكبر الأثر على النتائج.</p>
<p>SMRF جيد في تجنب أخطاء النوع الأول (عدد صغير من نقاط الأرض المصنفة خطأً على أنها غير أرضية) ولكنها "مقبولة" فقط في تجنب أخطاء النوع الثاني (عدد كبير من النقاط غير الأرضية مصنفة خطأً كأرضية). يجب أن يؤخذ هذا في الاعتبار عند إنشاء DTMs التي من المفترض أن يتم استخدامها بصريًا ، لأن الكائنات التي تم الخلط بينها وبين الأرض تبدو وكأنها قطع أثرية في DTM النهائية.</p>
<p>هناك معلمتان مهمتان أخريان تؤثران على توليد DEM:</p>
<blockquote>
<div><ulclass="simple">
<li><p>"--dem-Resolution '' الذي يضبط دقة خرج DEM النقطية (سم / بكسل)</p></li>
<li><p>"-dem-gapfill-steps '' الذي يحدد عدد طبقات DEM التقدمية التي سيتم استخدامها. بالنسبة للمشاهد الحضرية ، يمكن أن تساعد زيادة هذه القيمة إلى "4-5" في تحقيق نتائج أفضل في الاستيفاء في المناطق التي تُركت فارغة بواسطة مرشح SMRF.</p></li>
<p>Weather conditions modify illumination and thus impact the photography results. Best results are obtained with evenly overcast or clear skies. Also look for low wind speeds that allow the camera to remain stable during the data collection process.
In order to avoid shadows which on one side of the stockpile can obstruct feature detection and lessen the number of resulting points, always prefer the flights during the midday, when the sun is at the nadir so everything is consistently illuminated.
Also ensure that your naked eye horizontal visibility distance is congruent with the planned flight distances for the specific project, so image quality is not adversely impacted by dust, fog, smoke, volcanic ash or pollution.</p>
<p>Most stockpile measurement jobs does not require a crosshatch pattern or angled gimbal as the resting angle of stockpile materials allows the camera to capture the entire stockpile sides. Only some special cases where erosion or machinery operations causes steep angles on the faces of the stockpile would benefit of the crosshatch flight pattern and angled camera gimbal but consider that these additional recognized features come at a cost, (in field labor and processing time) and the resulting improvements are sometimes negligible.</p>
<p>In most of the cases a lawn mower flight pattern is capable of producing highly accurate stockpile models.</p>
<p>Recommended overlap would be between 75% and 80% with a sidelap in the order of 65% to 70%. It is also recommended to slightly increase overlap and sidelap as the flight height is increased.</p>
<p>Flight height can be influenced by different camera models, but in a general way and in order to ensure a balance between image quality and flight optimization, it is recommended to be executed at heights 3 to 4 times the tallest stockpile height. So for a 10 meter stockpile, images can be captured at a height of 40 meters.
As the flight height is increased, it is also recommended to increase overlap, so for a 40 meter height flight you can set a 65% sidelap and 75% overlap, but for a planned height of 80 meters a 70% sidelap and 80% overlap allowing features to be recognized and properly processed.</p>
<p>To achieve accuracy levels better than 3%, the use of GCP’s is advised. Typically 5 distributed GCP are sufficient to ensure accurate results.
When placing or measuring GCP, equipment accuracy should be greater than the GSD. Survey grade GNSS and total stations are intended to provide the required millimetric accuracy.</p>
<p>For further information on the use of GCPs, please refer to the <aclass="reference external"href="https://docs.opendronemap.org/gcp/">Ground Control Points section</a>.</p>
<p>A highly accurate model can be achieved using WebODM high resolution predefined settings. Then you can further adjust some parameters as necessary.</p>
<p>If using ODM, these this reference values can help you configure the process settings.</p>
<p>As almost 50% of the material will be found in the first 20% of the stockpile height, special care should be taken in adequately defining the base plane.</p>
<p>Dialog box will show the message "Computing ..." for a few seconds, and after the computing is finished the volume measurement value will be displayed.</p>
<p>If you are using the command line OpenDroneMap you can use the dsm files to measure the stockpile volumes using other programs.</p>
<p>Also consider that once the limits of the stockpile are set in software like <aclass="reference external"href="https://www.qgis.org">QGis</a>, you will find there are some ways to determine the base plane. So for isolated stockpiles which boundaries are mostly visible, a linear approach can be used. While for stockpiles set in slopes or in bins, the base plane is better defined by the lowest point.
Creation of a triangulated 3D surface to define the base plane is advised for large stockpiles. This is also valid for stockpiles paced on irregular surfaces.</p>
<p>نظرًا لأن العديد من المستخدمين يستخدمون عامل إرساء لنشر OpenDroneMap ، فقد يكون من المفيد فهم بعض الأوامر الأساسية من أجل استجواب حالات عامل الميناء عندما تسوء الأمور ، أو نشعر بالفضول حيال ما يحدث. Docker هي بيئة حاويات تهدف ، من بين أمور أخرى ، إلى تسهيل نشر البرامج بشكل مستقل عن البيئة المحلية. بهذه الطريقة ، فهي تشبه الأجهزة الافتراضية.</p>
<p>يمكن لبعض الأوامر البسيطة أن تجعل تجربة docker أفضل بكثير.</p>
<p>من المحتمل أن يكون هذا كبير الحجم غير عملي ، ولكن يمكننا استخدام حرف <cite>|</cite> للأنبوب وأدوات أخرى لاستخراج ما نحتاجه فقط من السجلات. على سبيل المثال ، يمكننا التنقل عبر السجل ببطء باستخدام الأمر <cite>more</cite>:</p>
<p>الضغط على <cite>Enter</cite> أو` Space` أو مفاتيح الأسهم أو <cite>Page Up</cite> أو` Page Down` سيساعدنا الآن في التنقل عبر السجلات. الحرف الصغير <cite>Q</cite> سيتيح لنا الهروب إلى سطر الأوامر.</p>
<p>يمكننا أيضًا استخراج نهاية السجلات فقط باستخدام أمر "الذيل" كما يلي:</p>
<p>في بعض الأحيان نحتاج إلى التعمق أكثر في استكشافنا لعملية OpenDroneMap. لهذا ، يمكننا الحصول على وصول مباشر لسطر الأوامر إلى الأجهزة. لهذا ، يمكننا استخدام <cite>docker exec</cite> لتنفيذ قذيفة سطر الأوامر` bash` في الجهاز المعني على النحو التالي:</p>
<p>تمتع Docker باستخدام مؤسف للمساحة ولا يقوم افتراضيًا بتنظيف البيانات والآلات الزائدة عند اكتمال العمليات. يمكن أن يكون ذلك مفيدًا إذا احتجنا إلى الوصول إلى عملية تم إنهاؤها منذ ذلك الحين ، ولكنها تحمل عبء استخدام كميات متزايدة من التخزين بمرور الوقت. يقدم Maciej Łebkowski <cite>نظرة عامة ممتازة على كيفية إدارة الاستخدام الزائد للقرص في عامل الميناء <https://lebkowski.name/docker-volumes/></cite> _.</p>
<h2>Using Singularity<aclass="headerlink"href="#using-singularity"title="Permalink to this headline"></a></h2>
<p>'Singularity <<aclass="reference external"href="https://sylabs.io/">https://sylabs.io/</a>>'_ is another container platform able to run Docker images. Singularity could be used from laptop to large HPC clusters, local university or company clusters, a single server, in the cloud...
A container is a single file without anything else to install</p>
<sectionid="downloading-image">
<h3>Downloading image<aclass="headerlink"href="#downloading-image"title="Permalink to this headline"></a></h3>
<p>Singularity can use ODM Docker container after their download. It creates .sif images</p>
<h2>استخدام ODM من موقع النطاق الترددي المنخفض<aclass="headerlink"href="#using-odm-from-low-bandwidth-location"title="Permalink to this headline"></a></h2>
<sectionid="what-is-this-and-who-is-it-for">
<h3>ما هذا ومن هو؟<aclass="headerlink"href="#what-is-this-and-who-is-it-for"title="Permalink to this headline"></a></h3>
<p><<aclass="reference external"href="https://www.opendronemap.org/">https://www.opendronemap.org/</a>>" __ لا يمكن دائمًا إعدادها بشكل فعال محليًا - يتطلب الأمر جهازًا قويًا إلى حد ما لمعالجة مجموعات البيانات الكبيرة - لذا يمكن أن تكون الآلة السحابية أحيانًا هي الحل للأشخاص في حقل. ومع ذلك ، فإن عرض النطاق الترددي يمثل مشكلة في العديد من الإعدادات منخفضة الدخل. لا يمكن حل هذا القيد تمامًا ، ولكن الطريقة التالية تؤدي مهمة معقولة لتقليل النطاق الترددي اللازم لمعالجة مجموعات بيانات صور الطائرات بدون طيار على السحابة من المواقع الأفريقية.</p>
<p>نقدم هنا عملية صعبة ولكنها عملية لإنشاء جهاز سحابة OpenDroneMap (* لا * CloudODM ، ضع في اعتبارك أنه مجرد نسخة مستندة إلى السحابة من ODM تقوم بتشغيلها من سطر الأوامر) واستخدامها لمعالجة مجموعات الصور الكبيرة عن بُعد. إنه يتطلب معرفة باستخدام سطر أوامر Unix و ssh وحساب Digital Ocean (قد يعمل Amazon AWS أيضًا ، ربما مع اختلافات طفيفة في الإعداد) ، ومستوى معتدل من معرفة الكمبيوتر العامة. إذا لم تكن على دراية بالكمبيوتر إلى حد ما وترغب في إثارة ضجة مع إعداد صعب قليلاً ، فإن "CloudODM <<aclass="reference external"href="https://www.opendronemap.org/cloudodm/">https://www.opendronemap.org/cloudodm/</a>>" __ هو ما يجب أن تنظر إليه.</p>
<p>تستهدف العملية برمتها في الغالب شخصًا يقوم بمهام كبيرة في موقع أفريقي أو موقع مماثل يتطلع إلى معالجة البيانات في أسرع وقت ممكن بينما لا يزال في بيئة ميدانية. ولذلك ، فإنه يؤكد على سير العمل الذي يهدف إلى تقليل نقل البيانات / النطاق الترددي ، بدلاً من أبسط طريقة لتشغيل ODM.</p>
<li><p>قم بإنشاء قطرة محيط رقمية مع ذاكرة وصول عشوائي بسعة 4 جيجابايت على الأقل. سيكلفك ذلك حوالي 20 دولارًا / شهريًا. من المحتمل أن يفشل التثبيت أقل من 4 غيغابايت من ذاكرة الوصول العشوائي. عندما نقوم بتشغيل عملية ODM فعليًا ، سنقوم بتغيير حجمها إلى جهاز سحابي أكبر بكثير وأكثر تكلفة ، ولكن بين الجري يمكنك تقليصها بين الجري إلى ثاني أرخص قطيرة والتي تكلف 10 دولارات فقط في الشهر (أرخص قطرة ، بسعر 5 دولارات شهريًا ، ويأتي مع محرك أقراص صغير لا يمكنك تقليصه).</p>
<ul>
<li><p>يجب أن يكون نسخة Ubuntu 18.04 لضمان توافق التبعية</p></li>
<li><p>Create a user with sudo privileges. <aclass="reference external"href="https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-18-04">Digital Ocean’s insanely good
documentation</a>
can help you figure this out. In our case we set up a user called
<codeclass="docutils literal notranslate"><spanclass="pre">odm</span></code>, so connecting to it is via the command
<codeclass="docutils literal notranslate"><spanclass="pre">ssh</span><spanclass="pre">odm@xxx.xxx.xxx.xxx</span></code> (where the x’s stand for the IPv4
address of your server). If you want to follow this example
closely, <em>do</em> use the username <codeclass="docutils literal notranslate"><spanclass="pre">odm</span></code>; then your install path
will be <codeclass="docutils literal notranslate"><spanclass="pre">/home/odm/ODM/</span></code> and will match all of the examples in
this document.</p></li>
<li><p>Go ahead and execute <codeclass="docutils literal notranslate"><spanclass="pre">sudo</span><spanclass="pre">apt</span><spanclass="pre">update</span></code> and <codeclass="docutils literal notranslate"><spanclass="pre">sudo</span><spanclass="pre">apt</span><spanclass="pre">upgrade</span></code> to ensure
your server isn’t dangerously without updates. Make sure to stay with
Ubuntu 18.04.</p></li>
</ul>
</li>
<li><p>قم بتنزيل وتثبيت ODM عليه من <cite>ODM Github <https://github.com/OpenDroneMap/ODM></cite> __ (عادي ، وليس WebODM) باستخدام الأوامر التالية:</p></li>
<li><p>إذا قمت بذلك من المجلد الرئيسي الافتراضي للمستخدم (أي `` odm '') ، فسيكون المسار إلى التثبيت هو '' home / odm / ODM '' (يُختصر باسم `` ~ / ODM / '').</p></li>
<li><p>هناك بعض المتغيرات البيئية التي يجب تحديدها. افتح ملف ~/.bashrc على جهازك وأضف الأسطر الثلاثة 3 في النهاية (من <cite>github ODM <https://github.com/OpenDroneMap/ODM></cite> __). يمكن فتح الملف باستخدام <codeclass="docutils literal notranslate"><spanclass="pre">nano</span><spanclass="pre">~/.bashrc</span></code> (أو أي محرر نصوص تستخدمه بدلاً من nano). تأكد من استبدال <codeclass="docutils literal notranslate"><spanclass="pre">/home/odm/</span></code> بالمسار الصحيح إلى الموقع الذي قمت باستخراج OpenDroneMap إذا لم تفعل كل شيء تمامًا كما في مثالنا (على سبيل المثال إذا كنت تستخدم اسم مستخدم مختلفًا في إعداد الخادم الخاص بك) :</p></li>
<li><p>لاحظ أن الملف التمهيدي لـ github الخاص بـ ODM يحتوي على خطأ بسيط ، سيكون اسم دليل التثبيت هو ODM ، وليس OpenDroneMap (سترى هذا إذا قارنت الإرشادات المذكورة أعلاه بالإرشادات الموجودة على ODM GitHub).</p></li>
<li><p>لمنع حدوث عطل حيث تفشل عملية الدمج المقسم في تحديد موقع الملف التنفيذي الخاص بها ، نضيف الأسطر التالية إلى <codeclass="docutils literal notranslate"><spanclass="pre">~/.bashrc</span></code> (اضبط المسارات إذا قمت بإعداد الأشياء بشكل مختلف عن مثالنا):</p></li>
<li><p>ستحتاج الآن إلى محرك أقراص ثابت سحابي ثانٍ ("حجم" في المصطلح الرقمي للمحيط) كبير بما يكفي لإدارة مشروعك. يبدو أن القاعدة الأساسية هي 10 أضعاف حجم مجموعة صورك الخام ؛ لدينا مجموعة من الصور بحجم 100 جيجابايت وقمنا بإعداد وحدة تخزين بحجم 1000 جيجابايت (بمجرد الانتهاء من التشغيل ، يجب أن تكون قادرًا على التخلص من معظم سعة محرك الأقراص الباهظة الثمن هذه ، ولكن يلزم إكمال العملية). قم بإعداد الصوت وإرفاقه بالقطرة الخاصة بك ، و <aclass="reference external"href="https://www.digitalocean.com/docs/volumes/how-to/mount/">تكوين نقطة التحميل الخاصة به</a> (في هذا المثال ، نقوم بتعيينه إلى <codeclass="docutils literal notranslate"><spanclass="pre">/mnt/odmdata/</span></code>).</p></li>
<li><p>الآن ادفع صورك إلى الخادم. يمكنك استخدام <aclass="reference external"href="https://en.wikipedia.org/wiki/Secure_copy">Secure Copy (scp)</a> مثل ذلك: <codeclass="docutils literal notranslate"><spanclass="pre">scp</span><spanclass="pre">-r</span><spanclass="pre">/path/to/my/imagefolder</span><spanclass="pre">odm@xxx.xxx.xxx.xxx:/mnt/odmdata/</span></code>.</p>
<ul>
<li><p>يؤدي هذا إلى دفع المجلد بالكامل المليء بالصور (هذا ما يفعله الخيار "-r" ، "العودية") في الموقع البعيد (في مثالنا ، في الحجم الذي نعلقه على الجهاز السحابي على <codeclass="docutils literal notranslate"><spanclass="pre">/mnt/odmdata/</span></code>.</p></li>
<li><p>سيستغرق هذا بعض عرض النطاق الترددي. لا توجد طريقة حول حجم الملفات.<aclass="reference external"href="#footnote1">1</a>, <aclass="reference external"href="#footnote2">2</a></p></li>
<p>يتطلب ODM إعداد الدلائل الموجودة على الجهاز فقط. البتات الحرجة هي مجلد التثبيت (إذا قمت بتثبيته كما هو موضح أعلاه ، فهو <codeclass="docutils literal notranslate"><spanclass="pre">/home/odm/ODM/</span></code> ومجلد المشروع (i.e. <codeclass="docutils literal notranslate"><spanclass="pre">/mnt/odmdata/myproject/</span></code>))</p>
<ulclass="simple">
<li><p>يحدد ملف settings.yaml الخاص بـ ODM دليل أصل واحد يحتوي على كافة المشاريع. هذا هو ما يحدث في سطر مسار المشروع لملف settings.yaml (بشكل مثير للارتباك قليلاً ، هذا في الواقع هو الدليل * الأصل * لأدلة المشروع الفردية ، والتي يتم تحديدها بواسطة معلمة اسم المشروع عند استدعاء ODM). قم بتحرير الإعدادات. yaml وقم بتعيين معلمة project_path إلى (وفقًا لإعداد المثال الخاص بنا) <codeclass="docutils literal notranslate"><spanclass="pre">/mnt/odmdata/</span></code> ، والتي تشير في هذه الحالة إلى المجلد الذي أنشأناه. يتم إنشاء أدلة المشاريع الفردية في ذلك.</p></li>
<li><p>دلائل المشروع الفردية ، أي``/mnt/odmdata/myproject/`` <cite>تحتوي على ملف gcp_list.txt ، ملف image_groups.txt ، ومجلد الصور لكل مشروع`</cite>`</p></li>
<li><p>يحتوي مجلد الصور ، أي <codeclass="docutils literal notranslate"><spanclass="pre">`/mnt/odmdata/myproject/images/</span></code> على جميع الصور. إذا قمت بإعداده على هذا النحو ، فلن تتم إعادة نسخ الصور لأنها موجودة بالفعل في الدليل الذي يريدها ODM.</p></li>
<li><p>قم بتعديل settings.yaml لتحديد الدليل الأصلي لمجلد المشروع (في هذه الحالة المجلد الذي أنشأناه ، `` / mnt / odmdata / <codeclass="docutils literal notranslate"><spanclass="pre">).</span><spanclass="pre">تأكد</span><spanclass="pre">من</span><spanclass="pre">أن</span><spanclass="pre">الصور</span><spanclass="pre">في</span><spanclass="pre">الموضع</span><spanclass="pre">الصحيح</span><spanclass="pre">،</span><spanclass="pre">مثل</span> <spanclass="pre">``/mnt/odmdata/myproject/images</span></code> والملفات المساعدة الأخرى (gcp_list.txt و image_groups.txt) في المجلد الجذر <codeclass="docutils literal notranslate"><spanclass="pre">/mnt/odmdata/myproject/</span></code></p></li>
<li><p>إذا كانت لديك الصور في مجلدات منفصلة لكتل أو رحلات طيران فردية (والتي ستفعلها إذا تم تنظيم إدارة رحلتك) ، فيمكنك إنشاء ملف image_groups.txt مع التعويذات <codeclass="docutils literal notranslate"><spanclass="pre">لـ</span><spanclass="pre">i</span><spanclass="pre">in</span><spanclass="pre">*</span><spanclass="pre">؛</span><spanclass="pre">هل</span><spanclass="pre">cd</span><spanclass="pre">$</span><spanclass="pre">i</span><spanclass="pre">؛</span><spanclass="pre">for</span><spanclass="pre">j</span><spanclass="pre">in</span><spanclass="pre">*؛</span><spanclass="pre">do</span><spanclass="pre">echo</span><spanclass="pre">"$</span><spanclass="pre">j</span><spanclass="pre">$</span><spanclass="pre">i"</span><spanclass="pre">>></span><spanclass="pre">../$i.txt؛</span><spanclass="pre">فعله؛</span><spanclass="pre">مؤتمر</span><spanclass="pre">نزع</span><spanclass="pre">السلاح</span><spanclass="pre">../</span><spanclass="pre">؛</span><spanclass="pre">فعل</span><spanclass="pre">؛</span></code> و <codeclass="docutils literal notranslate"><spanclass="pre">cd</span><spanclass="pre">../</span></code> ، <codeclass="docutils literal notranslate"><spanclass="pre">لأني</span><spanclass="pre">في</span><spanclass="pre">myproject</span><spanclass="pre">/</span><spanclass="pre">*.</span><spanclass="pre">txt</span><spanclass="pre">؛</span><spanclass="pre">do</span><spanclass="pre">cat</span><spanclass="pre">$</span><spanclass="pre">i</span><spanclass="pre">>></span><spanclass="pre">image_groups.txt؛</span><spanclass="pre">فعل</span><spanclass="pre">؛</span></code>. من المفترض أن يؤدي ذلك إلى إنشاء ملف بهيكل صحيح: قائمة بجميع ملفات الصور و "اسم المجموعة" بعد كل ملف (والذي سيكون في هذه الحالة ببساطة اسم المجلد الذي جاء منه). ثم انقل جميع ملفات الصور إلى دليل واحد يسمى الصور في دليل جذر المشروع (لذا <codeclass="docutils literal notranslate"><spanclass="pre">/mnt/odmdata/myproject/images/</span></code>). سيسمح ملف image_groups.txt لـ ODM بتتبع الصور التي تنتمي إلى نفس الدفعة ، على الرغم من أنها كلها في دليل واحد.</p></li>
<li><p>قم بإيقاف تشغيل جهازك وتغيير حجمه إلى عدد هائل من وحدات المعالجة المركزية وكمية الذاكرة المناسبة. أستخدم الجهاز المُحسّن للذاكرة مع 24 وحدة vCPU مخصصة و 192 غيغابايت من ذاكرة الوصول العشوائي (والتي تكلف حوالي 1.60 دولارًا في الساعة - والتي تضيف بسرعة ، تزيد عن 1000 دولار / شهر). إعادة التشغيل ، والبدء في العمل بسرعة حتى لا تضيع وقتًا كبيرًا.</p></li>
<li><p>ابدأ تشغيل عملية ODM عبر ssh باستخدام nohup (بحيث إذا تم قطع الاتصال ، فستستمر المعالجة)</p>
<ul>
<li><p>بدلاً من ذلك ، يمكنك استخدام شاشة GNU لبدء العملية من جلسة الشاشة التي لن تتوقف إذا انقطع اتصالك ؛ قم بتشغيل `` الشاشة '' ، واستخدم `` <ctrl> a <ctrl> d '' لفصل "الشاشة - r" لإعادة توصيلها. لكن استخدام الشاشة لن يمنحك ملف سجل لجميع مخرجات وحدة التحكم ما لم تفعل شيئًا محددًا لالتقاط ذلك ، بينما يمنحك nohup ملفًا يحتوي على جميع مخرجات وحدة التحكم ، بما في ذلك رسائل الخطأ ، مجانًا</p></li>
<li><p>ملاحظة: اعتبارًا من 2020-03، يبدو أن التعطيل العادي `` python run.py -i /path/to/image/folder project_nam '' يبدو * غير * يعمل ؛ تؤدي المعلمة "-i" أو "--image" إلى حدوث خطأ غريب. لذا نسقط المعلمة -i ، ونعتمد على سطر دليل المشروع في ملف settings.yaml لتوجيه ODM إلى المكان الصحيح. الآن باستخدام (بما في ذلك الدمج المقسم):</p></li>
<li><p>هذا يشير إلى ODM في المجلد (في هذا المثال) <codeclass="docutils literal notranslate"><spanclass="pre">`/mnt/odmdata/myproject/</span></code>. بشرط أن يكون ملف image_groups.txt و gcp_list.txt في هذا المجلد ، فإن الصور موجودة في <codeclass="docutils literal notranslate"><spanclass="pre">/mnt/odmdata/myproject/images/</span></code> ، ومسار المشروع في الإعدادات. yaml هو <codeclass="docutils literal notranslate"><spanclass="pre">/mnt/odmdata/</span></code> لن تضيع الوقت ونسخ الصور الفضائية.</p></li>
<li><p>لاحظ أن هذا يفترض أن لديك ملف image_groups.txt. إذا لم يكن الأمر كذلك ، فمن المحتمل أن يؤدي هذا "-split-interap 0" إلى تلاعب الأمور ، و "--plit 1" هو حرفيا رقم عشوائي سيتم تجاهله بعد تحميل ملف image_groups.txt (أعتقد ذلك تتحكم عادةً في عدد المجموعات التي تقوم بتقسيم مجموعة من الصور إليها ، ولكن في حالتنا نحن نفترض أن الصور مجمعة بالفعل بشكل معقول). إذا لم يكن لديك مجموعة بيانات كبيرة (> 1000 صورة) ، فاحذف خياري "- تقسيم" و "- تقسيم متداخل".</p></li>
<li><p>اتبع التقدم باستخدام الذيل (حتى تعرف متى يتم ذلك)</p></li>
<h4>بعد الانتهاء (بافتراض أنك تعيش طويلاً)<aclass="headerlink"href="#after-it-finishes-assuming-you-survive-that-long"title="Permalink to this headline"></a></h4>
<li><p>بمجرد الانتهاء من المعالجة ، أغلق الماكينة وقم بتغيير حجمها مرة أخرى إلى الحد الأدنى للسعة غير المكلفة.</p></li>
<li><p>قم بتشغيل الجهاز احتياطيًا ، وقم بتسجيل الدخول عبر ssh.</p></li>
<li><p>إذا كنت تريد حفظ النطاق الترددي للتنزيل ، يمكنك ضغط الصورة التقويمية باستخدام GDAL. لا تضيف نظرة عامة ، افعل ذلك على جهازك المحلي لتجنب تكبير الملف قبل تنزيله.</p></li>
<li><p>التنزيل باستخدام scp: <codeclass="docutils literal notranslate"><spanclass="pre">scp</span><spanclass="pre">odm@xxx.xxx.xxx.xxx:/mnt/odmdata/myproject/odm_orthophoto/odm_orthophoto.tif</span></code> (أو احصل على النسخة المضغوطة التي أنشأتها في الخطوة الأخيرة)</p></li>
<li><p>بمجرد الحصول على الملف على جهاز الكمبيوتر المحلي الخاص بك ، يمكنك استخدام QGIS لإضافة نظرة عامة ("الأهرامات") أو استخدام أمر GDAL <codeclass="docutils literal notranslate"><spanclass="pre">gdaladdo</span><spanclass="pre">-r</span><spanclass="pre">average</span><spanclass="pre">/path/to/image.tif</span><spanclass="pre">2</span><spanclass="pre">4</span><spanclass="pre">8</span><spanclass="pre">16</span><spanclass="pre">32</span><spanclass="pre">64</span><spanclass="pre">128</span><spanclass="pre">256</span><spanclass="pre">512</span><spanclass="pre">1024</span></code>.</p></li>
<li><p>يمكنك أرشفة مجلدات odm_texturing و odm_georeferencing و odm-dem باستخدام tar لتسهيل عملية التنزيل في قطعة واحدة (وربما أصغر).</p></li>
<h2>Using Potree 3D viewer module on WebODM<aclass="headerlink"href="#using-potree-3d-viewer-module-on-webodm"title="Permalink to this headline"></a></h2>
<sectionid="cameras">
<h3>Cameras<aclass="headerlink"href="#cameras"title="Permalink to this headline"></a></h3>
<p>Activate this function to display camera positions.</p>
<p>You can also click in the camera icon to display single images in a frame on the upper right corner. A click on the image frame toggles into full screen mode.</p>
<p>Within the image frame there are links to download the image and the GeoJSON camera file.</p>
<p>For both appearance and performance purposes, the point budget on the scene can be managed. Some old and less capable machines would benefit from a 500,000 point budget while most mid-range specs machine are capable of handling 1 to 2 million point budget.</p>
<p>A 5 to 7 million point budget produces a smooth point cloud 3d model, but may result in a high resource demanding process.</p>
<p>Default point budget value is set to 1,000,000.</p>
<p>The Potree Point Cloud 3d viewer module can implement eye dome-lighting, a lighting model that accentuates the shapes of objects.</p>
<p>Eye Dome-lighting group objects, shade their outlines and enhances depth perception in scientific visualization images. It is useful for recognition and measurement of structures within a model. It can be modified by adjusting Radius, Strength and Opacity.</p>
<p>By default, Eye Dome-Lighting is enabled on Potree 3D viewer, but it can be disabled by clicking on the enable option.</p>
<p>Potree 3D viewer background can be modified. Available options are <strong>Skybox</strong> / <strong>Gradient</strong> / <strong>Black</strong> / <strong>White</strong> / <strong>None</strong></p>
<p>Potree 3D viewer module provides several tools for measurement. This tool set consist of 12 elements.
It also has controls for showing or hiding the resulting measurement labels.</p>
<p>Measurements are performed by left clicking on the desired points and for some tools right clicking is needed in order to terminate the process.</p>
<p>This tool measures the radius of a circle formed by three points.
To start a measurement, click on the circle icon and then click on the desired two points. The process will be automatically ended.
Further information such as Circumference can also be obtained from selecting this element under the scene section.</p>
<p><strong>Azimuth</strong></p>
<p>This tool measures the azimuthal angle of a line. This line is formed by two points selected by the user, the angle is measured in degrees, clockwise from 0 to 360 and starting from the geographical north.
To start a measurement, click on the azimuth icon and then click on the desired two points. The process will be automatically ended.
Further information can also be obtained from selecting this element under the scene section.</p>
<p><strong>Area</strong></p>
<p>This tool measures the horizontal area formed by a polygon.
To start a measurement, click on the area icon and start clicking on the points forming the desired polygon (three or more). Right click to finish measurement.
Further information can also be obtained from selecting this element under the scene section.</p>
<p><strong>Volume (cube)</strong></p>
<p>This tool measures the volume formed by a cube.
To start a measurement, click on the volume (cube) icon and click on the model to place the cube. It is possible relocate, redimension and rotate the cube using the displayed handlers. Right click to finish measurement.
Further information can also be obtained from selecting this element under the scene section.</p>
<p><strong>Volume (sphere)</strong></p>
<p>This tool measures the volume formed by a sphere.
To start a measurement, click on the volume (sphere) icon and click on the model to place the sphere. It is possible relocate, redimension and rotate the sphere using the displayed handlers. Right click to finish measurement.
Further information can also be obtained from selecting this element under the scene section.</p>
<p><strong>Height profile</strong></p>
<p>This tool creates a height profile formed by a line on the model.
To start a measurement, click on the Height profile icon and then form a line on the model by clicking on the desired points (two or more). Right click to finish measurement.
Further information and options, such as "Show 2d Profile", can also been obtained from selecting this element under the scene section.</p>
<p>Point cloud can be clipped by selecting an area. Clipping options include <strong>None</strong> / <strong>Highlight</strong> / <strong>Inside</strong> / <strong>Outside</strong></p>
<p>To clip a point cloud, click on the volume clip icon, place the cube on the model and relocate, redimension and rotate to contain the desired area.
Highlight is set by default as the clipping method. If display only the points contained within the cube click on "Inside", otherwise click on "Outside".</p>
<p>To remove the clipping volume or polygons click on the "Remove all measurements" icon.</p>
<p>Potree 3D viewer have 4 Navigation controls which define its behavior.</p>
<p><strong>Earth Control</strong></p>
<p>Earth control navigated as anchored to the ground. Mouse left button moves the model horizontally, mouse wheel controls zoom and right button orbits the model.</p>
<p><strong>Fly control</strong></p>
<p>Fly control moves the camera as in birds eye using the keyboard. Keys "W" and "S" moves forward and backwards, respectively and in the direction of the camera, while "A" and "D" moves left and right respectively. Also, the "R" and "F" keys moves the camera up and down. The mouse left button changes the direction of the camera, mouse wheel controls zoom, and right button moves the camera in the XYZ axis.</p>
<p>The speed for these movements can be controlled using the sliding control.</p>
<p><strong>Helicopter control</strong></p>
<p>Helicopter control moves the camera as in an aircraft using the keyboard. Keys "W" and "S" moves forward and backwards, respectively restricted in a horizontal plane, while "A" and "D" moves left and right respectively. Also, the "R" and "F" keys moves the camera up and down. The mouse left button changes the direction of the camera, mouse wheel controls zoom, and right button moves the model in the XY axis.</p>
<p>The speed for these movements can be controlled using the sliding control.</p>
<p><strong>Orbit Control</strong></p>
<p>Orbit Control is the default navigation behavior. The mouse left button orbits the model, the wheel controls zoom and the right button moves the model in the XYZ axis.</p>
<p><strong>Full extent</strong></p>
<p>Full extent button restores the model view.</p>
<p><strong>Navigation cube</strong></p>
<p>Navigation cube displays a wireframe cube containing the model.</p>
<p><strong>Compass</strong></p>
<p>Compass button displays a compass on the upper right corner.</p>
<p><strong>Camera animation</strong></p>
<p>The camera animation button creates a camera animation path. Position of the camera is defined by the points on the green line while the points in the blue line are the location towards the camera is intended to be facing.</p>
<p>To create an animation, adjust the points for the camera locations and camera direction, then select the camera element under the Scene section to create more point, change animation speed or play the animation.</p>
<p><aclass="reference external"href="https://github.com/opendronemap/docs#how-to-make-your-first-contribution">Learn to edit</a> and help improve <aclass="reference external"href="https://github.com/OpenDroneMap/docs/blob/publish/source/tutorials.rst">this page</a>!</p>