Ruby កាមេរ៉ា 3D ជម្រៅ

Ruby កាមេរ៉ា 3D ជម្រៅ
សៀវភៅណែនាំអ្នកប្រើប្រាស់
(v1.0) ថ្ងៃទី 28 ខែកញ្ញា ឆ្នាំ 2022
បច្ចេកវិទ្យា Vision
Nerian Vision GmbH Zettachring ២
70567 ទីក្រុង Stuttgart ប្រទេសអាល្លឺម៉ង់
អ៊ីមែល៖ service@nerian.com www.nerian.com

មាតិកា

1 មុខងារលើសview

4

2 ផ្នែករួមបញ្ចូល

4

3 លក្ខណៈបច្ចេកទេសទូទៅ

4

3.1 ព័ត៌មានលម្អិតផ្នែករឹង។ . . . . . . . . . . . . . . . . . . . . . . . . . ៥

3.2 ការផ្គូផ្គងស្តេរ៉េអូ។ . . . . . . . . . . . . . . . . . . . . . . . . . . ៥

3.3 អត្រាស៊ុម និងដំណោះស្រាយ។ . . . . . . . . . . . . . . . . . . ៦

4 សុវត្ថិភាពឡាស៊ែរ

5

5 លក្ខណៈបច្ចេកទេស

6

5.1 វិមាត្រ។ . . . . . . . . . . . . . . . . . . . . . . . . . . . . ៦

5.2 ការដំឡើង។ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ៦

5.3 សីតុណ្ហភាព។ . . . . . . . . . . . . . . . . . . . . . . . . . . . . ៦

6 ចំណុចប្រទាក់រាងកាយ

9

6.1 ចំណុចប្រទាក់លើសview . . . . . . . . . . . . . . . . . . . . . . . . . ៣៦

6.2 ការផ្គត់ផ្គង់ថាមពល។ . . . . . . . . . . . . . . . . . . . . . . . . . . . ៩

6.3 ច្រក GPIO ។ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ១០

6.3.1 លទ្ធផលកេះ។ . . . . . . . . . . . . . . . . . . . . . . ១១

6.3.2 ការបញ្ចូលគន្លឹះ។ . . . . . . . . . . . . . . . . . . . . . . . ១១

6.3.3 ជីពចរធ្វើសមកាលកម្ម (PPS) ។ . . . . . . . . . . . . . . . ១១

6.4 ប៊ូតុងកំណត់ឡើងវិញ។ . . . . . . . . . . . . . . . . . . . . . . . . . . . ១២

6.5 ស្ថានភាព LEDs ។ . . . . . . . . . . . . . . . . . . . . . . . . . . . . ១២

7 ដំណើរការលទ្ធផល

13

7.1 រូបភាពដែលបានកែតម្រូវ។ . . . . . . . . . . . . . . . . . . . . . . . . . . ១៨

7.2 ផែនទីភាពខុសគ្នា។ . . . . . . . . . . . . . . . . . . . . . . . . . . ១៩

7.3 ការបញ្ចាំងរូបភាពពណ៌។ . . . . . . . . . . . . . . . . . . . . . . ១៦

7.4 ពេលវេលាamps និងលេខលំដាប់។ . . . . . . . . . . . . . . . ២១

8 ការកំណត់រចនាសម្ព័ន្ធបណ្តាញ

17

8.1 ការកំណត់រចនាសម្ព័ន្ធ IP ។ . . . . . . . . . . . . . . . . . . . . . . . . . ១៧

8.2 ស៊ុម Jumbo ។ . . . . . . . . . . . . . . . . . . . . . . . . . . . ១៨

9 ការកំណត់រចនាសម្ព័ន្ធ

19

9.1 ស្ថានភាពប្រព័ន្ធ។ . . . . . . . . . . . . . . . . . . . . . . . . . . . ២២

9.2 ការកំណត់ជាមុន។ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ២៣

មុនឆ្នាំ ២០២០view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ៤២

9.4 ការកំណត់ការទិញ។ . . . . . . . . . . . . . . . . . . . . . . . . ២៦

9.4.1 ការកំណត់ទម្រង់។ . . . . . . . . . . . . . . . . . . . . . . ២៣

9.4.2 អត្រាស៊ុម។ . . . . . . . . . . . . . . . . . . . . . . . . ២៤

1

9.4.3 ការគ្រប់គ្រងការប៉ះពាល់។ . . . . . . . . . . . . . . . . . . . . . 24 9.4.4 ការត្រួតពិនិត្យតុល្យភាពពណ៌ស។ . . . . . . . . . . . . . . . . . . 24 9.5 ការកំណត់បណ្តាញ។ . . . . . . . . . . . . . . . . . . . . . . . . . 25 9.6 Output Channels . . . . . . . . . . . . . . . . . . . . . . . . . . 26 9.7 ការថែទាំ។ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 9.8 ការក្រិតតាមខ្នាត។ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 9.8.1 ក្តារក្រិត។ . . . . . . . . . . . . . . . . . . . . . 29 9.8.2 ការរឹតបន្តឹងទំហំរូបភាពសម្រាប់ការក្រិតតាមខ្នាត។ . . . . . . . 30 9.8.3 ស៊ុមការក្រិតតាមខ្នាតការថត។ . . . . . . . . . . . . . . 31 9.8.4 អនុវត្តការក្រិតតាមខ្នាត។ . . . . . . . . . . . . . . . . . . 31 9.9 ការកំណត់ដំណើរការ។ . . . . . . . . . . . . . . . . . . . . . . . . 32 9.9.1 របៀបប្រតិបត្តិការ។ . . . . . . . . . . . . . . . . . . . . . 32 9.9.2 ការកំណត់ភាពខុសគ្នា។ . . . . . . . . . . . . . . . . . . . . . 33 9.9.3 ការកំណត់ Algorithm ។ . . . . . . . . . . . . . . . . . . . . 33 9.10 ការកំណត់កម្រិតពន្លឺស្វ័យប្រវត្តិកម្រិតខ្ពស់ និងទទួលបាន។ . . . . . . . . . . 35 9.10.1 ការប៉ះពាល់ និងទទួលបាន។ . . . . . . . . . . . . . . . . . . . . 35 9.10.2 ការកំណត់ដោយដៃ។ . . . . . . . . . . . . . . . . . . . . . . 36 9.10.3 ការកំណត់ ROI ។ . . . . . . . . . . . . . . . . . . . . . . . 37 9.11 ការកំណត់កេះ។ . . . . . . . . . . . . . . . . . . . . . . . . . . 37 9.12 ការធ្វើសមកាលកម្មពេលវេលា . . . . . . . . . . . . . . . . . . . . . . . 38 9.13 Reviewលទ្ធផលការក្រិតតាមខ្នាត។ . . . . . . . . . . . . . . . . . . 39 9.14 ការក្រិតឡើងវិញដោយស្វ័យប្រវត្តិ។ . . . . . . . . . . . . . . . . . . . . . . . . 41 9.15 តំបន់នៃការចាប់អារម្មណ៍។ . . . . . . . . . . . . . . . . . . . . . . . . . 42 9.16 ឯកតារង្វាស់និចលភាព . . . . . . . . . . . . . . . . . . . . . 43 9.16.1 ការក្រិតខ្នាតនៃឯកតារង្វាស់និចលភាព។ . . . . . . ៤៤

ព័ត៌មានអំពីការប្រើប្រាស់ API 10

45

10.1 ព័ត៌មានទូទៅ។ . . . . . . . . . . . . . . . . . . . . . . . ៤៨

10.2 ការផ្ទេររូបភាព Exampឡេ . . . . . . . . . . . . . . . . . . . . . ៤៩

10.3 AsyncTransfer Exampឡេ . . . . . . . . . . . . . . . . . . . . . ៤៩

10.4 ការកសាងឡើងវិញ 3D ។ . . . . . . . . . . . . . . . . . . . . . . . . ៥២

10.5 ប៉ារ៉ាម៉ែត្រ។ . . . . . . . . . . . . . . . . . . . . . . . . . . . . ៥២

11 កម្មវិធីដែលបានផ្គត់ផ្គង់

49

11.1 NVCom ។ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ៥២

11.2 អ្នកផលិត GenICam GenTL ។ . . . . . . . . . . . . . . . . . . . ៥៣

11.2.1 ការដំឡើង។ . . . . . . . . . . . . . . . . . . . . . . . . ៥៣

11.2.2 ឧបករណ៍និម្មិត។ . . . . . . . . . . . . . . . . . . . . . . ៥៤

11.2.3 លេខសម្គាល់ឧបករណ៍។ . . . . . . . . . . . . . . . . . . . . . . . . . ៥៥

១១.៣ ថ្នាំង ROS ។ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ៥៥

12 ការគាំទ្រ

52

13 ព័ត៌មានធានា

53

2

14 ព័ត៌មានប្រភពបើកចំហ

53

3

3 លក្ខណៈជាក់លាក់ទូទៅ

1 មុខងារលើសview
Ruby គឺជាកាមេរ៉ាជំរៅដែលមានមូលដ្ឋានលើ stereo-vision ។ ឧបករណ៍ចាប់សញ្ញារូបភាព monochrome ពីររបស់វាថតទិដ្ឋភាពនៅខុសគ្នាបន្តិច viewមុខតំណែង។ ដោយភ្ជាប់ទិន្នន័យរូបភាពពីឧបករណ៍ចាប់សញ្ញារូបភាពទាំងពីរ Ruby អាចសន្និដ្ឋានជម្រៅនៃគ្រប់ចំណុចដែលបានសង្កេត។ ផែនទីជម្រៅដែលបានគណនាត្រូវបានបញ្ជូនតាមរយៈ 1G Ethernet ទៅកាន់កុំព្យូទ័រដែលបានភ្ជាប់ ឬប្រព័ន្ធបង្កប់ផ្សេងទៀត។ ឧបករណ៍ចាប់សញ្ញាពណ៌បន្ថែមត្រូវបានប្រើសម្រាប់ការចាប់យកព័ត៌មានពណ៌ ហើយរូបភាពពណ៌ត្រូវបានតម្រឹមដោយស្វ័យប្រវត្តិទៅនឹងទិន្នន័យជម្រៅ។
Ruby អាចធ្វើការវាស់វែងយ៉ាងសកម្ម ឬអកម្ម។ សម្រាប់ការវាស់វែងសកម្ម ម៉ាស៊ីនបញ្ចាំងឡាស៊ែរត្រូវបានប្រើដើម្បីបញ្ចាំងគំរូទៅលើផ្ទៃដែលមើលឃើញ។ នេះអនុញ្ញាតឱ្យវត្ថុត្រូវបានវាស់វែងទោះបីជាពួកគេមានរូបរាងឯកសណ្ឋាន និងគ្មានវាយនភាពក៏ដោយ។
នៅក្នុងស្ថានភាពដែលមិនអាចសង្កេតឃើញលំនាំដែលបានបញ្ចាំង ដោយសារពន្លឺជុំវិញភ្លឺ ចម្ងាយរង្វាស់វែង ឬដោយសារម៉ាស៊ីនបញ្ចាំងត្រូវបានបិទ ការវាស់វែងនៅតែអាចទទួលបានដោយអសកម្ម។ នៅក្នុងករណីនៃការវាស់វែងអកម្ម វាយនភាពផ្ទៃគ្រប់គ្រាន់គឺត្រូវបានទាមទារសម្រាប់ការទទួលបានលទ្ធផលត្រឹមត្រូវ។

2 ផ្នែករួមបញ្ចូល
ផ្នែកខាងក្រោមគួរតែត្រូវបានរួមបញ្ចូលនៅពេលបញ្ជាទិញកាមេរ៉ាជម្រៅ Ruby 3D ថ្មីពី Nerian Vision Technologies៖
· Ruby 3D depth camera · ការផ្គត់ផ្គង់ថាមពល 12 V DC ជាមួយនឹងឧបករណ៍ភ្ជាប់មេដែលអាចផ្លាស់ប្តូរបានសម្រាប់ Eu-
ខ្សែពួរ អាមេរិកខាងជើង ចក្រភពអង់គ្លេស និងអូស្ត្រាលី · សៀវភៅណែនាំអ្នកប្រើប្រាស់ដែលបានបោះពុម្ព · ខ្សែអ៊ីសឺរណិត, 3 ម៉ែត្រ
ប្រសិនបើវត្ថុទាំងនេះបាត់ សូមទាក់ទងផ្នែកជំនួយអតិថិជន។

3 លក្ខណៈបច្ចេកទេសទូទៅ

3.1 ព័ត៌មានលម្អិតផ្នែករឹង
ឧបករណ៍ចាប់សញ្ញារូបភាព ទ្រង់ទ្រាយឧបករណ៍ចាប់សញ្ញាគុណភាពបង្ហាញរូបភាព ប្រវែងប្រសព្វ វាលនៃ View ម៉ាស៊ីនបញ្ចាំងរូបភាព Aperture Pattern

IMX296 1.5 MP 1/2.9″ 4.18 mm 62.2° × 48.8° (អង្កត់ទ្រូង 74.0°) 3.0 Random dot laser (ថ្នាក់ 1)

4

3.2 ការផ្គូផ្គងស្តេរ៉េអូ

4 សុវត្ថិភាពឡាស៊ែរ

ឧបករណ៍ចាប់សញ្ញា Inertial (IMU) អតិបរមា។ អត្រារង្វាស់ IMU ការផ្គត់ផ្គង់ថាមពល ការប្រើប្រាស់ថាមពល វិមាត្រទំងន់ I/O សីតុណ្ហភាពប្រតិបត្តិការ អនុលោមភាព

830 nm BNO085 400 Hz (មេដែក: 100 Hz) 11.2 30 V DC 9W 130 × 92.5 × 34.5 mm ca ។ 450 ក្រាម Gigabit Ethernet, GPIO 0 40°C CE, FCC, UKCA, RoHS, Laser class 1

3.2 ការផ្គូផ្គងស្តេរ៉េអូ
ក្បួនដោះស្រាយស្តេរ៉េអូ គុណភាពបង្ហាញអតិបរមាបានគាំទ្រទ្រង់ទ្រាយភីកសែល ជួរភាពខុសគ្នា អត្រាស៊ុម គុណភាពបង្ហាញរងភីកសែល ដំណើរការក្រោយដំណើរការ

បំរែបំរួលនៃការផ្គូផ្គងពាក់កណ្តាលសកល (SGM) 1440 × 1056 ភីកសែល Mono8, Mono12, RGB8 32 ដល់ 256 ភីកសែលរហូតដល់ 60 fps 4 ប៊ីត (1/16 ភីកសែល) ការត្រួតពិនិត្យភាពស៊ីសង្វាក់គ្នា ការត្រួតពិនិត្យភាពប្លែកគ្នា ចន្លោះប្រហោង ការកាត់បន្ថយសំលេងរំខាន តម្រងស្នាមប្រឡាក់

3.3 អត្រាស៊ុមដែលអាចសម្រេចបាន និងដំណោះស្រាយរូបភាព
អត្រាស៊ុមអតិបរមាដែលអាចសម្រេចបានគឺអាស្រ័យលើគុណភាពបង្ហាញរូបភាពដែលបានកំណត់រចនាសម្ព័ន្ធ និងជួរភាពខុសគ្នា។ តារាងទី 1 ផ្តល់នូវបញ្ជីនៃការកំណត់រចនាសម្ព័ន្ធដែលបានណែនាំ។ នេះគ្រាន់តែជាសំណុំរងនៃទំហំកំណត់រចនាសម្ព័ន្ធដែលមានប៉ុណ្ណោះ។ ភាពខុសគ្នានៃគុណភាពបង្ហាញរូបភាព និងជួរភាពខុសគ្នាអាចត្រូវបានប្រើដើម្បីបំពេញតម្រូវការកម្មវិធីជាក់លាក់។

តារាងទី 1៖ អត្រាស៊ុមអតិបរមាដោយគុណភាពបង្ហាញរូបភាព និងជួរភាពខុសគ្នា។

ជួរភាពមិនស្មើគ្នា
១២៨ ភីកសែល ២៥៦ ភីកសែល

គុណភាពបង្ហាញរូបភាព 720×512 1024×768 1440×1026

60 fps n/a

30 fps 17 fps

15 fps 8 fps

4 សុវត្ថិភាពឡាស៊ែរ
Ruby មានម៉ាស៊ីនបញ្ចាំងកាំរស្មីអ៊ីនហ្វ្រារ៉េដ ដែលមិនអាចមើលឃើញដោយភ្នែកមនុស្ស។ ឡាស៊ែរអនុលោមតាមស្តង់ដារអន្តរជាតិ IEC 60825-1:2014 និង DIN EN 60825-1:2015 សម្រាប់ថ្នាក់ទី 1។ ដូច្នេះហើយ ឡាស៊ែរត្រូវបានចាត់ទុកថាមានសុវត្ថិភាពសម្រាប់ភ្នែក ហើយការប្រុងប្រយ័ត្នសុវត្ថិភាពគឺមិនចាំបាច់ទេ។
5

5 លក្ខណៈបច្ចេកទេស
រូបភាពទី 1: ស្លាកឡាស៊ែរនៅផ្នែកខាងក្រោមរបស់ Ruby ។
ការជូនដំណឹងអំពីឡាស៊ែរថ្នាក់ 1 អាចរកបាននៅលើស្លាកផលិតផលនៅផ្នែកខាងក្រោមនៃឧបករណ៍។ ស្លាកនេះត្រូវបានបង្ហាញក្នុងរូបភាពទី 1 ។
ការផ្លាស់ប្តូរ ឬការកែប្រែណាមួយដែលបានធ្វើឡើងនៅលើប្រព័ន្ធដែលមិនត្រូវបានអនុម័តដោយក្រុមហ៊ុនផលិតអាចចាត់ទុកជាមោឃៈសិទ្ធិអំណាចរបស់អ្នកប្រើប្រាស់ក្នុងប្រតិបត្តិការឧបករណ៍។
5 លក្ខណៈបច្ចេកទេស
5.1 វិមាត្រ
រូបភាពទី 2 និងទី 3 បង្ហាញ Ruby ដូចដែលបានឃើញពីទិសដៅផ្សេងៗគ្នា។ វិមាត្រដែលបានផ្តល់ត្រូវបានវាស់ជាមីល្លីម៉ែត្រ។
5.2 ការដំឡើង
លំនៅដ្ឋានរបស់ Ruby មានតង្កៀបម៉ោនពីរនៅសងខាងនៃឧបករណ៍។ តង្កៀបម៉ោននីមួយៗមានរន្ធដោតពីរដែលអនុញ្ញាតឱ្យ Ruby ត្រូវបានម៉ោនលើផ្ទៃរាបស្មើ។ វិមាត្រនិងការដាក់រន្ធដោតត្រូវបានផ្តល់ឱ្យក្នុងរូបភាពទី 2 ខ។
លើសពីនេះទៀត Ruby មានរន្ធ 1/4 អ៊ីញ UNC នៅផ្នែកខាងក្រោម។ នេះអនុញ្ញាតឱ្យ Ruby ត្រូវបានម៉ោននៅលើជើងកាមេរ៉ាស្តង់ដារ។
5.3 សីតុណ្ហភាព
Ruby អាចដំណើរការដោយគ្មានវិធានការបន្ថែមនៅសីតុណ្ហភាពព័ទ្ធជុំវិញចន្លោះពី 0°C ដល់ 40°C។ ប្រសិនបើប្រតិបត្តិការនៅសីតុណ្ហភាពព័ទ្ធជុំវិញកាន់តែខ្ពស់ វិធានការត្រជាក់បន្ថែមត្រូវតែធ្វើឡើង។ វិធានការបែបនេះអាចរួមបញ្ចូលការម៉ោន Ruby ទៅលើផ្ទៃដែលមានកម្ដៅ និង/ឬប្រើកង្ហារដើម្បីបង្កើនលំហូរខ្យល់។ សូមតាមដានឧបករណ៍ចាប់សញ្ញាសីតុណ្ហភាពឧបករណ៍ (សូមមើលផ្នែកទី 9.1) នៅពេលដំណើរការ Ruby នៅសីតុណ្ហភាពព័ទ្ធជុំវិញកើនឡើងបែបនេះ។
6

5.3 សីតុណ្ហភាព

5 លក្ខណៈបច្ចេកទេស

(ក) ផ្នែកខាងមុខ view

(ខ) កំពូល view
រូបភាពទី ២៖ (ក) ផ្នែកខាងមុខ និង (ខ) ផ្នែកខាងលើ view នៃ Ruby ដែលមានទំហំគិតជាមិល្លីម៉ែត្រ។
7

5.3 សីតុណ្ហភាព

5 លក្ខណៈបច្ចេកទេស

(ក) ត្រឡប់មកវិញ view

(ខ) បាត view
រូបភាពទី ៣៖ (ក) ខាងក្រោយ និង (ខ) បាត view នៃ Ruby ដែលមានទំហំគិតជាមិល្លីម៉ែត្រ។
8

6 អន្តរកម្មរាងកាយ
រូបភាពទី 4៖ ចំណុចប្រទាក់ដែលមាននៅផ្នែកខាងក្រោយ។
6 ចំណុចប្រទាក់រាងកាយ
6.1 ចំណុចប្រទាក់លើសview
រូបភាពទី 4 បង្ហាញពីចំណុចប្រទាក់រូបវន្តដែលមាននៅលើផ្នែកខាងក្រោយរបស់ Ruby ។ ចំណុចប្រទាក់ទាំងនេះគឺ៖ ឧបករណ៍ភ្ជាប់ថាមពល DC៖ ភ្ជាប់ទៅការផ្គត់ផ្គង់ថាមពលដែលអនុញ្ញាត
វ៉ុលtage range (សូមមើលផ្នែក 6.2)។ ច្រក GPIO៖ បញ្ចេញសញ្ញាកេះ ឬធ្វើសមកាលកម្ម Ruby ទៅខាងក្រៅ
ប្រភពកេះ។ ក៏មានមុខងារជាធាតុបញ្ចូលសម្រាប់ជីពចរធ្វើសមកាលកម្មពេលវេលាផងដែរ (សូមមើលផ្នែកទី 6.3) ។ ច្រកអ៊ីសឺរណិត៖ ច្រកសម្រាប់ភ្ជាប់ Ruby ទៅកុំព្យូទ័រអតិថិជន ឬប្រព័ន្ធបង្កប់ផ្សេងទៀតតាមរយៈអ៊ីសឺរណិត 1G ។ ច្រកនេះត្រូវបានប្រើសម្រាប់ការផ្តល់លទ្ធផលដំណើរការ និងសម្រាប់ការផ្តល់នូវការចូលទៅកាន់ចំណុចប្រទាក់កំណត់រចនាសម្ព័ន្ធ។ ប៊ូតុងកំណត់ឡើងវិញ៖ ប៊ូតុងសម្រាប់កំណត់កម្មវិធីបង្កប់ឧបករណ៍ឡើងវិញត្រឡប់ទៅស្ថានភាពរោងចក្រវិញ (សូមមើលផ្នែកទី 6.4)។ LED ថាមពល៖ អំពូល LED ពណ៌បៃតងដែលបង្ហាញថាឧបករណ៍ត្រូវបានបើក។ ស្ថានភាពតំណ LED (ពណ៌បៃតង)៖ បង្ហាញថាតើតំណភ្ជាប់អ៊ីសឺរណិតត្រូវបានបង្កើតឡើងដោយជោគជ័យឬអត់ (សូមមើលផ្នែកទី 6.5) ស្ថានភាពការទិញយក LED (ពណ៌ទឹកក្រូច)៖ បង្ហាញពីស្ថានភាពនៃការទទួលបានរូបភាព និងរាយការណ៍ពីការបរាជ័យឡាស៊ែរដែលអាចកើតមាន (សូមមើលផ្នែកទី 6.5)។
9

6.2 ការផ្គត់ផ្គង់ថាមពល

6 អន្តរកម្មរាងកាយ

៦៧ ៨

Pin Assignment 1 Trigger input (opto-isolated) 2 Sync input (opto-isolated) 3 Trigger output (opto-isolated) 4 Opto GND 5 +5V 6 GND

រូបភាពទី 5៖ ការចាត់ចែង pin របស់ឧបករណ៍ភ្ជាប់ GPIO ។

6.2 ការផ្គត់ផ្គង់ថាមពល
ឧបករណ៍ភ្ជាប់ថាមពលត្រូវភ្ជាប់ទៅអាដាប់ទ័រថាមពលដែលបានផ្គត់ផ្គង់ ឬវ៉ុលសមស្របផ្សេងទៀត។tage ប្រភព។ នៅពេលប្រើការផ្គត់ផ្គង់ថាមពលជំនួស សូមប្រាកដថាវ៉ុលtage ស្ថិតនៅក្នុងជួរអនុញ្ញាតពី 11.2 - 30 V DC ។ វ៉ុលខ្ពស់ជាងtages អាចធ្វើឱ្យខូចឧបករណ៍។ ការផ្គត់ផ្គង់ថាមពលគួរតែត្រូវបានវាយតម្លៃយ៉ាងហោចណាស់ 10 W ។
ឧបករណ៍ភ្ជាប់ថាមពលប្រើ Jack barrel ស្ត្រីដែលមានអង្កត់ផ្ចិតខាងក្នុង 6.5 មីលីម៉ែត្រនិងអង្កត់ផ្ចិតម្ជុល 2 ម។ ឧបករណ៍ភ្ជាប់មិត្តរួមគួរតែមានអង្កត់ផ្ចិតខាងក្រៅ 5.5 ម។ បន្ទាត់រាងប៉ូលត្រូវតែជាកណ្តាលវិជ្ជមាន។

6.3 ច្រក GPIO
ច្រក GPIO ផ្តល់នូវការចូលទៅកាន់សញ្ញាដូចខាងក្រោម:
· កេះទិន្នផល
· កេះបញ្ចូល
· ជីពចរធ្វើសមកាលកម្ម (PPS)
· +5V DC ទិន្នផល
រាល់សញ្ញាបញ្ចូលទិន្នន័យ និងទិន្នផលត្រូវបានភ្ជាប់តាមរយៈ opto-couplers។ ដូច្នេះ ម្ជុល Opto GND ត្រូវតែប្រើជាឯកសារយោងសម្រាប់សញ្ញាទាំងអស់។
បន្ថែមពីលើសញ្ញា I/O Ruby ផ្តល់នូវទិន្នផល 5V DC ដែលអាចផ្តល់ចរន្តរហូតដល់ 100 mA ។ ប្រសិនបើលើសពីដែនកំណត់បច្ចុប្បន្ន ទិន្នផលថាមពលនឹងត្រូវបានបិទ។
ឧបករណ៍ភ្ជាប់ GPIO ប្រើឧបករណ៍ភ្ជាប់ស៊េរី Molex Micro-Lock Plus 505567 របស់ស្ត្រី។ ការកំណត់ម្ជុលត្រូវបានបង្ហាញក្នុងរូបភាពទី 5

៦-០១ ៤-០៣

ឧបករណ៍ភ្ជាប់ផ្គូផ្គងជាមួយនឹងខ្សែ 600 មម ឧបករណ៍ភ្ជាប់ផ្គូផ្គងដោយគ្មានខ្សែ

លក្ខណៈនៃសញ្ញា I/O នីមួយៗត្រូវបានពិពណ៌នានៅក្នុងផ្នែករងខាងក្រោម។

10

6.3 ច្រក GPIO

6 អន្តរកម្មរាងកាយ

កេះលទ្ធផល ៦

1

Opto GND

4

3

TLP293

GND

រូបភាពទី 6: គ្រោងការណ៍នៃសៀគ្វីទិន្នផលកេះ

6.3.1 លទ្ធផលកេះ
នៅក្នុងកម្មវិធីចក្ខុវិស័យម៉ាស៊ីន វាអាចត្រូវបានតម្រូវឱ្យធ្វើសមកាលកម្មឧបករណ៍ចាប់សញ្ញា ឬពន្លឺផ្សេងទៀត (ឧទាហរណ៍ម៉ាស៊ីនបញ្ចាំងរូបភាព) ទៅនឹងការទទួលបានរូបភាពរបស់ Ruby ។ ចំពោះគោលបំណងនេះ Ruby អាចបញ្ចេញសញ្ញាបើក GPIO pin 3។ សញ្ញានេះត្រូវបានដាច់ឆ្ងាយតាមរយៈ opto-coupler ដូចបង្ហាញក្នុងដ្យាក្រាមសៀគ្វីនៃរូបភាពទី 6 ។
ការវាយតម្លៃអតិបរមាដាច់ខាតនៃ opto-coupler គឺ៖

អ្នកប្រមូល-បញ្ចេញ វ៉ុលtagអ៊ី៖ អតិបរមា 80 វ

អ្នកប្រមូលអ្នកផ្ញើ វ៉ុលtagអ៊ី៖ អតិបរមា 7 វ

អ្នកប្រមូលបច្ចុប្បន្ន៖

អតិបរមា។ ២០០ ម៉ា

ការសាយភាយថាមពលរបស់អ្នកប្រមូល៖ អតិបរមា។ 100 mW

សូមមើលផ្នែកទី 9.11 សម្រាប់ព័ត៌មានលម្អិតបន្ថែមអំពីរបៀបកំណត់រចនាសម្ព័ន្ធលទ្ធផលគន្លឹះ។

6.3.2 ការបញ្ចូលគន្លឹះ
ជំនួសឱ្យការធ្វើសមកាលកម្មឧបករណ៍ផ្សេងទៀតទៅនឹងការទទួលបានរូបភាពរបស់ Ruby នោះ Ruby ក៏អាចធ្វើសមកាលកម្មការទទួលបានរូបភាពរបស់វាទៅប្រភពកេះខាងក្រៅ ដោយប្រើសញ្ញាបញ្ចូលគន្លឹះនៅលើម្ជុលលេខ 1។ វ៉ុលtagកម្រិត e នៃសញ្ញាកេះបញ្ចូលត្រូវតែស្ថិតនៅចន្លោះ 3.3 V និង 24 V. Ruby ប្រើប្រាស់ 2 mA នៃចរន្តនៅលើសញ្ញានេះ។ សូមមើលផ្នែកទី 9.11 សម្រាប់ព័ត៌មានលម្អិតបន្ថែមអំពីរបៀបកំណត់រចនាសម្ព័ន្ធការបញ្ចូលគន្លឹះ។

6.3.3 ជីពចរធ្វើសមកាលកម្ម (PPS)
ជីពចរធ្វើសមកាលកម្មពីម្ជុល 2 គឺជាសញ្ញាបញ្ចូលដែលអាចត្រូវបានប្រើសម្រាប់ការធ្វើសមកាលកម្មនាឡិកាខាងក្នុងរបស់ Ruby ជាមួយនឹងភាពជាក់លាក់ខ្ពស់។ នៅពេលណាដែលគែមសញ្ញាវិជ្ជមានត្រូវបានទទួល Ruby អាចកំណត់ពេលវេលាខាងក្នុងរបស់វាឡើងវិញទៅ 0 ឬរក្សាទុកពេលវេលាប្រព័ន្ធបច្ចុប្បន្ន ហើយបញ្ជូនវាជាមួយស៊ុមបន្ទាប់។ វ៉ុលtage នៃជីពចរនេះត្រូវតែមានចន្លោះពី 3.3 ទៅ 24 V. នៅក្នុងកម្មវិធីធម្មតា ជីពចរត្រូវបានបង្កើតចេញពីប្រភព Pulse Per Second (PPS) ។
សូមមើលផ្នែកទី 9.12 សម្រាប់ព័ត៌មានលម្អិតអំពីរបៀបកំណត់ជីពចរធ្វើសមកាលកម្ម និងវិធីសាស្ត្រធ្វើសមកាលកម្មផ្សេងទៀតដូចជា PTP ឬ NTP ។

11

6.4 ប៊ូតុងកំណត់ឡើងវិញ

6 អន្តរកម្មរាងកាយ

6.4 ប៊ូតុងកំណត់ឡើងវិញ
នៅផ្នែកខាងក្រោយនៃឧបករណ៍មានប៊ូតុងកំណត់ឡើងវិញ។ ប៊ូតុងនេះត្រូវបានប្រើសម្រាប់កំណត់កម្មវិធីបង្កប់របស់ Ruby ឡើងវិញទៅស្ថានភាពរោងចក្រ។ ការកំណត់ឡើងវិញគួរតែត្រូវបានអនុវត្ត ប្រសិនបើឧបករណ៍មិនឆ្លើយតប ដោយសារការកំណត់មិនត្រឹមត្រូវ ឬខូចកម្មវិធីបង្កប់។ នៅពេលដែលដំណើរការកំណត់ឡើងវិញត្រូវបានចាប់ផ្តើម ការកំណត់រចនាសម្ព័ន្ធ ការក្រិតតាមខ្នាត និងការធ្វើបច្ចុប្បន្នភាពកម្មវិធីបង្កប់ទាំងអស់ត្រូវបានបាត់បង់។
ដើម្បីចាប់ផ្តើមការកំណត់ឡើងវិញ សូមចុចប៊ូតុងដោយថ្នមៗដោយប្រើម្ជុល ខណៈពេលដែលឧបករណ៍ត្រូវបានបិទ។ បន្ទាប់មកភ្ជាប់ថាមពល ខណៈពេលដែលសង្កត់ប៊ូតុង ហើយលែងប៊ូតុងបន្តិចក្រោយមក។
នីតិវិធីកំណត់ឡើងវិញនឹងត្រូវការនាទីជាច្រើនដើម្បីបញ្ចប់។ នៅពេលដែលការកំណត់ឡើងវិញត្រូវបានបញ្ចប់ ឧបករណ៍នឹងចាប់ផ្តើមជាធម្មតា ហើយនឹងអាចរកឃើញនៅលើបណ្តាញដែលមានអាសយដ្ឋាន IP លំនាំដើម។ អ្នកអាចប្រើកម្មវិធី NVCom (សូមមើលផ្នែក: 11.1) ដើម្បីត្រួតពិនិត្យនៅពេលដែលឧបករណ៍អាចរកឃើញបន្ទាប់ពីការកំណត់ឡើងវិញត្រូវបានបញ្ចប់។
6.5 ស្ថានភាព LEDs
ឧបករណ៍នេះមាន LED ស្ថានភាពចំនួនបី ដូចបានបង្ហាញក្នុងរូបភាពទី 4៖
LED ថាមពល (ពណ៌បៃតង)៖ ថាមពល LED បញ្ចេញពន្លឺពណ៌បៃតង នៅពេលដែលឧបករណ៍ត្រូវបានបើក។
ស្ថានភាពតំណ LED (ពណ៌បៃតង)៖ បង្ហាញថាតើតំណអ៊ីសឺរណិតត្រូវបានបង្កើតឡើងដោយជោគជ័យឬអត់។ ប្រសិនបើ LED មិនភ្លឺបន្ទាប់ពីភ្ជាប់ខ្សែអ៊ីសឺរណិត សូមពិនិត្យមើលខ្សែសម្រាប់ការខូចខាត ហើយត្រូវប្រាកដថាប្រព័ន្ធពីចម្ងាយ (កុងតាក់ ឬម៉ាស៊ីនកុំព្យូទ័រ) ដំណើរការ។
ស្ថានភាពទទួលបាន LED (ពណ៌ទឹកក្រូច)៖ LED នេះរាយការណ៍ពីស្ថានភាពទទួលបានរូបភាព និងការបរាជ័យឡាស៊ែរដែលអាចកើតមាន៖
បិទ៖ ការទិញរូបភាពមិនទាន់បានចាប់ផ្តើមនៅឡើយទេ។ នេះជាករណីប្រសិនបើឧបករណ៍នៅតែចាប់ផ្ដើម។ សូមពិនិត្យមើល web ចំណុចប្រទាក់សម្រាប់កំហុស (សូមមើលផ្នែកទី 9.1) ប្រសិនបើ LED បិទអស់រយៈពេលជាងពីរបីនាទីបន្ទាប់ពីការបើកថាមពល។
ការភ្លឹបភ្លែតៗ៖ ការទិញរូបភាពត្រូវបានចាប់ផ្តើមដោយជោគជ័យ ហើយឧបករណ៍កំពុងដំណើរការដូចបំណង។
បន្ត៖ ការបរាជ័យឡាស៊ែរត្រូវបានរកឃើញ ហើយម៉ាស៊ីនបញ្ចាំងឡាស៊ែរត្រូវបានបិទ។ សូមទាក់ទងផ្នែកជំនួយសម្រាប់ការដោះស្រាយការបរាជ័យនេះ។

12

7 ដំណើរការលទ្ធផល

(ក)

(ខ)

រូបភាពទី ១៣៖ ឧample for (a) unrectified and (b) rectified image camera.

7 ដំណើរការលទ្ធផល
7.1 រូបភាពដែលបានកែតម្រូវ
សូម្បីតែឧបករណ៍ចាប់សញ្ញារូបភាពដែលបានតម្រឹមយ៉ាងជាក់លាក់របស់ Ruby អ្នកទំនងជាមិនទទួលបានរូបភាពដែលត្រូវនឹងលទ្ធផលរំពឹងទុកពីកាមេរ៉ាស្តេរ៉េអូដ៏ល្អនោះទេ។ រូបភាព​ត្រូវ​បាន​ប៉ះពាល់​ដោយ​ការ​បង្ខូច​ទ្រង់ទ្រាយ​ផ្សេងៗ​ដែល​កើត​ចេញ​ពី​កំហុស​ក្នុង​ការ​ដាក់​ឧបករណ៍​អុបទិក និង​ឧបករណ៍​ចាប់​សញ្ញា។ ដូច្នេះ ជំហាន​ដំណើរការ​ដំបូង​ដែល​ត្រូវ​បាន​អនុវត្ត​គឺ​ប្រតិបត្តិការ​មិន​បង្ខូច​ទ្រង់ទ្រាយ​រូបភាព ដែល​ត្រូវ​បាន​គេ​ស្គាល់​ថា​ជា​ការ​កែ​រូបភាព។
ការកែតម្រូវរូបភាពតម្រូវឱ្យមានចំណេះដឹងច្បាស់លាស់អំពីប៉ារ៉ាម៉ែត្រនៃការដំឡើងកាមេរ៉ា។ ទាំងនេះអាចត្រូវបានកំណត់តាមរយៈការក្រិតតាមខ្នាតកាមេរ៉ា។ សូមមើលផ្នែកទី 9.8 សម្រាប់ការពន្យល់លម្អិតអំពីនីតិវិធីនៃការក្រិតតាមខ្នាតកាមេរ៉ា។ Ruby នឹងត្រូវបានដឹកជញ្ជូនជាមុន ហើយការក្រិតតាមខ្នាតឡើងវិញជាធម្មតាមិនចាំបាច់លើសពីអាយុកាលរបស់ឧបករណ៍នោះទេ។
រូបភាពទី 7a បង្ហាញពីអតីតampរូបភាពកាមេរ៉ា le ជាកន្លែងដែលកាមេរ៉ាត្រូវបានចង្អុលទៅក្តារក្រិត។ គែមរបស់ក្តារមើលទៅកោងបន្តិច ដោយសារតែការបង្ខូចទ្រង់ទ្រាយរ៉ាឌីកាល់ដែលបណ្តាលមកពីអុបទិករបស់កាមេរ៉ា។ រូបភាពទី 7b បង្ហាញរូបភាពដូចគ្នាបន្ទាប់ពីការកែតម្រូវរូបភាព។ លើកនេះ គែមទាំងអស់នៃក្តារក្រិត មើលទៅត្រង់ឥតខ្ចោះ។

7.2 ផែនទីភាពខុសគ្នា
លទ្ធផល​នៃ​ការ​ផ្គូផ្គង​ស្តេរ៉េអូ​ត្រូវ​បាន​ផ្ដល់​ជា​ទម្រង់​ផែនទី​មិន​ស្រប​គ្នា​ពី​ទស្សនៈ​នៃ​កាមេរ៉ា​ monochrome ខាងឆ្វេង។ ផែនទីភាពមិនស្មើគ្នាភ្ជាប់ភីកសែលនីមួយៗនៅក្នុងរូបភាពកាមេរ៉ាខាងឆ្វេងជាមួយនឹងភីកសែលដែលត្រូវគ្នានៅក្នុងរូបភាពកាមេរ៉ាខាងស្តាំ។ ដោយសាររូបភាពទាំងពីរត្រូវបានកែតម្រូវពីមុនដើម្បីផ្គូផ្គងធរណីមាត្រកាមេរ៉ាស្តេរ៉េអូដ៏ល្អ ភីកសែលដែលត្រូវគ្នាគួរតែខុសគ្នាតែនៅក្នុងកូអរដោនេផ្ដេកប៉ុណ្ណោះ។ ផែនទីគម្លាតដូច្នេះគ្រាន់តែអ៊ិនកូដភាពខុសគ្នានៃកូអរដោនេផ្តេកប៉ុណ្ណោះ។

13

7.2 ផែនទីភាពខុសគ្នា

7 ដំណើរការលទ្ធផល

(ក)

(ខ)

រូបភាពទី ១៣៖ ឧample សម្រាប់ (a) រូបភាពកាមេរ៉ាខាងឆ្វេង និងផែនទីភាពខុសគ្នាដែលត្រូវគ្នា។

Examples សម្រាប់រូបភាពកាមេរ៉ាខាងឆ្វេង និងផែនទីគម្លាតដែលត្រូវគ្នាត្រូវបានបង្ហាញក្នុងរូបភាព 8a និង 8b។ នៅទីនេះ ផែនទីនៃភាពមិនស្មើគ្នាត្រូវបានសរសេរកូដពណ៌ ដោយពណ៌លាំពណ៌ខៀវឆ្លុះបញ្ចាំងពីភាពខុសគ្នាតូចៗ ហើយពណ៌លាំក្រហមឆ្លុះបញ្ចាំងពីភាពខុសគ្នាដ៏ធំ។ ដូចដែលអាចមើលឃើញ ភាពខុសគ្នាគឺសមាមាត្រទៅនឹងជម្រៅបញ្ច្រាសនៃចំណុចកន្លែងកើតហេតុដែលត្រូវគ្នា។
ជួរ​ភាព​ខុស​គ្នា​បញ្ជាក់​តំបន់​រូបភាព​ដែល​ត្រូវ​បាន​ស្វែងរក​សម្រាប់​ការ​ស្វែងរក​ការ​ឆ្លើយឆ្លង​ភីកសែល។ ជួរភាពខុសគ្នាដ៏ធំមួយអនុញ្ញាតឱ្យមានការវាស់វែងត្រឹមត្រូវ ប៉ុន្តែបណ្តាលឱ្យមានបន្ទុកគណនាខ្ពស់ ហើយដូច្នេះបន្ថយអត្រាស៊ុមដែលអាចសម្រេចបាន។ Ruby គាំទ្រជួរភាពខុសគ្នាដែលអាចកំណត់រចនាសម្ព័ន្ធបាន (សូមមើលផ្នែកទី 9.9) ដែលអនុញ្ញាតឱ្យអ្នកប្រើប្រាស់ជ្រើសរើសរវាងការវាស់វែងដែលមានភាពជាក់លាក់ខ្ពស់ ឬល្បឿនលឿន។
វាអាចធ្វើទៅបានដើម្បីបំប្លែងផែនទីគម្លាតទៅជាសំណុំនៃចំណុច 3D ។ នេះអាចត្រូវបានធ្វើនៅមាត្រដ្ឋានម៉ែត្រត្រឹមត្រូវ ប្រសិនបើប្រព័ន្ធត្រូវបានក្រិតតាមខ្នាតត្រឹមត្រូវ។ ការបំប្លែងផែនទីនៃភាពមិនស្មើគ្នាទៅជាសំណុំនៃចំណុច 3D ទាមទារចំណេះដឹងអំពីម៉ាទ្រីសផែនទីពីភាពមិនស្មើគ្នាទៅជម្រៅ Q ដែលត្រូវបានគណនាកំឡុងពេលកែកាមេរ៉ា និងបញ្ជូនដោយ Ruby រួមជាមួយនឹងផែនទីភាពខុសគ្នានីមួយៗ។ ទីតាំង 3D xyz T នៃចំណុចដែលមានកូអរដោណេរូបភាព (u, v) និងភាពមិនស្មើគ្នា d អាចត្រូវបានបង្កើតឡើងវិញដូចខាងក្រោម៖

xy =

z

1 វ៉

x · y ,

z

ជាមួយ

x

u

y

z

=

Q

·

v

d

w

1

នៅពេលប្រើម៉ាទ្រីស Q ដែលផ្តល់ដោយ Ruby កូអរដោនេដែលទទួលបាននឹងត្រូវបានវាស់ជាម៉ែត្រដោយគោរពតាមប្រព័ន្ធកូអរដោនេដែលបង្ហាញក្នុងរូប។

14

7.2 ផែនទីភាពខុសគ្នា
z (អ័ក្សអុបទិក)

7 ដំណើរការលទ្ធផល
x

y
រូបភាពទី 9៖ ប្រព័ន្ធសំរបសំរួលដែលប្រើសម្រាប់ការស្ថាបនាឡើងវិញ 3D ។
ure 9. នៅទីនេះ ប្រភពដើមត្រូវគ្នានឹងចំណុចកណ្តាលនៃការបញ្ចាំង (ទីតាំងនៃជំរៅក្នុងគំរូកាមេរ៉ា pinhole) សម្រាប់កាមេរ៉ា monochrome ខាងឆ្វេង។ ការអនុវត្តប្រកបដោយប្រសិទ្ធភាពនៃការផ្លាស់ប្តូរនេះត្រូវបានផ្តល់ជូន API ដែលមានស្រាប់ (សូមមើលផ្នែកទី 10.4)។
Ruby គណនាផែនទីមិនស្មើគ្នាជាមួយនឹងគុណភាពបង្ហាញមិនស្មើគ្នាដែលទាបជាងមួយភីកសែល។ ផែនទីនៃភាពមិនស្មើគ្នាមានជម្រៅប៊ីតនៃ 12 ប៊ីត ដោយមាន 4 ប៊ីតទាបនៃតម្លៃនីមួយៗតំណាងឱ្យសមាសធាតុភាពខុសគ្នាប្រភាគ។ ដូច្នេះ វាចាំបាច់ក្នុងការបែងចែកតម្លៃនីមួយៗនៅក្នុងផែនទីគម្លាតដោយ 16 ដើម្បីទទួលបានទំហំគម្លាតត្រឹមត្រូវ។
Ruby អនុវត្តបច្ចេកទេសក្រោយដំណើរការជាច្រើន ដើម្បីបង្កើនគុណភាពនៃផែនទីមិនស្មើគ្នា។ វិធីសាស្រ្តទាំងនេះមួយចំនួនរកឃើញភាពខុសគ្នាដែលមានកំហុស ហើយសម្គាល់ពួកវាថាមិនត្រឹមត្រូវ។ ភាពខុសគ្នាមិនត្រឹមត្រូវត្រូវបានកំណត់ទៅជា 0xFFF ដែលជាតម្លៃខ្ពស់បំផុតដែលអាចត្រូវបានរក្សាទុកក្នុងផែនទីគម្លាត 12 ប៊ីត។ នៅក្នុងអតីតample ផែនទីភាពខុសគ្នាពីរូបភាពទី 8b ភាពខុសគ្នាមិនត្រឹមត្រូវត្រូវបានបង្ហាញជាពណ៌ប្រផេះ។
សូមចំណាំថាជាធម្មតាមានឆ្នូតនៃភាពខុសគ្នាមិនត្រឹមត្រូវនៅលើស៊ុមរូបភាពខាងឆ្វេងនៃផែនទីគម្លាត។ ឥរិយាបថនេះត្រូវបានគេរំពឹងទុកនៅពេលដែលផែនទីមិនស្មើគ្នាត្រូវបានគណនាតាមទស្សនៈរបស់កាមេរ៉ាខាងឆ្វេង។ តំបន់រូបភាពនៅគែមខាងឆ្វេងនៃរូបភាពកាមេរ៉ាខាងឆ្វេងមិនអាចត្រូវបានគេសង្កេតឃើញដោយកាមេរ៉ាខាងស្តាំទេ ដូច្នេះហើយមិនមានភាពខុសគ្នាត្រឹមត្រូវអាចត្រូវបានគេគណនាបានទេ។ វត្ថុដែលនៅខាងឆ្វេងឆ្ងាយជាងនេះ មានទីតាំងនៅឆ្ងាយជាងនេះ ដើម្បីឱ្យកាមេរ៉ាខាងស្តាំអាចមើលឃើញ។ ដូច្នេះ ជួរ​ជម្រៅ​ពេញលេញ​អាច​ត្រូវ​បាន​សង្កេត​ឃើញ​សម្រាប់​តែ​ភីកសែល​រូបភាព​ខាង​ឆ្វេង​ដែល​មាន​កូអរដោនេ​រូបភាព​ផ្ដេក​ u dmax ប៉ុណ្ណោះ។
ដូចគ្នានេះដែរ ភាពខុសគ្នាមិនត្រឹមត្រូវអាចត្រូវបានគេរំពឹងថានឹងកើតឡើងនៅខាងឆ្វេងនៅលើវត្ថុខាងមុខណាមួយ។ តំបន់មិនត្រឹមត្រូវដូចស្រមោលនេះគឺបណ្តាលមកពីផ្ទៃខាងក្រោយដែលអាចមើលឃើញត្រូវបានបិទនៅក្នុងរូបភាពកាមេរ៉ាខាងស្តាំ ប៉ុន្តែមិនមែននៅក្នុងរូបភាពកាមេរ៉ាខាងឆ្វេងទេ។ ឥទ្ធិពលនេះត្រូវបានគេស្គាល់ថាជាស្រមោល occlusion ហើយអាចមើលឃើញយ៉ាងច្បាស់នៅក្នុងឧampរូបភាពឡេ។
15

7.3 ការបញ្ចាំងរូបភាពពណ៌

7 ដំណើរការលទ្ធផល

(ក)

(ខ)

រូបភាពទី ១៣៖ ឧample សម្រាប់ (a) ផែនទីមិនស្មើគ្នា និង (b) រូបភាពពណ៌ដែលបញ្ចាំងជាមួយវត្ថុបុរាណ។

7.3 ការបញ្ចាំងរូបភាពពណ៌
ឧបករណ៍ចាប់សញ្ញា monochrome ខាងឆ្វេងត្រូវបានប្រើជាកាមេរ៉ាយោងសម្រាប់ការគណនាជម្រៅ។ ទោះបីជាឧបករណ៍ចាប់សញ្ញាពណ៌ត្រូវបានដាក់នៅជាប់នឹងវាក៏ដោយ វានឹងមានប៉ារ៉ាឡែល (ការផ្លាស់ប្តូរអុបទិកជាក់ស្តែង) រវាងរូបភាពពណ៌ និងផែនទីមិនស្មើគ្នា / រូបភាពឯកតាខាងឆ្វេង។
ការផ្លាស់ប្តូរនេះអាចត្រូវបានផ្តល់សំណងដោយការបញ្ចាំងរូបភាពពណ៌ត្រលប់ទៅក្នុង view នៃកាមេរ៉ាយោង។ នៅពេលដែលការព្យាករនេះត្រូវបានអនុវត្ត ចំណុចរូបភាពដែលត្រូវគ្នារវាងរូបភាព monochrome ខាងឆ្វេង ផែនទីមិនស្មើគ្នា និងរូបភាពពណ៌ទាំងអស់នឹងមានកូអរដោនេរូបភាពដូចគ្នាបេះបិទ ហើយរូបភាពទាំងបីអាចដាក់ត្រួតលើគ្នាដោយផ្ទាល់។
Ruby មានសមត្ថភាពធ្វើការព្យាករណ៍នេះដោយស្វ័យប្រវត្តិ។ ការព្យាករណ៍អាស្រ័យលើការវាស់ជម្រៅ ហើយជាអកុសលមិនល្អឥតខ្ចោះទេ។ នេះមានន័យថាវត្ថុបុរាណដែលមើលឃើញមួយចំនួននឹងត្រូវរំពឹងទុក។ បរិមាណវត្ថុបុរាណអាស្រ័យយ៉ាងខ្លាំងទៅលើគុណភាពវាស់ជម្រៅ។ ជាពិសេសគែមវត្ថុអាចត្រូវបានប៉ះពាល់ដោយវត្ថុបុរាណ។
ផ្នែករងដែលបានពង្រីកនៃអតីតampរូបភាព le ពណ៌ និងផែនទីជម្រៅដែលបង្ហាញពីឥទ្ធិពលនេះអាចមើលឃើញនៅក្នុងរូបភាពទី 10 ។ ក្នុងករណីដែលភាពស្របគ្នារវាងការវាស់វែងជម្រៅ និងរូបភាពពណ៌អាចទទួលយកបាន វត្ថុបុរាណអាចត្រូវបានជៀសវាងដោយការបិទការព្យាករណ៍នេះ។ សម្រាប់ព័ត៌មានលម្អិត សូមមើលផ្នែកទី 9.6 ។

7.4 ពេលវេលាamps និងលេខលំដាប់
សំណុំរូបភាពនីមួយៗដែលត្រូវបានបញ្ជូនដោយ Ruby ក៏រួមបញ្ចូលពេលវេលាផងដែរ។amp និងលេខលំដាប់។ ពេលវេលាបំផុត។amp ត្រូវ​បាន​វាស់​ដោយ​ភាព​សុក្រឹត​នៃ​មីក្រូវិនាទី ហើយ​ត្រូវ​បាន​កំណត់​ទៅ​ពេល​ដែល​ឧបករណ៍​ចាប់​សញ្ញា​រូបភាព​ចាប់​ផ្តើម​បង្ហាញ​ស៊ុម។

16

8 ការកំណត់រចនាសម្ព័ន្ធបណ្តាញ
ដូច្នេះ ពេលវេលានៃការប៉ះពាល់គួរត្រូវបានពិចារណាជានិច្ច នៅពេលព្យាយាមវាស់ស្ទង់ការពន្យារពេលរបស់ឧបករណ៍ចាប់សញ្ញា។
ដូចដែលបានពន្យល់នៅក្នុងផ្នែក 6.3.3 និង 9.12 វាអាចធ្វើសមកាលកម្មនាឡិកាខាងក្នុងរបស់ Ruby ទៅសញ្ញាខាងក្រៅ ឬម៉ាស៊ីនមេពេលវេលា។ នេះប៉ះពាល់ដល់ពេលវេលាផលិតដោយផ្ទាល់ampស. នៅពេលធ្វើសមកាលកម្មទៅម៉ាស៊ីនមេពេលវេលា ពេលវេលា stamps ត្រូវបានវាស់ជាមីក្រូវិនាទី ចាប់តាំងពីថ្ងៃទី 1 ខែមករា ឆ្នាំ 1970 ម៉ោង 00:00:00 UTC។ ប្រសិនបើគ្មានការធ្វើសមកាលកម្មត្រូវបានអនុវត្តទេ នាឡិកាខាងក្នុងត្រូវបានកំណត់ទៅ 0 នៅពេលបើកថាមពល។ នៅពេលធ្វើសមកាលកម្មទៅនឹងសញ្ញា PPS ខាងក្រៅ ដូចដែលបានពន្យល់នៅក្នុងផ្នែក 6.3.3 នាឡិកាត្រូវបានកំណត់ទៅ 0 នៅលើគែមសញ្ញាកើនឡើងដែលចូលមក។
សូមចំណាំថាការធ្វើសមកាលកម្មទៅនឹងសញ្ញា PPS ក៏បង្កើតពេលវេលាអវិជ្ជមានផងដែរ។ampស. វាកើតឡើងនៅពេលដែលសញ្ញានៃការធ្វើសមកាលកម្មត្រូវបានទទួល ខណៈពេលដែល Ruby កំពុងដំណើរការគូរូបភាពដែលបានថតរួចហើយ។ ពេលវេលាអវិជ្ជមានបំផុត។amp ពេល​នោះ​គឺ​ជា​ពេល​វេលា​ខុស​គ្នា​រវាង​ការ​ទទួល​សញ្ញា​ធ្វើ​សមកាលកម្ម និង​ពេល​វេលា​នៃ​ការ​ចាប់​គូ​រូបភាព​បច្ចុប្បន្ន។
8 ការកំណត់រចនាសម្ព័ន្ធបណ្តាញ
វាត្រូវបានផ្ដល់អនុសាសន៍ឱ្យភ្ជាប់ Ruby ដោយផ្ទាល់ទៅច្រកអ៊ីសឺរណិតរបស់កុំព្យូទ័រម៉ាស៊ីន ដោយមិនចាំបាច់មានកុងតាក់ ឬមជ្ឈមណ្ឌលណាមួយនៅចន្លោះនោះទេ។ នេះគឺដោយសារតែ Ruby ផលិតទិន្នន័យបណ្តាញដែលមានចរន្តខ្ពស់ ដែលអាចនាំឱ្យបាត់បង់កញ្ចប់ព័ត៌មាន នៅពេលប្រើឧបករណ៍ប្តូរបណ្តាញដែលមិនអាចបំពេញតាមតម្រូវការដែលត្រូវការ។ វាត្រូវតែត្រូវបានធានាថាចំណុចប្រទាក់បណ្តាញរបស់កុំព្យូទ័រម៉ាស៊ីនអាចគ្រប់គ្រងអត្រាទិន្នន័យចូល 900 MBit/s ។
ការកំណត់រចនាសម្ព័ន្ធបណ្តាញចាំបាច់សម្រាប់កុំព្យូទ័រម៉ាស៊ីនត្រូវបានពិពណ៌នានៅក្នុងផ្នែករងខាងក្រោម។
៥.៥ ការកំណត់ IP
តាមលំនាំដើម Ruby នឹងប្រើអាសយដ្ឋាន IP 192.168.10.10 ជាមួយនឹងរបាំងបណ្ដាញរង 255.255.255.0 ។ ប្រសិនបើម៉ាស៊ីនមេ DHCP មានវត្តមាននៅលើបណ្តាញនោះ វាអាចផ្តល់អាសយដ្ឋានផ្សេងទៅ Ruby ។ ក្នុងករណីនេះ សូមប្រើកម្មវិធី NVCom ដែលបានផ្ដល់សម្រាប់ការស្វែងរកឧបករណ៍ (សូមមើលផ្នែកទី 11.1)។
ប្រសិនបើគ្មានម៉ាស៊ីនមេ DHCP ផ្សេងទៀតមានវត្តមាននៅលើបណ្តាញនោះ Ruby នឹងចាប់ផ្តើមម៉ាស៊ីនមេ DHCP ផ្ទាល់ខ្លួនរបស់វា។ នេះមានន័យថា ប្រសិនបើកុំព្យូទ័ររបស់អ្នកត្រូវបានកំណត់រចនាសម្ព័ន្ធដើម្បីប្រើអាសយដ្ឋាន IP ថាមវន្ត នោះកុំព្យូទ័រនឹងទទួលបានអាសយដ្ឋាន IP ដោយស្វ័យប្រវត្តិនៅក្នុងបណ្តាញរងត្រឹមត្រូវ ហើយមិនចាំបាច់មានការកំណត់រចនាសម្ព័ន្ធបន្ថែមទៀតទេ។
ប្រសិនបើកុំព្យូទ័ររបស់អ្នកមិនត្រូវបានកំណត់រចនាសម្ព័ន្ធដើម្បីប្រើអាសយដ្ឋាន IP ថាមវន្ត ឬម៉ាស៊ីនមេ DHCP រួមបញ្ចូលរបស់ Ruby ត្រូវបានបិទ នោះអ្នកត្រូវកំណត់រចនាសម្ព័ន្ធអាសយដ្ឋាន IP របស់អ្នកដោយដៃ។ សម្រាប់ Windows 10 សូមអនុវត្តតាមជំហានទាំងនេះ៖
1. ចុច Start Menu > Settings > Network & Internet > Ethernet > Change adapter options។
2. ចុចកណ្ដុរស្ដាំលើការតភ្ជាប់អ៊ីសឺរណិតដែលចង់បាន។
17

8.2 ស៊ុម Jumbo

8 ការកំណត់រចនាសម្ព័ន្ធបណ្តាញ

3. ចុច 'Properties'
4. ជ្រើសរើស `Internet Protocol Version 4 (TCP/IPv4)'។
5. ចុច 'Properties' ។
6. ជ្រើសរើស 'ប្រើអាសយដ្ឋាន IP ខាងក្រោម' ។
7. បញ្ចូលអាសយដ្ឋាន IP ដែលចង់បាន (192.168.10.xxx) ។
8. បញ្ចូលរបាំងបណ្ដាញរង (255.255.255.0) ។
ចុចយល់ព្រម។
សម្រាប់លីនុច សូមប្រើពាក្យបញ្ជាខាងក្រោមដើម្បីកំណត់អាសយដ្ឋាន IP ជាបណ្តោះអាសន្ន 192.168.10.xxx នៅលើចំណុចប្រទាក់បណ្តាញ eth0: sudo ifconfig eth0 192.168.10.xxx netmask 255.255.255.0
8.2 ស៊ុម Jumbo
សម្រាប់ដំណើរការអតិបរមា Ruby គួរតែត្រូវបានកំណត់រចនាសម្ព័ន្ធដើម្បីប្រើស៊ុម Jumbo (សូមមើលផ្នែក 9.5) ។ តាមលំនាំដើម ការគាំទ្រស៊ុម Jumbo ប្រហែលជាមិនត្រូវបានបើកនៅក្នុងការកំណត់រចនាសម្ព័ន្ធដែលបានដឹកជញ្ជូនទេ ដោយសារវាទាមទារការកំណត់រចនាសម្ព័ន្ធសមស្របនៃចំណុចប្រទាក់បណ្តាញរបស់ម៉ាស៊ីនមេ។
ប្រសិនបើ Ruby អាចចូលប្រើបានតាមរយៈ web ចំណុចប្រទាក់ និងបានរកឃើញនៅក្នុងបញ្ជីឧបករណ៍ (ឧទាហរណ៍នៅក្នុង NVCom សូមមើលផ្នែកទី 11.1) ប៉ុន្តែមិនមានទិន្នន័យរូបភាពត្រូវបានទទួល (0 fps) នេះអាចបង្ហាញថា Jumbo Frames ត្រូវបានធ្វើឱ្យសកម្មនៅក្នុង Ruby ប៉ុន្តែការភ្ជាប់បណ្តាញនៃកុំព្យូទ័រអតិថិជនរៀងៗខ្លួនគឺមិនមែនទេ។ កំណត់រចនាសម្ព័ន្ធត្រឹមត្រូវដើម្បីទទួលយកពួកគេ។
ដើម្បីដំណើរការការគាំទ្រ Jumbo Frame នៅក្នុង Windows 10 សូមអនុវត្តតាមជំហានទាំងនេះ៖
1. បើក 'បណ្តាញ និងមជ្ឈមណ្ឌលចែករំលែក'
2. បើកប្រអប់លក្ខណសម្បត្តិនៃការតភ្ជាប់បណ្តាញដែលចង់បាន
3. ចុចប៊ូតុង 'កំណត់រចនាសម្ព័ន្ធ...'
4. បើកផ្ទាំង 'កម្រិតខ្ពស់'
5. ជ្រើសរើស 'Jumbo Packet' ហើយជ្រើសរើសទំហំកញ្ចប់ដែលចង់បាន (សូមមើលរូបភាពទី 11)
សូមចំណាំថាមិនដូចសម្រាប់លីនុចទេ កម្មវិធីបញ្ជាបណ្តាញវីនដូមួយចំនួនក៏រាប់បឋមកថាអ៊ីសឺរណិត 14 បៃជាផ្នែកនៃទំហំកញ្ចប់ព័ត៌មានផងដែរ។ នៅពេលកំណត់រចនាសម្ព័ន្ធ Ruby ដើម្បីប្រើ 9000 បៃ MTU កុំព្យូទ័រវីនដូអាចត្រូវការទំហំកញ្ចប់ព័ត៌មាន 9014 បៃ។
នៅលើលីនុច ការគាំទ្រស៊ុម Jumbo អាចត្រូវបានធ្វើឱ្យសកម្មដោយការកំណត់ MTU ធំគ្រប់គ្រាន់ តាមរយៈពាក្យបញ្ជា ifconfig ។ សម្រាប់ការកំណត់រចនាសម្ព័ន្ធ 9000 បៃ MTU សម្រាប់ចំណុចប្រទាក់ eth0 សូមប្រើបន្ទាត់ពាក្យបញ្ជាខាងក្រោម៖
18

9 ការកំណត់រចនាសម្ព័ន្ធ
រូបភាពទី 11៖ ការកំណត់រចនាសម្ព័ន្ធ Jumbo Frames ក្នុង Windows > sudo ifconfig eth0 mtu 9000 សូមជ្រាបថា ឈ្មោះចំណុចប្រទាក់អាចខុសពី eth0 ជាពិសេសនៅក្នុងការចេញផ្សាយលីនុចថ្មីៗ។ MTU ត្រូវបានកំណត់ដោយស្វ័យប្រវត្តិយោងទៅតាមការកំណត់ Ruby Jumbo Frame នៅពេលណាដែលកុំព្យូទ័រលីនុចទទួលបានការកំណត់ពីម៉ាស៊ីនមេ Ruby DHCP សកម្ម (សូមមើលផ្នែកទី 9.5)។ នៅលើ Windows ការកំណត់ MTU ដោយស្វ័យប្រវត្តិមិនដំណើរការទេ ព្រោះ Windows មិនគាំទ្រមុខងារនេះទេ។
9 ការកំណត់រចនាសម្ព័ន្ធ
Ruby ត្រូវបានកំណត់រចនាសម្ព័ន្ធតាមរយៈ a web ចំណុចប្រទាក់ ដែលអាចទៅដល់បានដោយការបញ្ចូលអាសយដ្ឋាន IP របស់វាទៅក្នុងកម្មវិធីរុករករបស់អ្នក។ អាសយដ្ឋានលំនាំដើមគឺ http://192.168.10.10 ប៉ុន្តែប្រសិនបើម៉ាស៊ីនមេ DHCP មានវត្តមាននៅលើបណ្តាញ វាអាចផ្តល់អាសយដ្ឋានផ្សេងទៅ Ruby (សូមមើលផ្នែក 8.1) ។ ក្នុងករណីនេះ សូមប្រើកម្មវិធី NVCom ដែលបានផ្ដល់សម្រាប់ការស្វែងរកឧបករណ៍ (សូមមើលផ្នែកទី 11.1)។
ប្រសិនបើ Ruby ទើបតែត្រូវបានដោតចូល វានឹងចំណាយពេលច្រើនវិនាទីមុននឹង web ចំណុចប្រទាក់អាចចូលប្រើបាន។ សម្រាប់ការប្រើប្រាស់ web ចំណុចប្រទាក់ អ្នកត្រូវការកម្មវិធីរុករកតាមអ៊ីនធឺណិតដែលមានការគាំទ្រសម្រាប់ HTML 5 ។ សូមប្រើកំណែថ្មីនៃកម្មវិធីរុករកធំមួយដូចជា Chrome, Firefox, Safari ឬ Edge ។
នេះ។ web-interface ចែកចេញជាពីរផ្នែក៖ ការកំណត់ទូទៅ និង Ad19

9.1 ស្ថានភាពប្រព័ន្ធ

9 ការកំណត់រចនាសម្ព័ន្ធ

រូបភាពទី ១៤៖ រូបថតអេក្រង់នៃទំព័រស្ថានភាពកំណត់រចនាសម្ព័ន្ធ។
ការ​កំណត់​ជួរ​មុខ ទំព័រការកំណត់ទូទៅមានប៉ារ៉ាម៉ែត្រដែលបានកែតម្រូវជាទូទៅបំផុត។ ការកែប្រែតែប៉ារ៉ាម៉ែត្រទាំងនេះគួរតែគ្រប់គ្រាន់សម្រាប់កម្មវិធីភាគច្រើន។ ប៉ារ៉ាម៉ែត្រ​ដែល​ត្រូវ​បាន​កែសម្រួល​តិច​ជាង​ដែល​អាច​ពាក់ព័ន្ធ​នឹង​កម្មវិធី​ជាក់លាក់​អាច​រក​ឃើញ​នៅ​លើ​ទំព័រ​ការ​កំណត់​កម្រិត​ខ្ពស់​។
9.1 ស្ថានភាពប្រព័ន្ធ
ទំព័រដំបូងដែលអ្នកឃើញនៅពេលបើក web ចំណុចប្រទាក់គឺជាទំព័រ 'ស្ថានភាពប្រព័ន្ធ' ដែលត្រូវបានបង្ហាញក្នុងរូបភាពទី 12 ។ នៅលើទំព័រនេះ អ្នកអាចស្វែងរកព័ត៌មានដូចខាងក្រោមៈ
ម៉ូដែល៖ ឈ្មោះម៉ូដែលសម្រាប់ឧបករណ៍របស់អ្នក។
ស្ថានភាពក្រិត៖ ផ្តល់ព័ត៌មានថាតើប្រព័ន្ធត្រូវបានក្រិតតាមខ្នាតត្រឹមត្រូវ។
ស្ថានភាពដំណើរការ៖ បង្ហាញថាតើប្រព័ន្ធរងដំណើរការរូបភាពត្រូវបានចាប់ផ្តើមឬអត់។ ប្រសិនបើនេះមិនមែនជាករណីទេ នោះប្រហែលជាមានបញ្ហាក្នុងការកំណត់រចនាសម្ព័ន្ធ ឬបញ្ហាប្រព័ន្ធអាចនឹងកើតឡើង។ សូមពិគ្រោះជាមួយកំណត់ហេតុប្រព័ន្ធក្នុងករណីនេះ។ ប្រព័ន្ធរងដំណើរការរូបភាពនឹងត្រូវបានចាប់ផ្តើមភ្លាមៗនៅពេលដែលមូលហេតុនៃកំហុសត្រូវបានដោះស្រាយ។
សីតុណ្ហភាព SOC៖ សីតុណ្ហភាពនៃប្រព័ន្ធកណ្តាលនៅលើបន្ទះឈីប (SoC) ដែលអនុវត្តរាល់កិច្ចការដំណើរការទាំងអស់។ សីតុណ្ហភាពប្រតិបត្តិការអតិបរមា
20

៥.៥.៣ កំណត់ជាមុន

9 ការកំណត់រចនាសម្ព័ន្ធ

រូបភាពទី ១៥៖ រូបថតអេក្រង់នៃទំព័រកំណត់រចនាសម្ព័ន្ធជាមុន។
សម្រាប់ SoC ដែលធ្វើការគឺនៅ 100 C។ ការសរសេរកូដពណ៌បៃតង-ទឹកក្រូច-ក្រហម ត្រូវបានអនុវត្តដើម្បីផ្តល់សញ្ញាល្អ សីតុណ្ហភាពប្រកាសអាសន្ន និងសីតុណ្ហភាពសំខាន់។
ឧបករណ៍ចាប់សញ្ញារូបភាពឆ្វេង/ស្តាំ/ពណ៌៖ សីតុណ្ហភាពបន្ទះឈីបសម្រាប់ឧបករណ៍ចាប់សញ្ញារូបភាពខាងឆ្វេង ស្តាំ និងពណ៌។ សីតុណ្ហភាពប្រតិបត្តិការអតិបរមាសម្រាប់ឧបករណ៍ចាប់សញ្ញារូបភាពគឺ 75 អង្សាសេ។ ដូចទៅនឹងសីតុណ្ហភាព SOC ការសរសេរកូដពណ៌បៃតង-ទឹកក្រូច-ក្រហមត្រូវបានអនុវត្ត។
កំណត់ហេតុប្រព័ន្ធ៖ បញ្ជីសារកំណត់ហេតុប្រព័ន្ធដែលបានតម្រៀបតាមពេលវេលា។ នៅក្នុងប្រតិបត្តិការធម្មតា អ្នកនឹងរកឃើញព័ត៌មានអំពីដំណើរការប្រព័ន្ធបច្ចុប្បន្ន។ ក្នុងករណីមានកំហុស កំណត់ហេតុប្រព័ន្ធមានសារកំហុសដែលត្រូវគ្នា។
៥.៥.៣ កំណត់ជាមុន
ការកំណត់ការកំណត់ជាមុនផ្សេងៗគ្នាមានសម្រាប់បន្សំដែលបានជ្រើសរើសនៃគុណភាពបង្ហាញរូបភាព និងអត្រាស៊ុម។ ការប្រើប្រាស់ការកំណត់ជាមុនគឺត្រូវបានណែនាំយ៉ាងខ្លាំងព្រោះវានឹងធានានូវការប្រើប្រាស់ដ៏ល្អប្រសើរនៃដំណើរការរបស់ Ruby ។
រូបភាពទី 13 បង្ហាញពីការកំណត់ជាមុន web- ទំព័រចំណុចប្រទាក់។ ការផ្ទុកការកំណត់ជាមុននឹងកែប្រែតែប៉ារ៉ាម៉ែត្រដែលពាក់ព័ន្ធសម្រាប់ការកំណត់ដែលបានផ្តល់ឱ្យប៉ុណ្ណោះ។ ប៉ារ៉ាម៉ែត្រផ្សេងទៀតនឹងមិនត្រូវបានកែប្រែទេ។ ប្រសិនបើប៉ារ៉ាម៉ែត្រទាំងអស់គួរតែត្រូវបានកំណត់ទៅតម្លៃលំនាំដើមដែលពេញចិត្ត វាត្រូវបានណែនាំឱ្យធ្វើការកំណត់រចនាសម្ព័ន្ធឡើងវិញជាមុនសិន (សូមមើលផ្នែកទី 9.7) ហើយបន្ទាប់មកផ្ទុកការកំណត់ជាមុនដែលចង់បាននៅពេលក្រោយ។
21

មុនឆ្នាំ ២០២០view

9 ការកំណត់រចនាសម្ព័ន្ធ

រូបភាពទី ១៦៖ រូបថតអេក្រង់នៃការកំណត់រចនាសម្ព័ន្ធមុន។view ទំព័រ។
មុនឆ្នាំ ២០២០view
មុនview ទំព័រដែលត្រូវបានបង្ហាញក្នុងរូបភាពទី 14 ផ្តល់នូវការផ្សាយបន្តផ្ទាល់ជាមុនview នៃផែនទីវិសមភាពដែលបានគណនាបច្ចុប្បន្ន។ សូមប្រាកដថាការតភ្ជាប់បណ្តាញរបស់អ្នកគាំទ្រកម្រិតបញ្ជូនខ្ពស់ដែលត្រូវការសម្រាប់ការផ្សាយទិន្នន័យវីដេអូ (សូមមើលផ្នែក 8.2) ។ សម្រាប់ការប្រើប្រាស់មុន។view ទំព័រ អ្នកទាមទារការតភ្ជាប់បណ្តាញដោយផ្ទាល់ទៅ Ruby ។ មិនអាចប្រើម៉ាស៊ីនមេប្រូកស៊ី ឬរ៉ោតទ័រដែលធ្វើការបកប្រែអាសយដ្ឋានបណ្តាញ (NAT) បានទេ។
ពេលបើកមុនview ទំព័រ, Ruby បញ្ឈប់ការផ្ទេរទិន្នន័យរូបភាពទៅម៉ាស៊ីនផ្សេងទៀត។ ការផ្ទេរនេះត្រូវបានបន្តភ្លាមៗនៅពេលដែលបង្អួចកម្មវិធីរុករកត្រូវបានបិទ អ្នកប្រើប្រាស់ចុចប៊ូតុងផ្អាកនៅខាងក្រោមview តំបន់ ឬប្រសិនបើអ្នកប្រើរុករកទៅទំព័រផ្សេង។ មាន​តែ​ករណី​បើក​ចំហ​មួយ​នៃ​មុន​view ទំព័រ ឬទំព័រផ្សេងទៀតដែលកំពុងផ្សាយទិន្នន័យវីដេអូទៅកាន់កម្មវិធីរុករកតាមអ៊ីនធឺណិតត្រូវបានអនុញ្ញាតក្នុងពេលតែមួយ។ ប្រសិនបើព្យាយាមបើកច្រើនជាងមួយដង មានតែវត្ថុមួយប៉ុណ្ណោះដែលនឹងទទួលបានទិន្នន័យ។
មុនview ដែលត្រូវបានបង្ហាញក្នុងកម្មវិធីរុករកតាមអ៊ីនធឺណិតមិនឆ្លុះបញ្ចាំងពីគុណភាពពេញលេញនៃផែនទីមិនស្មើគ្នាដែលបានគណនានោះទេ។ ជាពិសេស អត្រាស៊ុមត្រូវបានកំណត់ត្រឹម 20 fps ហើយភាពសុក្រិតរងនៃភីកសែលមិនមានទេ។ ដើម្បីទទួលបានមុនគុណភាពពេញលេញviewសូមប្រើកម្មវិធី NVCom ដែលត្រូវបានពិពណ៌នានៅក្នុងផ្នែក 11.1 ។
គ្រោងការណ៍សរសេរកូដពណ៌ផ្សេងគ្នាអាចត្រូវបានជ្រើសរើសតាមរយៈបញ្ជីទម្លាក់ចុះខាងក្រោមview តំបន់។ មាត្រដ្ឋាន​ពណ៌​ត្រូវ​បាន​បង្ហាញ​ទៅ​ខាង​ស្ដាំ ដែល​ផ្ដល់​ព័ត៌មាន​អំពី​ការ​គូស​ផែនទី​រវាង​ពណ៌ និង​តម្លៃ​មិន​ស្មើគ្នា។ អាចធ្វើទៅបាន
22

9.4 ការកំណត់ការទិញ

9 ការកំណត់រចនាសម្ព័ន្ធ

រូបភាពទី 15៖ រូបថតអេក្រង់នៃទំព័រកំណត់រចនាសម្ព័ន្ធសម្រាប់ការកំណត់ការទិញ។
ពណ៌ចម្រុះគឺ៖
ឥន្ទធនូ៖ ពណ៌​ឥន្ទធនូ​ដែល​មាន​រលក​ពន្លឺ​ទាប​ដែល​ត្រូវ​គ្នា​នឹង​ភាព​ខុស​គ្នា​ខ្ពស់​និង​រលក​វែង​ខ្ពស់​ដែល​ត្រូវ​គ្នា​នឹង​ភាពខុសគ្នា​ទាប។ ភាពខុសគ្នាមិនត្រឹមត្រូវត្រូវបានបង្ហាញជាពណ៌ប្រផេះ។
ក្រហម/ខៀវ៖ ជម្រាលពីក្រហមទៅខៀវ ជាមួយនឹងពណ៌លាំក្រហមដែលត្រូវគ្នានឹងភាពខុសគ្នាខ្លាំង និងពណ៌លាំពណ៌ខៀវដែលត្រូវគ្នាទៅនឹងភាពខុសគ្នាទាប។ ភាពខុសគ្នាមិនត្រឹមត្រូវត្រូវបានបង្ហាញជាពណ៌ខ្មៅ។
ទិន្នន័យ​ដើម៖ ទិន្នន័យ​មិន​ស្មើគ្នា​ឆៅ​ដោយ​គ្មាន​ការ​សរសេរ​កូដ​ពណ៌។ អាំងតង់ស៊ីតេភីកសែលត្រូវគ្នានឹងសមាសធាតុចំនួនគត់នៃភាពខុសគ្នាដែលបានវាស់។ ភាពខុសគ្នាមិនត្រឹមត្រូវត្រូវបានបង្ហាញជាពណ៌ស។
9.4 ការកំណត់ការទិញ
ប៉ារ៉ាម៉ែត្រដែលពាក់ព័ន្ធបំផុតសម្រាប់ការទទួលបានរូបភាពត្រូវបានរាយក្នុងទំព័រការកំណត់ការទិញដែលត្រូវបានបង្ហាញក្នុងរូបភាពទី 15 ។ ទំព័រនេះត្រូវបានបែងចែកជាបីផ្នែកផ្សេងគ្នា។
9.4.1 ការកំណត់ទម្រង់ ផ្នែកនេះគ្របដណ្តប់ការកំណត់ទាំងអស់ដែលទាក់ទងនឹងទម្រង់រូបភាព។ ជាជាងកែប្រែការកំណត់ទម្រង់ជាលក្ខណៈបុគ្គល យើងសូមណែនាំឱ្យប្រើការកំណត់ជាមុន
23

9.4 ការកំណត់ការទិញ

9 ការកំណត់រចនាសម្ព័ន្ធ

(សូមមើលផ្នែកទី 9.2) ហើយផ្លាស់ប្តូរការកំណត់បុគ្គលតែប៉ុណ្ណោះប្រសិនបើចាំបាច់។ នេះនឹងធានាថាសមត្ថភាពនៃរូបភាព និងដំណើរការរបស់ Ruby ត្រូវបានប្រើប្រាស់យ៉ាងល្អប្រសើរ។
សូមចំណាំថាប៊ូតុងអនុវត្តត្រូវតែចុចដើម្បីឱ្យការផ្លាស់ប្តូរការកំណត់រចនាសម្ព័ន្ធមានប្រសិទ្ធភាព។ ការកំណត់ដែលមានគឺ៖

ទទឹង៖
កម្ពស់៖ ទម្រង់ភីកសែល៖
Binning ផ្ដេក៖
ការដាក់បញ្ឈរ៖
លំនាំពន្លឺរបស់ម៉ាស៊ីនបញ្ចាំង៖

ទទឹងគិតជាភីកសែលនៃតំបន់ដែលចាប់អារម្មណ៍ (ROI) ដែលបានជ្រើសរើស។ សូមមើលផ្នែកទី 9.15 ផងដែរសម្រាប់ជម្រើស ROI បន្ថែមទៀត។ កម្ពស់គិតជាភីកសែលនៃ ROI ដែលបានជ្រើសរើស។ របៀបអ៊ិនកូដភីកសែលដែលចង់បាន។ ការកំណត់ដែលមានគឺម៉ូណូ 8 ប៊ីត (ម៉ូណូ 8) ឬម៉ូណូ 12 ប៊ីត (ម៉ូណូ 12 ភី) ។ ចំនួន​ក្រឡា​ដែល​មាន​ពន្លឺ​ផ្តេក​ដែល​ត្រូវ​បាន​រួម​បញ្ចូល​គ្នា​សម្រាប់​រូបភាព​មួយ​ភីកសែល។ ចំនួន​ក្រឡា​ដែល​មាន​ពន្លឺ​បញ្ឈរ​ដែល​ត្រូវ​បាន​បញ្ចូល​គ្នា​សម្រាប់​រូបភាព​មួយ​ភីកសែល។ ពន្លឺនៃម៉ាស៊ីនបញ្ចាំងលំនាំដែលបានបញ្ជាក់ជាភាគរយ។ 100% បង្ហាញពីពន្លឺពេញ ចំណែក 0% បិទម៉ាស៊ីនបញ្ចាំងរូបភាពទាំងស្រុង។

9.4.2 អត្រាស៊ុម
អត្រាស៊ុមដែល Ruby ថតរូបភាពអាចត្រូវបានកំណត់រចនាសម្ព័ន្ធដោយសេរី។ អត្រាស៊ុមអតិបរមាដែលអាចសម្រេចបានគឺអាស្រ័យលើគុណភាពបង្ហាញរូបភាពដែលបានជ្រើសរើស ជួរភាពខុសគ្នា ទ្រង់ទ្រាយភីកសែល និងចំណុចប្រទាក់បណ្តាញ។ ប្រសិនបើអ្នកកំណត់អត្រាស៊ុមខ្ពស់ជាងអតិបរមាដែលអាចសម្រេចបាន នោះវាអាចបណ្តាលឱ្យមានរូបភាពមិនទៀងទាត់ ឬគ្មានស៊ុមណាមួយត្រូវបានទទួល។ វាត្រូវបានផ្ដល់អនុសាសន៍ឱ្យជ្រើសរើសការកំណត់ជាមុនជាមុនសិន (សូមមើលផ្នែកទី 9.2) ជាមួយនឹងដំណោះស្រាយដែលចង់បាន ហើយបន្ទាប់មកបន្ថយអត្រាស៊ុមតែប៉ុណ្ណោះប្រសិនបើចាំបាច់។
9.4.3 ការគ្រប់គ្រងការប៉ះពាល់
Ruby នឹងគ្រប់គ្រងការប៉ះពាល់របស់ឧបករណ៍ចាប់សញ្ញាដោយស្វ័យប្រវត្តិ និងទទួលបានដើម្បីផ្គូផ្គងអាំងតង់ស៊ីតេជាមធ្យមដែលបានផ្តល់ឱ្យ ដែលអាចត្រូវបានជ្រើសរើសនៅក្នុងតំបន់ 'ការគ្រប់គ្រងការប៉ះពាល់' ។ ប្រសិនបើការកែតម្រូវដោយស្វ័យប្រវត្តិមិនត្រូវបានគេចង់បាន នោះអ្នកប្រើប្រាស់អាចបញ្ជាក់ជាជម្រើសពេលវេលានៃការប៉ះពាល់ដោយដៃ និងទទួលបានការកំណត់។ ជម្រើសនៃការប៉ះពាល់ និងទទួលបានកម្រិតខ្ពស់បន្ថែមទៀតមាននៅលើទំព័រ 'ការកំណត់កម្រិតការប៉ះពាល់ដោយស្វ័យប្រវត្តិ និងទទួលបានកម្រិតខ្ពស់' (សូមមើលផ្នែកទី 9.10)។
9.4.4 ការត្រួតពិនិត្យតុល្យភាពពណ៌ស
Ruby គាំទ្រតុល្យភាពពណ៌សដោយស្វ័យប្រវត្តិ ឬដោយដៃ។ កត្តាតុល្យភាពពណ៌ក្រហម និងពណ៌ខៀវអាចត្រូវបានគ្រប់គ្រង។ មុខងារនេះអាចត្រូវបានកំណត់រចនាសម្ព័ន្ធនៅក្នុងតំបន់ 'ការគ្រប់គ្រងតុល្យភាពពណ៌ស' ។ នៅក្នុងរបៀបតុល្យភាពពណ៌សលំនាំដើម `ស្វ័យប្រវត្តិ (ពិភពពណ៌ប្រផេះ)` ការកំណត់តុល្យភាពឆានែលពណ៌ត្រូវបានកែតម្រូវតាមពេលវេលាជាក់ស្តែង ដោយផ្អែកលើការប៉ាន់ស្មានពណ៌នៃពន្លឺពីទិន្នន័យរូបភាព។ នៅក្នុងរបៀបតុល្យភាពពណ៌ស 'ដោយដៃ' ក្បួនដោះស្រាយត្រូវបានបិទ ហើយពណ៌ក្រហម និង

24

9.5 ការកំណត់បណ្តាញ

9 ការកំណត់រចនាសម្ព័ន្ធ

រូបភាពទី 16៖ រូបថតអេក្រង់នៃទំព័រកំណត់រចនាសម្ព័ន្ធសម្រាប់ការកំណត់បណ្តាញ។
កត្តាតុល្យភាពពណ៌ខៀវអាចត្រូវបានកែតម្រូវដោយដៃ។ កត្តាសមតុល្យដែលមានប្រសិទ្ធភាពនាពេលបច្ចុប្បន្នក៏ត្រូវបានបង្ហាញនៅក្នុងតំបន់ផងដែរ។
9.5 ការកំណត់បណ្តាញ
ទំព័រ 'ការកំណត់បណ្តាញ' ដែលត្រូវបានបង្ហាញក្នុងរូបភាពទី 16 ត្រូវបានប្រើសម្រាប់កំណត់រចនាសម្ព័ន្ធប៉ារ៉ាម៉ែត្រដែលទាក់ទងនឹងបណ្តាញទាំងអស់។ Ruby អាចសួរការកំណត់រចនាសម្ព័ន្ធបណ្តាញដោយស្វ័យប្រវត្តិតាមរយៈសំណើអតិថិជន DHCP ដែលត្រូវបានបើកតាមលំនាំដើមដើម្បីជួយប្តូររវាងការដំឡើងបណ្តាញដែលមានស្រាប់។ ឧបករណ៍ Ruby នៅក្នុងបណ្តាញដែលកំណត់ការកំណត់ IP តាមរយៈ DHCP ត្រូវបានរកឃើញយ៉ាងងាយស្រួល និងចូលប្រើតាមរយៈ API ស្វែងរកឧបករណ៍ និងឧបករណ៍ប្រើប្រាស់ NVCom (ផ្នែក 11.1) ផងដែរ។ ប្រសិនបើគ្មានម៉ាស៊ីនមេ DHCP មានវត្តមានទេ Ruby ប្រើការកំណត់ IP ឋិតិវន្តរបស់វាជាការជំនួស។
ការគាំទ្រម៉ាស៊ីនភ្ញៀវ DHCP អាចត្រូវបានបិទ ប្រសិនបើការកំណត់ IP ថេរត្រូវបានគេចង់បាន ហើយឧបករណ៍នឹងមិនត្រូវបានប្តូររវាងបណ្តាញផ្សេងៗគ្នាទេ។ ក្នុងករណីនេះការកំណត់ IP នៅក្នុងផ្នែកនេះត្រូវបានប្រើជាតម្លៃឋិតិវន្ត។
Ruby ក៏មានម៉ាស៊ីនមេ DHCP ជំនួសផងដែរ។ វាត្រូវបានបើកតាមលំនាំដើម ប៉ុន្តែបានបើកដំណើរការតែនៅពេលដែលសំណើអតិថិជន DHCP ពីមុនបានបរាជ័យ។ នេះមានន័យថាគ្មានម៉ាស៊ីនមេ DHCP ណាមួយត្រូវបានបើកដំណើរការទេ ប្រសិនបើការគាំទ្រអតិថិជន DHCP ត្រូវបានបិទ ដើម្បីធានាថា Ruby នឹងមិនប្រកួតប្រជែងជាមួយម៉ាស៊ីនមេ DHCP ដែលមានស្រាប់នោះទេ។ ម៉ាស៊ីនមេ Ruby DHCP ប្រើការកំណត់អាសយដ្ឋាន IP ជាមូលដ្ឋាន។ ជួរជួលគឺតែងតែស្ថិតនៅក្នុងបណ្តាញរង /24 នៃអាសយដ្ឋាន IP ។
នៅក្នុងផ្នែក 'ការកំណត់ IP' អ្នកអាចបិទ ឬបើកដំណើរការ DHCP compo-
25

9.6 ឆានែលទិន្នផល

9 ការកំណត់រចនាសម្ព័ន្ធ

nents និងបញ្ជាក់អាសយដ្ឋាន IP របាំងបណ្ដាញរង និងអាសយដ្ឋានច្រកផ្លូវ ដែលត្រូវបានប្រើជាការកំណត់រចនាសម្ព័ន្ធឋិតិវន្ត ឬការកំណត់រចនាសម្ព័ន្ធធ្លាក់ចុះ អាស្រ័យលើការកំណត់ DHCP ។ នៅពេលផ្លាស់ប្តូរការកំណត់ IP សូមប្រាកដថាកុំព្យូទ័ររបស់អ្នកស្ថិតនៅក្នុងបណ្តាញរងដូចគ្នា ឬមានរ៉ោតទ័រច្រកផ្លូវដែលទិន្នន័យអាចត្រូវបានផ្ទេររវាងបណ្តាញរងទាំងពីរ។ បើមិនដូច្នេះទេ អ្នកនឹងមិនអាចចូលប្រើបានឡើយ។ web ចំណុចប្រទាក់ទៀតទេ ហើយអ្នកប្រហែលជាត្រូវបង្ខំឱ្យធ្វើការកំណត់កម្មវិធីបង្កប់ឡើងវិញ (សូមមើលផ្នែកទី 6.4)។
នៅក្នុងផ្នែក 'ពិធីការបណ្តាញ' អ្នកអាចជ្រើសរើសពិធីការបណ្តាញមូលដ្ឋានដែលនឹងត្រូវប្រើសម្រាប់ការផ្តល់លទ្ធផលគណនាទៅកុំព្យូទ័រអតិថិជន។ ជម្រើសដែលអាចមានគឺ TCP និង UDP ។ ដោយសារទិន្នន័យពេលវេលាពិតដែលមានកម្រិតបញ្ជូនខ្ពស់ យើងសូមណែនាំឱ្យប្រើ UDP ។
ដើម្បីទទួលបានដំណើរការល្អបំផុត ការគាំទ្រស៊ុម jumbo គួរតែត្រូវបានធ្វើឱ្យសកម្មនៅក្នុងផ្នែក 'jumbo frames' ។ ទោះយ៉ាងណាក៏ដោយ មុននឹងធ្វើដូច្នេះ អ្នកត្រូវតែប្រាកដថា ការគាំទ្រស៊ុម jumbo ក៏ត្រូវបានបើកសម្រាប់ចំណុចប្រទាក់បណ្តាញរបស់កុំព្យូទ័រម៉ាស៊ីនភ្ញៀវរបស់អ្នក។ ព័ត៌មានលម្អិតអំពីរបៀបបើកការគាំទ្រស៊ុម jumbo នៅលើកុំព្យូទ័ររបស់អ្នកអាចរកបាននៅក្នុងផ្នែកទី 8.2 នៅទំព័រ 18 ។ សម្រាប់កុំព្យូទ័រម៉ាស៊ីនភ្ញៀវលីនុច ការកំណត់ jumbo frames (MTU) ត្រូវបានអនុវត្តដោយស្វ័យប្រវត្តិនៅពេលទទួលបានការកំណត់ពីម៉ាស៊ីនមេ Ruby DHCP សកម្ម។ សូមចំណាំថាក្នុងករណីនេះការផ្លាស់ប្តូរទម្រង់ Ruby Jumbo Frames ឬទំហំ MTU ត្រូវការការជួល DHCP ថ្មីដើម្បីផ្សព្វផ្សាយការកំណត់ (ឧ. ដោយដោះដោត និងបញ្ចូលខ្សែបណ្តាញឡើងវិញ)។
9.6 ឆានែលទិន្នផល
ឆានែលទិន្នផលសកម្មអាចត្រូវបានកំណត់រចនាសម្ព័ន្ធនៅលើទំព័រ 'ឆានែលលទ្ធផល' ។ ឆានែលលទ្ធផលគឺជាស្ទ្រីមទិន្នន័យរូបភាពដែលត្រូវបានបញ្ជូនតាមបណ្តាញ។ ឆានែលលទ្ធផលខាងក្រោមអាចរកបាន៖
· លទ្ធផលកាមេរ៉ាខាងឆ្វេង
· ភាពខុសគ្នានៃទិន្នផល
· លទ្ធផលកាមេរ៉ាត្រឹមត្រូវ។
· លទ្ធផលកាមេរ៉ាពណ៌
ប្រសិនបើរបៀបប្រតិបត្តិការ (សូមមើលផ្នែកទី 9.9) ត្រូវបានកំណត់ទៅជាការផ្គូផ្គងស្តេរ៉េអូ (លំនាំដើម) ឬកែតម្រូវ នោះទិន្នន័យរូបភាពនៃឆានែលលទ្ធផលទាំងអស់ត្រូវបានកែតម្រូវ (សូមមើលផ្នែក 7.1 សម្រាប់ព័ត៌មានលម្អិត)។ ប្រសិនបើរបៀបប្រតិបត្តិការត្រូវបានកំណត់ឱ្យឆ្លងកាត់ នោះរូបភាពកាមេរ៉ានឹងត្រូវបានបញ្ជូនដោយគ្មានការកែប្រែ។
ដូចដែលបានពិពណ៌នានៅក្នុងផ្នែកទី 7.3 រូបភាពនៃកាមេរ៉ាពណ៌អាចត្រូវបានព្យាករទៅ view នៃកាមេរ៉ាខាងឆ្វេង។ ការព្យាករនេះអាចត្រូវបានធ្វើឱ្យសកម្មដោយជ្រើសរើសជម្រើសដែលត្រូវគ្នាសម្រាប់ប៉ារ៉ាម៉ែត្រ 'របៀបលទ្ធផលពណ៌' ។
សូមចំណាំថាការបង្កើនចំនួនឆានែលទិន្នផលសកម្មក៏បង្កើនការផ្ទុកបណ្តាញហើយអាចបណ្តាលឱ្យមានអត្រាស៊ុមធ្លាក់ចុះ។ លក្ខណៈបច្ចេកទេសនៃការអនុវត្តទាំងអស់ដែលបានផ្ដល់ឱ្យក្នុងឯកសារនេះសំដៅទៅលើការកំណត់រចនាសម្ព័ន្ធដែលមានតែឆានែលទិន្នផលពណ៌ និងភាពខុសគ្នាប៉ុណ្ណោះដែលត្រូវបានធ្វើឱ្យសកម្ម។
26

9.7 ការថែទាំ

9 ការកំណត់រចនាសម្ព័ន្ធ

រូបភាពទី 17៖ រូបថតអេក្រង់នៃទំព័រកំណត់រចនាសម្ព័ន្ធឆានែលលទ្ធផល។
9.7 ការថែទាំ
នៅលើទំព័រថែទាំដែលបង្ហាញក្នុងរូបភាពទី 18 អ្នកអាចទាញយក ក file ដែលមានការកំណត់រចនាសម្ព័ន្ធឧបករណ៍បច្ចុប្បន្ន និងកំណត់ហេតុប្រព័ន្ធ ដោយចុចតំណទាញយក។ ក្នុងករណីមានបញ្ហាបច្ចេកទេស សូមបញ្ចូលចំណុចនេះ។ file នៅក្នុងសំណើជំនួយរបស់អ្នក ការកំណត់រចនាសម្ព័ន្ធឧបករណ៍របស់អ្នកអាចត្រូវបានផលិតឡើងវិញ ហើយបញ្ហាប្រព័ន្ធអាចត្រូវបានស៊ើបអង្កេត។
ការកំណត់រចនាសម្ព័ន្ធដែលបានទាញយក file អាច​ត្រូវ​បាន​បង្ហោះ​ឡើង​វិញ​នៅ​ពេល​ក្រោយ។ នេះអនុញ្ញាតឱ្យមានការប្តូររហ័សរវាងការកំណត់រចនាសម្ព័ន្ធឧបករណ៍ផ្សេងៗ។ ដើម្បីបង្ហោះការកំណត់រចនាសម្ព័ន្ធ សូមជ្រើសរើសការកំណត់រចនាសម្ព័ន្ធ file ហើយចុចប៊ូតុងផ្ទុកឡើង។ សូម​ដឹង​ថា​ការ​ផ្ទុក​ឡើង​ការ​កំណត់​រចនាសម្ព័ន្ធ​ផ្សេង​គ្នា​អាច​នឹង​កែប្រែ​អាសយដ្ឋាន IP របស់​ឧបករណ៍។ ដើម្បី​ជៀសវាង​ស្ថានភាព​កំណត់​រចនាសម្ព័ន្ធ​មាន​បញ្ហា សូម​ផ្ទុក​ឡើង​តែ​ការ​កំណត់​រចនាសម្ព័ន្ធ​ដែល​ត្រូវ​បាន​ទាញ​យក​ពី​មុន​តាម​រយៈ web ចំណុចប្រទាក់។
ប្រសិនបើអ្នកកំពុងជួបប្រទះបញ្ហាជាមួយនឹងការកំណត់រចនាសម្ព័ន្ធឧបករណ៍បច្ចុប្បន្នរបស់អ្នក អ្នកអាចកំណត់ការកំណត់រចនាសម្ព័ន្ធទាំងអស់ឡើងវិញទៅលំនាំដើមរបស់រោងចក្រ ដោយចុចប៊ូតុងកំណត់ឡើងវិញ។ សូមចំណាំថាវាក៏នឹងកំណត់ការកំណត់បណ្តាញឡើងវិញផងដែរ ដែលអាចនាំឱ្យមានការផ្លាស់ប្តូរអាសយដ្ឋាន IP របស់ Ruby ។
ប្រសិនបើ Ruby បង្ហាញសញ្ញានៃអាកប្បកិរិយាខុស វាអាចទៅរួចក្នុងការចាប់ផ្ដើមឧបករណ៍ឡើងវិញដោយចុចប៊ូតុង 'ចាប់ផ្ដើមឡើងវិញឥឡូវនេះ' ។ វានឹងចំណាយពេលជាច្រើនវិនាទីរហូតដល់ការចាប់ផ្ដើមឡើងវិញត្រូវបានបញ្ចប់ ហើយ Ruby កំពុងផ្តល់ទិន្នន័យវាស់វែងម្តងទៀត។ សូម​ប្រើ​មុខងារ​នេះ​ជា​ជម្រើស​ជំនួស​ទៅ​នឹង​វដ្ដ​ថាមពល ប្រសិនបើ​ឧបករណ៍​មិន​អាច​មាន
27

9.8 ការក្រិតតាមខ្នាត

9 ការកំណត់រចនាសម្ព័ន្ធ

រូបភាពទី 18៖ រូបថតអេក្រង់នៃទំព័រថែទាំការកំណត់រចនាសម្ព័ន្ធ។
ចូលបានយ៉ាងងាយស្រួល។ ទំព័រថែទាំបន្ថែមទៀតអនុញ្ញាតឱ្យអ្នកធ្វើបច្ចុប្បន្នភាពកម្មវិធីបង្កប់។ ប្រើ
មុខងារនេះសម្រាប់តែកម្មវិធីបង្កប់ប៉ុណ្ណោះ។ files ដែលត្រូវបានចេញផ្សាយជាផ្លូវការដោយ Nerian Vision Technologies ។ ដើម្បីធ្វើការអាប់ដេតកម្មវិធីបង្កប់ សូមជ្រើសរើសកម្មវិធីបង្កប់ដែលចង់បាន file ហើយចុចប៊ូតុងអាប់ដេត។ ដំណើរការអាប់ដេតនឹងចំណាយពេលច្រើនវិនាទី។ កុំដកឧបករណ៍ ផ្ទុកទំព័រថែទាំឡើងវិញ ឬចុចប៊ូតុងអាប់ដេតឡើងវិញ ខណៈពេលកំពុងធ្វើបច្ចុប្បន្នភាពកម្មវិធីបង្កប់។ បើមិនដូច្នោះទេ វាអាចនាំទៅដល់ស្ថានភាពកម្មវិធីបង្កប់ដែលខូច។ នៅពេលដែលការអាប់ដេតត្រូវបានបញ្ចប់ ឧបករណ៍នឹងដំណើរការឡើងវិញដោយស្វ័យប្រវត្តិជាមួយនឹងកំណែកម្មវិធីបង្កប់ថ្មី។ ការកំណត់រចនាសម្ព័ន្ធឧបករណ៍ត្រូវបានរក្សាទុកកំឡុងពេលអាប់ដេតកម្មវិធីបង្កប់ ប៉ុន្តែការធ្វើបច្ចុប្បន្នភាពមួយចំនួនអាចតម្រូវឱ្យអ្នកកែតម្រូវការកំណត់ជាក់លាក់នៅពេលក្រោយ។
9.8 ការក្រិតតាមខ្នាត
Ruby ត្រូវបានដឹកជញ្ជូនជាមុន ហើយការក្រិតតាមខ្នាតរបស់អ្នកប្រើជាធម្មតាមិនត្រូវបានទាមទារពេញមួយជីវិតរបស់ឧបករណ៍នោះទេ។ ទោះជាយ៉ាងណាក៏ដោយ ប្រសិនបើអ្នកជួបប្រទះនឹងការថយចុះនៃគុណភាពរង្វាស់ និងដង់ស៊ីតេ អ្នកអាចកែតម្រូវសម្រាប់ការកែតម្រូវអុបទិកដែលមានសក្តានុពលដោយធ្វើការក្រិតតាមខ្នាតឡើងវិញ។ ក្នុងករណីនេះទំព័រក្រិតដែលបង្ហាញក្នុងរូបភាពទី 19 នឹងត្រូវប្រើ។
28

9.8 ការក្រិតតាមខ្នាត

9 ការកំណត់រចនាសម្ព័ន្ធ

រូបភាពទី 19៖ រូបថតអេក្រង់នៃទំព័រកំណត់រចនាសម្ព័ន្ធសម្រាប់ការក្រិតតាមខ្នាតកាមេរ៉ា។
9.8.1 ក្តារក្រិត
អ្នកត្រូវការក្តារក្រិតដែលជាបន្ទះសំប៉ែតដែលមានលំនាំក្រិតដែលអាចមើលឃើញនៅម្ខាង។ លំនាំដែលប្រើដោយ Ruby មានក្រឡាចត្រង្គ asymmetric នៃរង្វង់ខ្មៅនៅលើផ្ទៃខាងក្រោយពណ៌ស ដូចបង្ហាញក្នុងរូបភាពទី 20 ។
នៅពេលបើកទំព័រក្រិតតាមខ្នាត ជាដំបូងអ្នកនឹងត្រូវបញ្ជាក់ទំហំនៃក្តារក្រិតដែលអ្នកនឹងប្រើក្នុងដំណើរការក្រិត។ សូមប្រាកដថាជ្រើសរើសទំហំត្រឹមត្រូវ ព្រោះបើមិនដូច្នេះទេ លទ្ធផលក្រិតតាមខ្នាតមិនអាចប្រើសម្រាប់ការស្ថាបនាឡើងវិញ 3D ជាមួយនឹងមាត្រដ្ឋានម៉ែត្រត្រឹមត្រូវទេ (សូមមើលផ្នែកទី 7.2)។
គំរូអាចទាញយកដោយផ្ទាល់បង្កើតទំព័រនេះ។ គ្រាន់តែជ្រើសរើសទំហំលំនាំដែលចង់បាននៅក្នុងបញ្ជីទម្លាក់ចុះ 'ក្តារក្រិត' ហើយចុចលើតំណទាញយក។
ប្រសិនបើអ្នកត្រូវការក្តារក្រិតតាមខ្នាតដែលមានទំហំផ្ទាល់ខ្លួន នោះអ្នកអាចជ្រើសរើសផ្ទាល់ខ្លួនពីបញ្ជីទម្លាក់ចុះ 'ក្តារក្រិត'។ វាអនុញ្ញាតឱ្យអ្នកបញ្ចូលព័ត៌មានលម្អិតនៃក្តារក្រិតដោយដៃ។ វិមាត្រទីមួយនៃទំហំលំនាំគឺជាចំនួនរង្វង់ក្នុងជួរឈរក្រឡាចត្រង្គមួយ។ លេខនេះត្រូវតែស្មើគ្នាសម្រាប់ជួរឈរទាំងអស់នៃក្រឡាចត្រង្គរង្វង់។
ចំនួនរង្វង់ក្នុងមួយជួរត្រូវបានអនុញ្ញាតឱ្យប្រែប្រួលដោយ 1 រវាងជួរសេស និងគូ។ វិមាត្រទីពីរគឺដូច្នេះផលបូកនៃរង្វង់ក្នុងជួរពីរជាប់គ្នា។ លំនាំក្រិតលំនាំដើមដែលអាចទាញយកបានទាំងអស់មានទំហំ 4 × 11 ។
ប៉ារ៉ាម៉ែត្រចុងក្រោយដែលអ្នកត្រូវបញ្ចូលនៅពេលប្រើការក្រិតតាមខ្នាតផ្ទាល់ខ្លួន
29

9.8 ការក្រិតតាមខ្នាត

9 ការកំណត់រចនាសម្ព័ន្ធ

5 សង់ទីម៉ែត្រ 2 អ៊ីញ

ទំហំ 4 x 11; គម្លាតរង្វង់: 2.0 សង់ទីម៉ែត្រ; អង្កត់ផ្ចិតរង្វង់: 1.5 សង់ទីម៉ែត្រ; nerian.com

រូបភាពទី 20: ក្តារក្រិតដែលប្រើដោយ Ruby ។
បន្ទះគឺជាគម្លាតរង្វង់។ នេះគឺជាចំងាយរវាងចំណុចកណ្តាលនៃរង្វង់ជិតខាងពីរ។ ចម្ងាយត្រូវតែស្មើគ្នាក្នុងទិសផ្ដេក និងបញ្ឈរសម្រាប់រង្វង់ទាំងអស់។
នៅពេលដែលទំហំក្តារត្រឹមត្រូវត្រូវបានបញ្ជាក់ សូមចុចលើប៊ូតុងបន្ត ដើម្បីបន្តដំណើរការក្រិតតាមខ្នាត។
9.8.2 ការរឹតបន្តឹងទំហំរូបភាពសម្រាប់ការក្រិតតាមខ្នាត
តាមលំនាំដើម ដំណើរការក្រិតតាមខ្នាតនឹងដំណើរការលើផ្ទៃឧបករណ៍ចាប់សញ្ញាពេញលេញ ជាមួយនឹងទំហំរូបភាពអតិបរមាដែលមានសុពលភាពសម្រាប់ទម្រង់រូបភាពសកម្មបច្ចុប្បន្ន និងការកំណត់ការទិញ។ វាត្រូវបានណែនាំសម្រាប់ការដំឡើងភាគច្រើន ដោយសារតំបន់តូចជាងនៃការចាប់អារម្មណ៍អាចត្រូវបានជ្រើសរើសនៅពេលណាមួយបន្ទាប់ពីការក្រិតតាមខ្នាត (សូមមើលផ្នែកទី 9.15)។ សម្រាប់ការរៀបចំពិសេស ឧample ប្រសិនបើរង្វង់រូបភាពនៃកែវថតមានទំហំតូចជាងផ្ទៃឧបករណ៍ចាប់សញ្ញារូបភាព នោះចាំបាច់ត្រូវដាក់កម្រិតតំបន់ឧបករណ៍ចាប់សញ្ញាដែលពាក់ព័ន្ធ មុនពេលការក្រិតតាមខ្នាតដំបូង។
ដោយចុចប៊ូតុង 'រឹតបន្តឹងទៅបង្អួច' នៅផ្នែកខាងក្រោមនៃ 'កាមេរ៉ាមុន។view` ផ្ទៃ ស៊ុមត្រួតលើកណ្តាលត្រូវបានបង្ហាញ ដែលអាចផ្លាស់ប្តូរទំហំដោយការអូស។ ប្រសិនបើបានអនុវត្ត ការក្រិតតាមខ្នាតនឹងប្តូរទៅរបៀបតំបន់ដែលមានឧបសគ្គ។ ការក្រិតតាមខ្នាតអាចត្រូវបានត្រលប់ទៅប្រតិបត្តិការលំនាំដើមវិញដោយចុចប៊ូតុង 'កំណត់ឡើងវិញទៅជាគុណភាពបង្ហាញពេញលេញ' ។
នៅពេលដែលដំណើរការក្រិតតាមខ្នាតត្រូវបានបញ្ចប់ដោយជោគជ័យជាមួយនឹងតំបន់ដែលមានកំហិត វានឹងកាត់បន្ថយទំហំទិន្នផលលំនាំដើម (និងទំហំអតិបរមាដែលអាចរកបានក្នុងតំបន់នៃការចាប់អារម្មណ៍) ពីទំហំរូបភាពអតិបរមាទៅរូបភាពដែលបានជ្រើសរើស ប្រកបដោយប្រសិទ្ធភាពដោយមិនរាប់បញ្ចូលតំបន់ណាមួយដែលនៅខាងក្រៅ។ តំបន់ឧបករណ៍ចាប់សញ្ញាដែលបានក្រិតតាមខ្នាត។
30

9.8 ការក្រិតតាមខ្នាត

9 ការកំណត់រចនាសម្ព័ន្ធ

9.8.3 ស៊ុមការក្រិតតាមខ្នាតថត
ការផ្សាយបន្តផ្ទាល់មុនview នៃឧបករណ៍ចាប់សញ្ញារូបភាពទាំងអស់ត្រូវបានបង្ហាញនៅក្នុង `camera preview' តំបន់។ លុះត្រាតែតំបន់នៃការក្រិតតាមខ្នាតត្រូវបានរឹតបន្តឹងដូចដែលបានរៀបរាប់ខាងលើ គុណភាពបង្ហាញរបស់កាមេរ៉ាអំឡុងពេលធ្វើការក្រិតតាមខ្នាតត្រូវបានកំណត់ទៅទំហំរូបភាពត្រឹមត្រូវអតិបរមាសម្រាប់ទម្រង់រូបភាពសកម្មបច្ចុប្បន្ន និងការកំណត់ការទិញ។ សូមប្រាកដថាបន្ទះក្រិតតាមខ្នាតអាចមើលឃើញយ៉ាងពេញលេញនៅក្នុងរូបភាពកាមេរ៉ាទាំងអស់ ហើយបន្ទាប់មកចុចប៊ូតុង 'ចាប់យកស៊ុមតែមួយ' នៅក្នុងផ្នែកគ្រប់គ្រង។ ធ្វើដំណើរការនេះម្តងទៀតច្រើនដង ខណៈពេលដែលផ្លាស់ទីកាមេរ៉ា ឬក្តារក្រិត។
ក្តារក្រិតត្រូវតែកត់ត្រានៅទីតាំង និងទិសដៅផ្សេងៗគ្នាជាច្រើន។ ការ​លាប​ពណ៌​បៃតង​នឹង​ត្រូវ​បាន​បង្ហាញ​នៅ​មុន​view បង្អួចសម្រាប់ទីតាំងទាំងអស់ ក្រុមប្រឹក្សាភិបាលត្រូវបានរកឃើញពីមុនមក។ អ្នក​គួរ​តែ​ផ្លាស់​ប្តូរ​ចំងាយ​របស់​ក្តារ​និង​ធ្វើ​ឱ្យ​ប្រាកដ​ថា​អ្នក​គ្រប​ដ​ណ្ត​ប់​ភាគ​ច្រើន​នៃ​វាល​នៃ view នៃកាមេរ៉ាទាំងអស់។
កាលណាអ្នកថតស៊ុមកាន់តែច្រើន ការក្រិតតាមខ្នាតដែលបានគណនានឹងកាន់តែត្រឹមត្រូវ។ ទោះយ៉ាងណាក៏ដោយ ស៊ុមកាន់តែច្រើនក៏បណ្តាលឱ្យការគណនាប៉ារ៉ាម៉ែត្រនៃការក្រិតតាមខ្នាតត្រូវចំណាយពេលយូរ។ Ruby គាំទ្រការថតរហូតដល់ 40 ស៊ុមក្រិត។ យើងសូមណែនាំឱ្យប្រើស៊ុមក្រិតយ៉ាងហោចណាស់ 20 ដើម្បីទទួលបានលទ្ធផលត្រឹមត្រូវ។
ការ​ថត​ស៊ុម​ក្រិត​អាច​ត្រូវ​បាន​សម្រួល​ដោយ​ការ​បើក​ដំណើរការ​របៀប 'ការ​ថត​ដោយ​ស្វ័យ​ប្រវត្តិ'។ នៅក្នុងរបៀបនេះ ស៊ុមការក្រិតតាមខ្នាតថ្មីត្រូវបានកត់ត្រាក្នុងចន្លោះពេលនៃការចាប់យក។ អ្នកអាចបញ្ចូលចន្លោះពេលដែលអ្នកចង់បាននៅក្នុងផ្នែកចាប់យកដោយស្វ័យប្រវត្តិ ហើយបន្ទាប់មកចុចប៊ូតុង 'ចាប់ផ្តើមចាប់យកដោយស្វ័យប្រវត្តិ' ។ ប្រសិនបើចង់បាន សំឡេងដែលអាចស្តាប់បានអាចចាក់បាន ដើម្បីជាសញ្ញានៃការរាប់ថយក្រោយ និងការថតស៊ុមថ្មី។ របៀបចាប់យកដោយស្វ័យប្រវត្តិអាចត្រូវបានបញ្ឈប់ដោយចុចប៊ូតុង 'បញ្ឈប់ការចាប់យកដោយស្វ័យប្រវត្តិ' ។
មុនតូចមួយview នៃស៊ុមក្រិតតាមខ្នាតដែលបានចាប់យកនីមួយៗត្រូវបានបន្ថែមទៅផ្នែក 'ស៊ុមដែលបានចាប់យក' ។ ស៊ុមត្រូវបានត្រួតលើគ្នាជាមួយនឹងទីតាំងដែលបានរកឃើញនៃរង្វង់ក្តារក្រិត។ អ្នកអាចចុចមុនណាមួយ។view រូបភាព​ដើម្បី​មើល​ស៊ុម​ក្រិត​តាម​កម្រិត​ភាព​ច្បាស់​ពេញ​របស់​វា។ អតីតample សម្រាប់ស៊ុមក្រិតតាមខ្នាតដែលមានបន្ទះក្រិតដែលបានរកឃើញត្រឹមត្រូវត្រូវបានបង្ហាញក្នុងរូបភាពទី 21។ ប្រសិនបើបន្ទះក្រិតតាមខ្នាតមិនត្រូវបានរកឃើញត្រឹមត្រូវ ឬប្រសិនបើអ្នកមិនសប្បាយចិត្តនឹងគុណភាពនៃស៊ុមក្រិតនោះ អ្នកអាចលុបវាដោយចុចលើសញ្ញា × .
9.8.4 អនុវត្តការក្រិតតាមខ្នាត
នៅពេលដែលអ្នកបានកត់ត្រាចំនួនស៊ុមក្រិតតាមខ្នាតគ្រប់គ្រាន់ហើយ អ្នកអាចចាប់ផ្តើមដំណើរការក្រិតតាមខ្នាតដោយចុចប៊ូតុងក្រិតតាមខ្នាតនៅក្នុងផ្នែកបញ្ជា។ ពេលវេលាដែលត្រូវការសម្រាប់ការក្រិតតាមខ្នាតកាមេរ៉ាអាស្រ័យលើចំនួនស៊ុមក្រិតដែលអ្នកបានថត។ ការក្រិតតាមខ្នាតជាធម្មតានឹងចំណាយពេលច្រើននាទីដើម្បីបញ្ចប់។ ប្រសិនបើការក្រិតតាមខ្នាតបានជោគជ័យ នោះអ្នកនឹងត្រូវប្តូរទិសភ្លាមៗទៅ 'review ទំព័រ calibration ។
ការក្រិតតាមខ្នាតនឹងបរាជ័យ ប្រសិនបើការផ្លាស់ទីលំនៅរបស់ភីកសែលបញ្ឈរ ឬផ្ដេកដែលបានគណនាលើសពីជួរដែលអនុញ្ញាតសម្រាប់ចំណុចរូបភាពណាមួយ។ មូលហេតុទូទៅបំផុតសម្រាប់ការបរាជ័យនៃការក្រិតតាមខ្នាតគឺ៖
· ចំនួនស៊ុមក្រិតមិនគ្រប់គ្រាន់។
31

9.9 ការកំណត់ដំណើរការ

9 ការកំណត់រចនាសម្ព័ន្ធ

រូបភាពទី ១៣៖ ឧample calibration frame ជាមួយនឹងបន្ទះក្រិតដែលបានរកឃើញ។
·ការគ្របដណ្តប់មិនល្អនៃវាលនៃ view ជាមួយនឹងក្តារក្រិត។
· កញ្ចក់ជាមួយនឹងការបង្ខូចទ្រង់ទ្រាយធរណីមាត្រខ្លាំង។
· កញ្ចក់ដែលមានប្រវែងប្រសព្វមិនស្មើគ្នា។
· ស៊ុមជាមួយនឹងការរកឃើញកំហុសក្តារក្រិតតាមខ្នាត។
ប្រសិនបើ​ការ​ក្រិត​មិន​ដំណើរការ សូម​ដោះស្រាយ​មូលហេតុ​នៃ​កំហុស ហើយ​ធ្វើ​ដំណើរការ​ក្រិត​ម្តងទៀត។ ប្រសិនបើ​មូលហេតុ​នៃ​កំហុស​គឺ​ស៊ុម​ក្រិត​ខុស​មួយ​ឬ​ច្រើន អ្នក​អាច​លុប​ស៊ុម​ទាំងនោះ​ហើយ​ចុច​ប៊ូតុង​ក្រិត​ឡើងវិញ។ ដូចគ្នានេះដែរ ក្នុងករណីមានស៊ុមក្រិតតូចពេក អ្នកអាចកត់ត្រាស៊ុមបន្ថែម ហើយចាប់ផ្តើមការគណនាក្រិតឡើងវិញ។
9.9 ការកំណត់ដំណើរការ
9.9.1 របៀបប្រតិបត្តិការ
ប៉ារ៉ាម៉ែត្រដំណើរការសំខាន់ៗអាចត្រូវបានផ្លាស់ប្តូរនៅលើទំព័រ 'ការកំណត់ដំណើរការ' ដែលត្រូវបានបង្ហាញក្នុងរូបភាពទី 22 ។ ជម្រើសដែលពាក់ព័ន្ធបំផុតគឺរបៀបប្រតិបត្តិការ ដែលអាចកំណត់ទៅជាតម្លៃមួយក្នុងចំណោមតម្លៃខាងក្រោម៖
ឆ្លងកាត់៖ នៅក្នុងរបៀបនេះ Ruby បញ្ជូនបន្តរូបភាពនៃឧបករណ៍ចាប់សញ្ញារូបភាពទាំងអស់ដោយគ្មានការកែប្រែ។ របៀបនេះត្រូវបានបម្រុងទុកសម្រាប់ reviewទិន្នន័យរូបភាព មុនពេលដំណើរការណាមួយត្រូវបានអនុវត្ត។
កែតម្រូវ៖ នៅក្នុងរបៀបនេះ Ruby បញ្ជូនរូបភាពដែលបានកែតម្រូវនៃឧបករណ៍ចាប់សញ្ញារូបភាពទាំងអស់។ របៀបនេះត្រូវបានបម្រុងទុកសម្រាប់ផ្ទៀងផ្ទាត់ភាពត្រឹមត្រូវនៃការកែតម្រូវរូបភាព។
ការផ្គូផ្គងស្តេរ៉េអូ៖ នេះជារបៀបលំនាំដើម ដែល Ruby ដំណើរការរូបភាពស្តេរ៉េអូពិតប្រាកដ (ការផ្គូផ្គងស្តេរ៉េអូ)។ Ruby បញ្ជូនផែនទីមិនស្មើគ្នា ហើយរូបភាពដែលបានកែតម្រូវអាស្រ័យលើការកំណត់បណ្តាញទិន្នផល។
32

9.9 ការកំណត់ដំណើរការ

9 ការកំណត់រចនាសម្ព័ន្ធ

រូបភាពទី 22៖ រូបថតអេក្រង់នៃទំព័រកំណត់រចនាសម្ព័ន្ធសម្រាប់ដំណើរការការកំណត់។
9.9.2 ការកំណត់ភាពខុសគ្នា
ប្រសិនបើរបៀបប្រតិបត្តិការត្រូវបានកំណត់ទៅការផ្គូផ្គងស្តេរ៉េអូ នោះ 'ការកំណត់ភាពមិនស្មើគ្នា' អនុញ្ញាតឱ្យកំណត់រចនាសម្ព័ន្ធនៃជួរភាពខុសគ្នាដែលត្រូវបានស្វែងរកដោយ Ruby ។ ជួរភាពខុសគ្នាប៉ះពាល់ដល់អត្រាស៊ុមដែលអាចសម្រេចបាន។ អត្រាស៊ុមគួរតែត្រូវបានកែសម្រួលនៅពេលដែលជួរភាពខុសគ្នាត្រូវបានផ្លាស់ប្តូរ (សូមមើលផ្នែកទី 3.3 នៅទំព័រ 5 សម្រាប់ការណែនាំ)។ សូម​ដឹង​ថា ការ​បង្កើន​ជួរ​ភាព​ខុស​គ្នា​នឹង​កាត់​បន្ថយ​ទំហំ​រូបភាព​អតិបរមា​ដែល​អាច​កំណត់​រចនាសម្ព័ន្ធ​បាន​ផង​ដែរ។
ជម្រើស 'ចំនួននៃភាពខុសគ្នា' បញ្ជាក់ចំនួនសរុបនៃភីកសែលដែលត្រូវបានស្វែងរកសម្រាប់ការឆ្លើយឆ្លង។ ជម្រើសនេះមានឥទ្ធិពលខ្ពស់លើដំណោះស្រាយជម្រៅ និងជួររង្វាស់ដែលគ្របដណ្តប់ (សូមមើលផ្នែកទី 7.2) ។ ការចាប់ផ្តើមនៃជួរភាពខុសគ្នាអាចត្រូវបានជ្រើសរើសតាមរយៈជម្រើស 'អុហ្វសិតភាពខុសគ្នា' ។ ជាធម្មតា តម្លៃ 0 ត្រូវបានគេចង់បានសម្រាប់អុហ្វសិត ដែលអនុញ្ញាតឱ្យមានការវាស់វែងជួររហូតដល់គ្មានកំណត់។ ប្រសិនបើចម្ងាយដែលអាចសង្កេតបាន ប្រាកដណាស់ថាមានកម្រិត នោះតម្លៃគម្លាតទាបនឹងមិនកើតឡើងទេ។ ក្នុងករណីនេះ គេអាចបង្កើនវិសមភាពអុហ្វសិត ដែលភាពខុសគ្នាទាបទាំងនេះមិនត្រូវបានគណនា។
9.9.3 ការកំណត់ Algorithm
ឥរិយាបថនៃក្បួនដោះស្រាយដំណើរការរូបភាពអាចត្រូវបានគ្រប់គ្រងតាមរយៈ 'ការកំណត់ក្បួនដោះស្រាយ' ។ ការកំណត់រចនាសម្ព័ន្ធលំនាំដើមត្រូវបានកំណត់ដោយប្រើវិធីសាស្រ្តរៀនម៉ាស៊ីន ហើយដូច្នេះវាគួរតែជាជម្រើសដ៏ល្អបំផុតសម្រាប់ការប្រើប្រាស់ភាគច្រើន
33

9.9 ការកំណត់ដំណើរការ

9 ការកំណត់រចនាសម្ព័ន្ធ

ករណី។ ទោះយ៉ាងណាក៏ដោយ ប៉ារ៉ាម៉ែត្រក្បួនដោះស្រាយទាំងអស់អាចត្រូវបានកែតម្រូវតាមរយៈ web ចំណុចប្រទាក់។ ប៉ារ៉ាម៉ែត្រខាងក្រោមគ្រប់គ្រងក្បួនដោះស្រាយការផ្គូផ្គងស្តេរ៉េអូ៖
ការពិន័យសម្រាប់ការផ្លាស់ប្តូរភាពខុសគ្នា (P1): ការពិន័យដែលត្រូវបានអនុវត្តចំពោះការផ្លាស់ប្តូរបន្តិចម្តង ៗ ។ តម្លៃធំបណ្តាលឱ្យការផ្លាស់ប្តូរវិសមភាពបន្តិចម្តង ៗ កើតឡើងតិចជាងមុនខណៈពេលដែលតម្លៃតូចមួយបណ្តាលឱ្យការផ្លាស់ប្តូរបន្តិចម្តង ៗ កើតឡើងញឹកញាប់ជាង។ តម្លៃផ្សេងគ្នាអាចត្រូវបានកំណត់រចនាសម្ព័ន្ធសម្រាប់ភីកសែលដែលស្ថិតនៅលើគែមរូបភាព (P1-edge) និងភីកសែលដែលមិនមាននៅលើគែម (P1-no-edge)។ តម្លៃទាំងនេះត្រូវតែតូចជាងតម្លៃសម្រាប់ P2 ។
ការផាកពិន័យចំពោះភាពមិនស្របគ្នានៃភាពខុសគ្នា (P2)៖ ការពិន័យដែលត្រូវបានអនុវត្តចំពោះភាពខុសគ្នាភ្លាមៗ។ តម្លៃធំបណ្តាលឱ្យភាពមិនស៊ីសង្វាក់គ្នាកើតឡើងតិចជាញឹកញាប់ ខណៈពេលដែលតម្លៃតូចមួយបណ្តាលឱ្យការមិនបន្តកើតឡើងញឹកញាប់ជាង។ តម្លៃផ្សេងគ្នាអាចត្រូវបានកំណត់រចនាសម្ព័ន្ធសម្រាប់ភីកសែលដែលស្ថិតនៅលើគែមរូបភាព (P2-edge) និងភីកសែលដែលមិនមាននៅលើគែម (P2-no-edge)។ តម្លៃទាំងនេះត្រូវតែធំជាងតម្លៃសម្រាប់ P1 ។
Ruby អនុវត្តក្បួនដោះស្រាយបង្កើនប្រសិទ្ធភាព ដើម្បីកែលម្អភាពត្រឹមត្រូវនៃផែនទីគម្លាតដែលបានគណនាទៅនឹងគុណភាពបង្ហាញរងភីកសែល។ ប្រសិនបើមានតែតំបន់តូចមួយនៃការចាប់អារម្មណ៍ (ROI) នៃរូបភាពបញ្ចូល / ផែនទីភាពមិនស្មើគ្នាគឺពាក់ព័ន្ធ នោះដំណើរការកែតម្រូវដោយស្វ័យប្រវត្តិនេះអាចត្រូវបានរឹតបន្តឹងចំពោះតែ ROI នេះប៉ុណ្ណោះ។ ក្នុងករណីនេះ គេគួរតែរំពឹងថានឹងមានរង្វាស់រងភីកសែលកាន់តែត្រឹមត្រូវនៅក្នុង ROI ។ ប៉ារ៉ាម៉ែត្រពាក់ព័ន្ធសម្រាប់ការរឹតបន្តឹង ROI ការលៃតម្រូវភីកសែលរងគឺ៖
លៃតម្រូវការបង្កើនប្រសិទ្ធភាពភីកសែលរងនៅលើ ROI៖ ប្រសិនបើបានបើក ការបង្កើនប្រសិទ្ធភាពភីកសែលរងត្រូវបានលៃតម្រូវលើតំបន់ដែលបានកំណត់ដោយប៉ារ៉ាម៉ែត្រជាបន្តបន្ទាប់ ជំនួសឱ្យរូបភាពទាំងមូល។
ទទឹង៖ ទទឹងគិតជាភីកសែលនៃតំបន់ចំណាប់អារម្មណ៍ (ROI) ដែលបានជ្រើសរើស។
កម្ពស់៖ កម្ពស់គិតជាភីកសែលនៃ ROI ដែលបានជ្រើសរើស។
អុហ្វសិត X៖ អុហ្វសិតផ្តេកនៃ ROI ទាក់ទងទៅនឹងមជ្ឈមណ្ឌលរូបភាព។
អុហ្វសិត Y៖ អុហ្វសិតបញ្ឈរនៃ ROI ទាក់ទងទៅនឹងមជ្ឈមណ្ឌលរូបភាព។
Ruby អនុវត្តវិធីសាស្រ្តជាច្រើនសម្រាប់ដំណើរការក្រោយដំណើរការផែនទីមិនស្មើគ្នាដែលបានគណនា។ វិធីសាស្ត្រក្រោយដំណើរការនីមួយៗអាចត្រូវបានធ្វើឱ្យសកម្ម ឬបិទដំណើរការជាលក្ខណៈបុគ្គល។ វិធីសាស្រ្តដែលមានគឺ៖
ភីកសែលស៊ុមរបាំង៖ ប្រសិនបើបានបើក ជម្រើសនេះសម្គាល់ភាពខុសគ្នាទាំងអស់ដែលនៅជិតព្រំដែននៃផ្ទៃរូបភាពដែលមើលឃើញថាមិនត្រឹមត្រូវ ដោយសារពួកវាមានភាពមិនច្បាស់លាស់ខ្ពស់។ នេះក៏រាប់បញ្ចូលទាំងភីកសែលទាំងអស់ផងដែរ ដែលមិនមានទិន្នន័យរូបភាពពិតប្រាកដទេ ដោយសារការបំរែបំរួលដែលបានអនុវត្តដោយការកែតម្រូវរូបភាព (សូមមើលផ្នែកទី 7.1)។

34

9.10 Advanced Auto Exposure និង Gain Settings 9 CONFIGURATION
ការត្រួតពិនិត្យភាពស៊ីសង្វាក់គ្នា៖ ប្រសិនបើបើកដំណើរការ ការផ្គូផ្គងស្តេរ៉េអូត្រូវបានអនុវត្តក្នុងទិសដៅដែលត្រូវគ្នាទាំងពីរពីឆ្វេងទៅស្តាំ និងពីស្តាំទៅឆ្វេង។ ភីកសែល​ដែល​គម្លាត​មិន​ស៊ីសង្វាក់​គ្នា​ត្រូវ​បាន​សម្គាល់​ថា​មិន​ត្រឹមត្រូវ។ ភាពប្រែប្រួលនៃការត្រួតពិនិត្យភាពស៊ីសង្វាក់គ្នាអាចត្រូវបានគ្រប់គ្រងតាមរយៈគ្រាប់រំកិល 'ភាពប្រែប្រួលនៃការត្រួតពិនិត្យភាពស៊ីសង្វាក់គ្នា' ។
ការត្រួតពិនិត្យភាពប្លែក៖ ប្រសិនបើបើកដំណើរការ ភីកសែលក្នុងផែនទីភាពមិនស្មើគ្នាត្រូវបានសម្គាល់ថាមិនត្រឹមត្រូវ ប្រសិនបើមិនមានដំណោះស្រាយតែមួយគត់គ្រប់គ្រាន់ទេ (ឧ. ភាពរសើបនៃការត្រួតពិនិត្យភាពប្លែកអាចត្រូវបានគ្រប់គ្រងតាមរយៈគ្រាប់រំកិល 'ភាពរសើបនៃការត្រួតពិនិត្យភាពឯកា'។
តម្រងវាយនភាព៖ ប្រសិនបើបើកដំណើរការ ភីកសែលដែលជាកម្មសិទ្ធិរបស់តំបន់រូបភាពដែលមានវាយនភាពតិចតួចត្រូវបានសម្គាល់ថាមិនត្រឹមត្រូវនៅក្នុងផែនទីភាពមិនស្មើគ្នា ដោយសារវាមានលទ្ធភាពខ្ពស់ដែលភីកសែលទាំងនេះមិនត្រូវគ្នា។ ភាពប្រែប្រួលនៃតម្រងនេះអាចត្រូវបានកែតម្រូវតាមរយៈគ្រាប់រំកិល 'ភាពប្រែប្រួលនៃតម្រងវាយនភាព' ។
Gap interpolation៖ ប្រសិនបើបានបើកដំណើរការ បំណះតូចៗនៃភាពខុសគ្នាមិនត្រឹមត្រូវ ដែលបណ្តាលមកពីតម្រងមុនមួយត្រូវបានបំពេញតាមរយៈការ interpolation ។
ការកាត់បន្ថយសំលេងរំខាន៖ ប្រសិនបើបើកដំណើរការ តម្រងរូបភាពត្រូវបានអនុវត្តចំពោះផែនទីភាពមិនស្មើគ្នា ដែលកាត់បន្ថយសំលេងរំខាន និងដកផ្នែកខាងក្រៅចេញ។
ការ​ធ្វើ​តម្រង Speckle ឡើងវិញ៖ សម្គាល់​បំណះ​ដាច់​ដោយ​ឡែក​តូចៗ​នៃ​ភាព​ខុស​គ្នា​ស្រដៀង​គ្នា​ថា​មិន​ត្រឹមត្រូវ។ ស្នាមប្រេះបែបនេះច្រើនតែជាលទ្ធផលនៃការប្រកួតដែលមានកំហុស។ ចំនួននៃការធ្វើម្តងទៀតបញ្ជាក់ថាតើតម្រងនឹងមានភាពឆេវឆាវយ៉ាងណាជាមួយនឹងការដកស្នាមប្រឡាក់ចេញ។ តម្លៃ 0 បិទតម្រង។
9.10 កម្រិតខ្ពស់នៃការបង្ហាញដោយស្វ័យប្រវត្តិ និងទទួលបានការកំណត់
ដើម្បីធានាបាននូវគុណភាពរូបភាពល្អបំផុត Ruby ផ្តល់នូវពេលវេលាបញ្ចេញពន្លឺដោយស្វ័យប្រវត្តិពេញលេញ និងទទួលបានការសម្របខ្លួនសម្រាប់ការផ្លាស់ប្តូរយ៉ាងឆាប់រហ័សនៃលក្ខខណ្ឌពន្លឺ ដែលជារឿយៗកើតឡើងនៅក្នុងសេណារីយ៉ូខាងក្រៅ។ អ្នកអាចធ្វើឱ្យសកម្ម និងអសកម្មមុខងារស្វ័យប្រវត្តិទាំងពីរដោយឯករាជ្យនៅលើទំព័រ auto exposure ដែលត្រូវបានបង្ហាញក្នុងរូបភាពទី 23 ។
9.10.1 ការប៉ះពាល់ និងទទួលបាន
របៀប៖ ជ្រើសរើសថាតើពេលវេលានៃការប៉ះពាល់ និង/ឬការកើនឡើងត្រូវបានកែតម្រូវដោយស្វ័យប្រវត្តិ។ នៅក្រោមកាលៈទេសៈធម្មតា 'ការប៉ះពាល់ដោយស្វ័យប្រវត្តិ និងទទួលបាន' គួរតែត្រូវបានជ្រើសរើសសម្រាប់ការកែតម្រូវដោយស្វ័យប្រវត្តិនៃប៉ារ៉ាម៉ែត្រទាំងពីរ។
អាំងតង់ស៊ីតេគោលដៅ៖ ជ្រើសរើសតម្លៃអាំងតង់ស៊ីតេជាមធ្យមសម្រាប់រូបភាពស្តេរ៉េអូ ដែលត្រូវបានកំណត់គោលដៅដោយការកែតម្រូវដោយស្វ័យប្រវត្តិ។ តម្លៃអាំងតង់ស៊ីតេត្រូវបានសរសេរជាភាគរយtagលេខ e ដែលមាន 0 តំណាងឱ្យពណ៌ខ្មៅ និង 100 ពណ៌ស។ តម្លៃផ្សេងគ្នាអាចត្រូវបានផ្តល់ឱ្យសម្រាប់ឧបករណ៍ចាប់សញ្ញាពណ៌ និងពណ៌តែមួយ។
35

9.10 Advanced Auto Exposure និង Gain Settings 9 CONFIGURATION
រូបភាពទី 23៖ រូបថតអេក្រង់នៃទំព័រកំណត់រចនាសម្ព័ន្ធសម្រាប់ការប៉ះពាល់ដោយស្វ័យប្រវត្តិ និងទទួលបានការកំណត់ការកែតម្រូវ។ ស៊ុមគោលដៅ៖ ជ្រើសរើសប្រសិនបើអាំងតង់ស៊ីតេនៃស៊ុមខាងឆ្វេង អាំងតង់ស៊ីតេនៃ
ស៊ុមខាងស្តាំ ឬអាំងតង់ស៊ីតេមធ្យមនៃស៊ុមទាំងពីរគួរតែត្រូវបានកែតម្រូវទៅតាមអាំងតង់ស៊ីតេគោលដៅ។ ពេលវេលានៃការប៉ះពាល់អតិបរមា៖ តម្លៃអតិបរមាសម្រាប់ពេលវេលានៃការប៉ះពាល់អាចត្រូវបានបញ្ជាក់ក្នុងគោលបំណងកំណត់ចលនាព្រិលៗ។ តម្លៃសម្រាប់ពេលវេលាបង្ហាញអតិបរមាគួរតែតូចជាងពេលវេលារវាងស៊ុមពីរជានិច្ច។ តម្លៃផ្សេងគ្នាអាចត្រូវបានផ្តល់ឱ្យសម្រាប់ឧបករណ៍ចាប់សញ្ញាពណ៌ និងពណ៌តែមួយ។ ការទទួលបានអតិបរិមា៖ ដូចទៅនឹងពេលវេលានៃការប៉ះពាល់ដែរ វាក៏អាចកំណត់ការទទួលបានអតិបរមាដែលអនុញ្ញាតផងដែរ។ ការរឹតបន្តឹងការទទួលបានអាចធ្វើឱ្យប្រសើរឡើងនូវលទ្ធផលដំណើរការរូបភាពសម្រាប់ស្ថានភាពដែលមានសំឡេងរំខានពីឧបករណ៍ចាប់សញ្ញាខ្ពស់។ តម្លៃផ្សេងគ្នាអាចត្រូវបានផ្តល់ឱ្យសម្រាប់ឧបករណ៍ចាប់សញ្ញាពណ៌ និងពណ៌តែមួយ។ 9.10.2 ការ​កំណត់​ដោយ​ដៃ ប្រសិនបើ​ការ​កែតម្រូវ​ដោយ​ស្វ័យ​ប្រវត្តិ​ត្រូវ​បាន​បិទ​នៅ​ក្នុង​ការ​ជ្រើសរើស​របៀប នោះ​ពេល​វេលា​នៃ​ការ​ប៉ះពាល់​និង/ឬ​ការ​កើន​ឡើង​អាច​ត្រូវ​បាន​កំណត់​ដោយ​ដៃ​ទៅ​ជា​តម្លៃ​ថេរ​ក្នុង​ផ្នែក​នេះ។
36

9.11 ការកំណត់កេះ

9 ការកំណត់រចនាសម្ព័ន្ធ

រូបភាពទី 24៖ រូបថតអេក្រង់នៃទំព័រកំណត់រចនាសម្ព័ន្ធសម្រាប់ការកំណត់កេះ។
9.10.3 ការកំណត់ ROI
ជាជាងធ្វើការកែតម្រូវដោយគោរពតាមអាំងតង់ស៊ីតេមធ្យមនៃរូបភាពពេញលេញ អ្នកអាចគណនាអាំងតង់ស៊ីតេមធ្យមបានតែលើតំបន់ដែលចាប់អារម្មណ៍ប៉ុណ្ណោះ។ បើកដំណើរការ 'ប្រើ ROI សម្រាប់ការកែតម្រូវ' នៅក្នុងករណីនោះ។ `Offset X' និង `Offset Y” ពិពណ៌នាអំពីទីតាំងកណ្តាលរបស់តំបន់ទាក់ទងទៅនឹងមជ្ឈមណ្ឌលរូបភាព។ 'ទទឹង ROI' និង 'ROI កម្ពស់' អនុញ្ញាតឱ្យអ្នកកែតម្រូវផ្នែកបន្ថែមនៃ ROI ។ ROI ត្រូវតែមាននៅក្នុងរូបភាពទាំងស្រុង។ ប្រសិនបើនេះមិនមែនជាករណីទេ ROI នឹងត្រូវបានច្រឹបដោយស្វ័យប្រវត្តិ។
9.11 ការកំណត់កេះ
ទំព័រ 'ការកំណត់កេះ' ដែលត្រូវបានបង្ហាញក្នុងរូបភាពទី 24 អនុញ្ញាតឱ្យកំណត់រចនាសម្ព័ន្ធនៃការបញ្ចូល និងលទ្ធផលនៃគន្លឹះ។ Ruby មានលក្ខណៈពិសេសមួយ ច្រក GPIO ដែលផ្តល់នូវការចូលទៅកាន់ទិន្នផលកេះមួយ និងសញ្ញាបញ្ចូលគន្លឹះមួយ។ សម្រាប់លក្ខណៈបច្ចេកទេសអគ្គិសនីនៃសញ្ញាទាំងនេះ សូមមើលផ្នែក 6.3 ។
នៅពេលដែលការបញ្ចូលគន្លឹះត្រូវបានបើក Ruby នឹងចាប់យកស៊ុមតែនៅពេលដែលជីពចរសញ្ញាមកដល់ម្ជុលបញ្ចូលគន្លឹះ ឬប្រសិនបើគន្លឹះកម្មវិធីត្រូវបានបញ្ចេញតាមរយៈ API ។ សម្រាប់​សញ្ញា​កេះ​ផ្នែករឹង ការ​បង្ហាញ​ចេញ​នៃ​ឧបករណ៍​ចាប់​សញ្ញា​រូបភាព​ត្រូវ​បាន​ចាប់ផ្តើម​ដោយ​គែម​នាំមុខ​នៃ​សញ្ញា​ចូល។ នៅពេលដែលការបញ្ចូលកេះត្រូវបានបើក លទ្ធផលកេះមិនមានទេ។
នៅពេលដែលលទ្ធផលគន្លឹះមិនត្រូវបានបើក វាអាចត្រូវបានបញ្ជាក់ថាតើ
37

9.12 ការធ្វើសមកាលកម្មពេលវេលា

9 ការកំណត់រចនាសម្ព័ន្ធ

រូបភាពទី 25៖ រូបថតអេក្រង់នៃទំព័រកំណត់រចនាសម្ព័ន្ធសម្រាប់ការធ្វើសមកាលកម្មពេលវេលា។
លទ្ធផលគួរតែត្រូវបានចងភ្ជាប់ទៅនឹងថេរនៅលើ (ឡូជីខល 1) ឬបិទថេរ (ឡូជីខល 0) ។ ប្រសិនបើបានបើក បន្ទាត់រាងប៉ូលនៃសញ្ញាដែលបានបង្កើតអាចមានទាំងសកម្មខ្ពស់ ឬសកម្មទាប។ ទទឹងជីពចរអាចថេរ ឬវដ្តរវាងបញ្ជីតម្លៃដែលបានកំណត់ទុកជាមុន។
ប្រេកង់នៃលទ្ធផលគន្លឹះនឹងតែងតែត្រូវគ្នានឹងអត្រាស៊ុមបច្ចុប្បន្នរបស់ Ruby ។ ទោះយ៉ាងណាក៏ដោយ វាអាចបញ្ជាក់ពេលវេលាអុហ្វសិត ដែលជាការពន្យាពេលពីការចាប់ផ្តើមនៃការប៉ះពាល់ឧបករណ៍ចាប់សញ្ញាទៅគែមនាំមុខនៃលទ្ធផលនៃគន្លឹះ។
9.12 ការធ្វើសមកាលកម្មពេលវេលា
ទំព័រ 'ការធ្វើសមកាលកម្មពេលវេលា' ដែលត្រូវបានបង្ហាញក្នុងរូបភាពទី 25 អាចត្រូវបានប្រើដើម្បីកំណត់រចនាសម្ព័ន្ធវិធីសាស្រ្តបីដែលអាចធ្វើសមកាលកម្មនាឡិកាខាងក្នុងរបស់ Ruby ។ ដូចដែលបានពន្យល់នៅក្នុងផ្នែកទី 7.4 នាឡិកាខាងក្នុងត្រូវបានប្រើសម្រាប់ពេលវេលាបំផុត។ampការចាប់យកស៊ុម។
ជម្រើសទីមួយគឺធ្វើសមកាលកម្មជាមួយម៉ាស៊ីនមេពេលវេលា ដោយប្រើ Network Time Protocol (NTP) រហូតដល់កំណែទី 4 ។ ក្នុងករណីនេះ Ruby ធ្វើសមកាលកម្មនាឡិកាខាងក្នុងរបស់វាទៅម៉ាស៊ីនមេពេលវេលាដែលបានផ្តល់ឱ្យ ដោយប្រើ Coordinated Universal Time (UTC) ។ ភាពត្រឹមត្រូវនៃការធ្វើសមកាលកម្មពេលវេលាគឺអាស្រ័យលើភាពយឺតយ៉ាវនៃបណ្តាញ និងម៉ាស៊ីនមេពេលវេលារបស់អ្នក។ ប្រសិនបើការធ្វើសមកាលកម្មពេលវេលា NTP សកម្ម ស្ថិតិការធ្វើសមកាលកម្មត្រូវបានបង្ហាញនៅក្នុងតំបន់ស្ថានភាពជាក់លាក់មួយ។
ជាជម្រើសជំនួស NTP ពិធីសារពេលវេលាច្បាស់លាស់ (PTP) អាចត្រូវបានប្រើសម្រាប់ការធ្វើសមកាលកម្ម។ PTP ផ្តល់នូវភាពត្រឹមត្រូវខ្ពស់ជាងយ៉ាងខ្លាំងនៅពេលដែល com-
38

9.13 Reviewនៅក្នុងលទ្ធផលក្រិតតាមខ្នាត

9 ការកំណត់រចនាសម្ព័ន្ធ

រូបភាពទី 26៖ រូបថតអេក្រង់នៃទំព័រកំណត់រចនាសម្ព័ន្ធឡើងវិញviewការក្រិតតាមខ្នាតកាមេរ៉ា។
បានភ្ជាប់ទៅ NTP ហើយដូច្នេះគួរតែត្រូវបានគេពេញចិត្តប្រសិនបើមាន។ ដូចជាសម្រាប់ NTP នាឡិកាក៏នឹងត្រូវបានកំណត់ទៅ UTC ហើយព័ត៌មានអំពីស្ថានភាពសមកាលកម្មនឹងត្រូវបានបង្ហាញ។
នៅពេលប្រើសញ្ញា Pulse Per Second (PPS) នាឡិកាខាងក្នុងអាចត្រូវបានកំណត់ឡើងវិញទៅ 0 នៅពេលណាដែលសញ្ញានៃការធ្វើសមកាលកម្មត្រូវបានទទួល។ ម៉្យាងទៀត ប្រព័ន្ធពេលវេលា stamp សម្រាប់សញ្ញា PPS ដែលទទួលបានចុងក្រោយអាចត្រូវបានបញ្ជូនជាមួយស៊ុមចាប់យក។ សូមមើលផ្នែក 6.3.3 នៅទំព័រ 11 សម្រាប់ព័ត៌មានលម្អិតស្តីពីការធ្វើសមកាលកម្ម PPS ។
9.13 Reviewនៅក្នុងលទ្ធផលក្រិតតាមខ្នាត
នៅពេលដែលការក្រិតតាមខ្នាតត្រូវបានអនុវត្ត អ្នកអាចពិនិត្យមើលលទ្ធផលក្រិតនៅលើ `review ទំព័រ calibration' ដែលត្រូវបានបង្ហាញក្នុងរូបភាពទី 26 ។ នៅផ្នែកខាងលើនៃទំព័រនេះ អ្នកអាចមើលឃើញការផ្សាយបន្តផ្ទាល់ជាមុនview នៃឧបករណ៍ចាប់សញ្ញារូបភាពទាំងអស់ ដូចដែលពួកគេត្រូវបានកែតម្រូវជាមួយនឹងប៉ារ៉ាម៉ែត្រក្រិតបច្ចុប្បន្ន។ សូមប្រាកដថាចំណុចដែលត្រូវគ្នានៅក្នុងរូបភាពនៃឧបករណ៍ចាប់សញ្ញារូបភាពទាំងអស់មានកូអរដោនេបញ្ឈរដូចគ្នា។
តាមរយៈការធ្វើឱ្យជម្រើស 'បង្ហាញបន្ទាត់ epipolar' សកម្ម អ្នកអាចលាបលើសំណុំនៃបន្ទាត់ផ្ដេកនៅលើរូបភាព។ នេះអនុញ្ញាតឱ្យមានភាពងាយស្រួលក្នុងការវាយតម្លៃថាតើលក្ខណៈវិនិច្ឆ័យនៃកូអរដោនេបញ្ឈរស្មើគ្នាត្រូវបានបំពេញ។ អតីតample សម្រាប់រូបភាពបញ្ចូលខាងឆ្វេង និងស្តាំជាមួយបន្ទាត់ epipolar ត្រួតគ្នាត្រូវបានបង្ហាញក្នុងរូបភាពទី 27 ។
នៅក្នុងផ្នែក 'ព័ត៌មានគុណភាព' អ្នកអាចរកឃើញកំហុសនៃការបញ្ចាំងឡើងវិញជាមធ្យម។ នេះគឺជារង្វាស់សម្រាប់គុណភាពនៃការក្រិតតាមខ្នាតរបស់អ្នក ជាមួយនឹងតម្លៃទាបជាង
39

9.13 Reviewនៅក្នុងលទ្ធផលក្រិតតាមខ្នាត

9 ការកំណត់រចនាសម្ព័ន្ធ

រូបភាពទី ១៣៖ ឧample សម្រាប់វាយតម្លៃកូអរដោនេរូបភាពបញ្ឈរ។

ues បង្ហាញពីលទ្ធផលក្រិតដែលប្រសើរជាងមុន។ សូម​ប្រាកដ​ថា​កំហុស​ក្នុង​ការ​បញ្ចាំង​ឡើងវិញ​ជា​មធ្យម​គឺ​នៅ​ក្រោម 1 ភីកសែល។
ប៉ារ៉ាម៉ែត្រនៃការក្រិតតាមខ្នាតដែលបានគណនាទាំងអស់ត្រូវបានបង្ហាញនៅក្នុងផ្នែក 'ទិន្នន័យក្រិត' ។ ប៉ារ៉ាម៉ែត្រទាំងនេះគឺ៖

M1, M2 និង M3: ម៉ាទ្រីសកាមេរ៉ាសម្រាប់កាមេរ៉ាខាងឆ្វេង ស្តាំ និងពណ៌។
D1, D2 និង D3៖ មេគុណបង្ខូចទ្រង់ទ្រាយសម្រាប់កាមេរ៉ាខាងឆ្វេង ស្តាំ និងពណ៌។
R1, R2 និង R3: ម៉ាទ្រីសបង្វិលសម្រាប់ការបង្វិលរវាងរូបភាពកាមេរ៉ាដើម និងកែតម្រូវ។
P1, P2 និង P3: ការព្យាករណ៍ម៉ាទ្រីសនៅក្នុងប្រព័ន្ធកូអរដោណេថ្មី (កែតម្រូវ) ។
សំណួរទី 12៖ ម៉ាទ្រីសគូសផែនទីពីភាពមិនស្មើគ្នាទៅជម្រៅសម្រាប់កាមេរ៉ាខាងឆ្វេង។ សូមមើលផ្នែក 7.2 សម្រាប់ការប្រើប្រាស់របស់វា។
សំណួរទី 13៖ ម៉ាទ្រីសគូសផែនទីពីភាពមិនស្មើគ្នាទៅជម្រៅសម្រាប់កាមេរ៉ាពណ៌ (ជាធម្មតាមិនត្រូវការ)។
T12, T13៖ វ៉ិចទ័រ​បកប្រែ​រវាង​ប្រព័ន្ធ​កូអរដោណេ​នៃ​ឆ្វេង​និង​ស្តាំ, និង​កាមេរ៉ា​ឆ្វេង​និង​ពណ៌។
R12, R13៖ ម៉ាទ្រីស​បង្វិល​រវាង​ប្រព័ន្ធ​កូអរដោណេ​នៃ​ឆ្វេង និង​ស្តាំ និង​កាមេរ៉ា​ឆ្វេង និង​ពណ៌។

ម៉ាទ្រីសកាមេរ៉ា Mi ត្រូវបានរៀបចំដូចខាងក្រោម:

fx 0 cx

Mi

=

0

fy

cy

,

(១៦១៦)

001

40

9.14 ការក្រិតឡើងវិញដោយស្វ័យប្រវត្តិ

9 ការកំណត់រចនាសម្ព័ន្ធ

រូបភាពទី 28៖ រូបថតអេក្រង់នៃការកំណត់ការក្រិតឡើងវិញដោយស្វ័យប្រវត្តិ។

ដែល fx និង fy គឺជាប្រវែងប្រសព្វរបស់កែវថតក្នុងទិសផ្ដេក និងបញ្ឈរ (វាស់ជាភីកសែល) ហើយ cx និង cy គឺជាកូអរដោនេរូបភាពនៃមជ្ឈមណ្ឌលបញ្ចាំង។
មេគុណបង្ខូចទ្រង់ទ្រាយវ៉ិចទ័រ D1 និង D2 មានរចនាសម្ព័ន្ធដូចខាងក្រោមៈ

ឌី = k1 k2 p1 p2 k3 ,

(១៦១៦)

ដែល k1, k2 និង k3 គឺជាមេគុណបង្ខូចទ្រង់ទ្រាយរ៉ាឌីកាល់ ហើយ p1 និង p2 គឺជាមេគុណបង្ខូចទ្រង់ទ្រាយតង់សង់។
អ្នកអាចទាញយកព័ត៌មាននៃការក្រិតតាមខ្នាតទាំងអស់ជា YAML ដែលអាចអានដោយម៉ាស៊ីន fileដោយចុចលើតំណទាញយកនៅផ្នែកខាងក្រោមនៃផ្នែក 'calibration data'។ នេះអនុញ្ញាតឱ្យអ្នកនាំចូលទិន្នន័យក្រិតតាមខ្នាតយ៉ាងងាយស្រួលទៅក្នុងកម្មវិធីផ្ទាល់ខ្លួនរបស់អ្នក។ លើស​ពី​នេះ​ទៅ​ទៀត អ្នក​អាច​រក្សា​ទុក​ទិន្នន័យ​ក្រិត​តាម​ខ្នាត​ទៅ​ក្នុង​កុំព្យូទ័រ​របស់​អ្នក ហើយ​ផ្ទុក​វា​ឡើង​វិញ​នៅ​ពេល​ក្រោយ ដោយ​ប្រើ​ផ្នែក "ផ្ទុក​ឡើង​ទិន្នន័យ​ក្រិត​តាម​ខ្នាត"។

9.14 ការក្រិតឡើងវិញដោយស្វ័យប្រវត្តិ
នៅលើទំព័រ 'ការក្រិតឡើងវិញដោយស្វ័យប្រវត្តិ' ដែលត្រូវបានបង្ហាញក្នុងរូបភាពទី 28 អ្នកអាចបើកការប៉ាន់ប្រមាណដោយស្វ័យប្រវត្តិនៃប៉ារ៉ាម៉ែត្រនៃការក្រិតតាមខ្នាត។ ក្នុងករណីនេះ ប្រព័ន្ធនៅតែធ្វើការក្រិតតាមខ្នាត ទោះបីជាការតម្រឹមអុបទិកមានការប្រែប្រួលក៏ដោយ។
ប៉ារ៉ាម៉ែត្រនៃការក្រិតតាមខ្នាតជាធម្មតាត្រូវបានបែងចែកទៅជាប៉ារ៉ាម៉ែត្រខាងក្នុង (ប្រវែងប្រសព្វ មជ្ឈមណ្ឌលព្យាករ និងមេគុណបង្ខូចទ្រង់ទ្រាយ) និងប៉ារ៉ាម៉ែត្រខាងក្រៅ (ការផ្លាស់ប្តូររវាងការថតកាមេរ៉ាទាំងអស់)។ ការក្រិតឡើងវិញដោយស្វ័យប្រវត្តិតែប៉ុណ្ណោះ
41

9.15 តំបន់នៃការចាប់អារម្មណ៍

9 ការកំណត់រចនាសម្ព័ន្ធ

ធ្វើបច្ចុប្បន្នភាពនៃប៉ារ៉ាម៉ែត្រខាងក្រៅ ដោយសារពួកវាងាយនឹងបំរែបំរួលយ៉ាងខ្លាំង។ ពិសេសជាងនេះទៅទៀត មានតែការបង្វិលរវាងកាមេរ៉ាប៉ុណ្ណោះដែលត្រូវបានប៉ាន់ស្មាន។ នេះជាធម្មតាជាប៉ារ៉ាម៉ែត្រដែលផុយស្រួយបំផុត ដែលអាចត្រូវបានប៉ះពាល់យ៉ាងខ្លាំងដោយការខូចទ្រង់ទ្រាយតូចតាច។
ការក្រិតឡើងវិញដោយស្វ័យប្រវត្តិអាចត្រូវបានធ្វើឱ្យសកម្មដោយជ្រើសរើសជម្រើស 'បើកការក្រិតឡើងវិញដោយស្វ័យប្រវត្តិ' ។ បន្ទាប់មក Ruby នឹងបន្តគណនា samples សម្រាប់ការបង្វិលរវាងកាមេរ៉ាប៉ាន់ស្មាន។ វិធីសាស្ត្រប៉ាន់ស្មានដ៏រឹងមាំមួយត្រូវបានអនុវត្តសម្រាប់ការជ្រើសរើសការប៉ាន់ប្រមាណការបង្វិលចុងក្រោយពីសំណុំនៃការបង្វិល samples ។ ចំនួននៃ samples ដែលត្រូវបានប្រើសម្រាប់ដំណើរការប៉ាន់ស្មាននេះអាចត្រូវបានកំណត់រចនាសម្ព័ន្ធ។ តូច សampទំហំ le អនុញ្ញាតឱ្យមានប្រតិកម្មរហ័សលើបំរែបំរួលការតម្រឹម ខណៈពេលដែល s ធំampទំហំ le អនុញ្ញាតឱ្យមានការប៉ាន់ស្មានត្រឹមត្រូវបំផុត។ ប្រសិនបើជម្រើស 'រក្សាទុកការក្រិតដែលបានកែតម្រូវជាអចិន្ត្រៃយ៍' ត្រូវបានជ្រើសរើស នោះការក្រិតតាមខ្នាតដែលបានធ្វើបច្ចុប្បន្នភាពត្រូវបានសរសេរទៅអង្គចងចាំដែលមិនងាយនឹងបង្កជាហេតុ ហើយនៅតែមានសូម្បីតែបន្ទាប់ពីវដ្តថាមពលក៏ដោយ។
ដើម្បីឱ្យការក្រិតដោយស្វ័យប្រវត្តិដំណើរការ កាមេរ៉ាត្រូវតែសង្កេតមើលទិដ្ឋភាពដែលមានព័ត៌មានដែលមើលឃើញគ្រប់គ្រាន់។ Ruby នឹង​កំណត់​លក្ខណៈ​ពិសេស​នៃ​រូបភាព និង​ផ្គូផ្គង​រូបភាព​ទាំង​អស់។ ប្រសិនបើ​មិន​អាច​រក​ឃើញ​លក្ខណៈ​ពិសេស​គ្រប់គ្រាន់​ទេ នោះ​ការ​ក្រិត​ឡើងវិញ​ដោយ​ស្វ័យ​ប្រវត្តិ​នឹង​មិន​ដំណើរការ​ទេ។ ឈុតធម្មតាគួរតែគ្រប់គ្រាន់សម្រាប់ការក្រិតឡើងវិញដោយស្វ័យប្រវត្តិនូវកាមេរ៉ា monochrome ឆ្វេង និងស្តាំ។ ទោះជាយ៉ាងណាក៏ដោយ សម្រាប់ការដំណើរការការកំណត់ឡើងវិញដោយស្វ័យប្រវត្តិនៅលើកាមេរ៉ាពណ៌ លំនាំពណ៌ខ្មៅ/សដែលសំបូរទៅដោយមុខងារត្រូវបានណែនាំ។ ទំព័រពណ៌សដែលមានអត្ថបទដែលបានបោះពុម្ព ឧample, បម្រើបានយ៉ាងល្អសម្រាប់គោលបំណងនេះ។
នៅក្នុងតំបន់ស្ថិតិ អ្នកអាចស្វែងរកព័ត៌មានផ្សេងៗអំពីដំណើរការបច្ចុប្បន្ននៃដំណើរការក្រិតដោយស្វ័យប្រវត្តិ។ នេះរួមបញ្ចូលទាំងស្ថានភាពនៃការព្យាយាមក្រិតឡើងវិញចុងក្រោយបំផុត ពេលវេលាចាប់តាំងពីការធ្វើបច្ចុប្បន្នភាពការក្រិតចុងក្រោយ អុហ្វសិតបង្វិលនៃការអាប់ដេតចុងក្រោយ និងចំនួននៃការបង្វិលamples ដែលត្រូវបានប្រមូល និងបោះចោលតាំងពីការធ្វើបច្ចុប្បន្នភាពចុងក្រោយ។ ជាចុងក្រោយ អ្នកអាចរកឃើញបញ្ជីនៃការបង្វិលរវាងកាមេរ៉ាដែលបានគណនាថ្មីៗនេះនៅក្នុងតំបន់ប្រវត្តិ។ ការបង្វិលដែលបានរាយបញ្ជីត្រូវបានតំណាងថាជា quaternions ការបង្វិល។
9.15 តំបន់នៃការចាប់អារម្មណ៍
ប្រសិនបើមិនត្រូវការរូបភាពឧបករណ៍ចាប់សញ្ញាទាំងមូលទេ ប៉ុន្តែមានតែផ្នែករងមួយប៉ុណ្ណោះ នោះវាអាចត្រូវបានកំណត់រចនាសម្ព័ន្ធនៅលើទំព័រ 'តំបន់ចំណាប់អារម្មណ៍' (ROI) ។ ទំព័រនេះនឹងបើកជាមុនview នៃរូបភាពខាងឆ្វេង និងស្តាំដែលមានស៊ុមត្រួតលើគ្នាដែលបង្ហាញពីតំបន់ដែលបានច្រឹប ដែលអាចត្រូវបានផ្លាស់ទី និងផ្លាស់ប្តូរទំហំដោយឯកឯងដោយប្រើកណ្តុរ (សូមមើលរូបភាពទី 29)។ ឧបករណ៍នឹងកែប្រែវិមាត្រ ROI ដែលបានស្នើសុំ។ ក្នុង​ករណី​នេះ អ្នក​នឹង​ឃើញ​តំបន់​ខ្ទាស់​ដោយ​ស្វ័យ​ប្រវត្តិ​ទៅ​នឹង​ទំហំ​រូបភាព​ដែល​មាន​សុពលភាព​ជិត​បំផុត។
ប្រសិនបើការក្រិតតាមខ្នាតត្រូវបានអនុវត្តនៅលើបង្អួចដែលដាក់កម្រិតកណ្តាលជំនួសឱ្យដំណោះស្រាយឧបករណ៍ចាប់សញ្ញាពេញលេញ (សូមមើលផ្នែកទី 9.8) វិសាលភាពដែលបានដាក់កំហិតទាំងនេះមិនអាចលើសពីកំឡុងពេលជ្រើសរើស ROI ទេ។ មុនview ទំហំរូបភាពនៅលើទំព័រជ្រើសរើស ROI នឹងឆ្លុះបញ្ចាំងពីដំណោះស្រាយកំណត់ពេលវេលាកំណត់។

42

9.16 ឯកតារង្វាស់និចលភាព

9 ការកំណត់រចនាសម្ព័ន្ធ

រូបភាពទី 29៖ រូបថតអេក្រង់នៃការជ្រើសរើសតំបន់ដែលចាប់អារម្មណ៍។
9.16 ឯកតារង្វាស់និចលភាព
ឯកតារង្វាស់និចលភាព (IMU) ដែលបានបង្កប់នៅក្នុង Ruby ដែលអាចផ្តល់នូវការវាស់វែងបីវិមាត្រក្នុងពេលជាក់ស្តែងសម្រាប់ accelerometer, gyroscope, ការបង្កើនល្បឿនលីនេអ៊ែរ និងទិន្នន័យម៉ាញេទិក ក៏ដូចជាការអានការតំរង់ទិស quaternion រួមបញ្ចូលគ្នា អាចត្រូវបានកំណត់រចនាសម្ព័ន្ធនៅលើ 'ឯកតារង្វាស់និចលភាព' ទំព័រដែលត្រូវបានបង្ហាញក្នុងរូបភាពទី 30 ។
នៅក្នុងផ្នែក 'ប្រេកង់កញ្ចប់បណ្តាញ' អ្នកអាចកំណត់អត្រាកញ្ចប់ព័ត៌មានក្នុងមួយវិនាទីសម្រាប់ការអានឧបករណ៍ចាប់សញ្ញា។ តម្លៃអាចត្រូវបានបង្កើនសម្រាប់ការប្រើប្រាស់អប្បបរមា (ពេលវេលាពិត) ឬកាត់បន្ថយសម្រាប់ការកត់ត្រាសុទ្ធនៃស៊េរីពេលវេលា ដែលក្នុងករណីដែលបណ្តុំទិន្នន័យយូរជាងនេះនឹងត្រូវបានប្រមូលផ្តុំសម្រាប់កញ្ចប់នីមួយៗ។
សampប្រេកង់ ling សម្រាប់ឧបករណ៍ចាប់សញ្ញាបុគ្គលអាចត្រូវបានកំណត់រចនាសម្ព័ន្ធនៅក្នុង `sampផ្នែកនៃប្រេកង់លីង។ តម្លៃមានចន្លោះពី 0 Hz (ដែលបិទឆានែលជាក់លាក់មួយ) និងអត្រាអតិបរមាដែលជា 100 Hz សម្រាប់ទិន្នន័យមេដែក និង 400 Hz សម្រាប់ឆានែលផ្សេងទៀត។ ឆានែល 'rotation quaternion' ដែលឆ្លុះបញ្ចាំងពីការតំរង់ទិសឧបករណ៍ដែលបានរួមបញ្ចូលពីឆានែលឧបករណ៍ចាប់សញ្ញានីមួយៗមានបិទបើករបៀបបន្ថែម៖ នៅក្នុងរបៀប `absolute (geomagnetic)' ឧបករណ៍រួមបញ្ចូលម៉ាញេទិកដើម្បីផ្តល់ការអានសម្រាប់មុំយ៉ាវ (ពោលគឺការបង្វិលជុំវិញ អ័ក្សទំនាញ) ដូច្នេះការប៉ាន់ប្រមាណថាមានត្រីវិស័យដាច់ខាត។ នៅក្នុងរបៀប 'relative (non-geomagnetic)' គ្មានទិន្នន័យម៉ាញេទិកត្រូវបានប្រើប្រាស់ទេ ហើយការអាន yaw គឺផ្អែកតែលើការរួមបញ្ចូលចលនា ដែលវាចាប់ផ្តើមពីសូន្យ yaw អ្វីក៏ដោយដែលតំរង់ទិសឧបករណ៍ដំបូង និងភាពខុសគ្នាជាលំដាប់។
43

9.16 ឯកតារង្វាស់និចលភាព

9 ការកំណត់រចនាសម្ព័ន្ធ

រូបភាពទី 30៖ រូបថតអេក្រង់នៃទំព័រការកំណត់ឯកតារង្វាស់និចលភាព។
រសាត់នៃមុំ yaw ដែលបានរាយការណ៍ដោយគោរពតាមទិសដៅត្រីវិស័យដាច់ខាត។
9.16.1 ការក្រិតខ្នាតនៃឯកតារង្វាស់និចលភាព
ការផ្សាយបន្តផ្ទាល់ view ការអានការតំរង់ទិសអាចត្រូវបានគេសង្កេតឃើញនៅក្នុងផ្នែក 'ការក្រិតតាមខ្នាត / ការតំរង់ទិសឧបករណ៍' ។ ក្រៅពីមុំវិល ជម្រេ និងមុំ គុណភាពក្រិតត្រូវបានរាយការណ៍លើមាត្រដ្ឋានពីសូន្យដល់បី (ឆ្លុះបញ្ចាំងពីកម្រិត BNO08X ដែលមិនគួរឱ្យទុកចិត្ត ភាពត្រឹមត្រូវទាប ភាពត្រឹមត្រូវមធ្យម និងភាពត្រឹមត្រូវខ្ពស់)។ ភាពត្រឹមត្រូវប៉ាន់ស្មានសម្រាប់មុំយ៉ាវ (ត្រីវិស័យ) ត្រូវបានរាយការណ៍ ប្រសិនបើរបៀប 'absolute (geomagnetic)' ត្រូវបានបើក។ ការអានម៉ាញេទិកគឺជាសមាសធាតុដែលអាចទុកចិត្តបានតិចបំផុត ដូច្នេះស្ថានភាពនៃការក្រិតតាមខ្នាតអាចត្រូវបានគេរាយការណ៍ថាមានភាពត្រឹមត្រូវតិចជាងនៅក្នុងរបៀប 'absolute (geomagnetic)'។
ប៊ូតុង 'ចាប់ផ្តើមក្រិត' ដាក់ IMU នៅក្នុងរបៀបក្រិត។ នីតិវិធីដែលបានណែនាំគឺត្រូវតំរង់ទិសឧបករណ៍ជាប្រាំទៅប្រាំមួយទិសកាត់កែង (ដែលត្រូវគ្នានឹងមុខគូប) ជាមួយនឹងការបង្វិលផ្សេងគ្នា ហើយរក្សាឧបករណ៍ដោយសង្ខេបនៅទីតាំងនីមួយៗនៃទិសទាំងនោះ។ ស្ថានភាពក្រិតតាមខ្នាតគួរតែប្រសើរឡើងជាលំដាប់ទៅកម្រិត 2 ឬ 3។ ប៊ូតុង 'បញ្ចប់ការក្រិត' រក្សាទុកទិន្នន័យក្រិតខ្នាតថ្មី ហើយកំណត់ឡើងវិញការអាន IMU នឹងបន្តបន្ទាប់ពីមួយភ្លែតជាមួយនឹងការក្រិតតាមខ្នាតមូលដ្ឋានថ្មី ដែលបន្ទាប់មកនឹងបន្តឆ្លងកាត់វដ្តថាមពល។
44

ព័ត៌មានអំពីការប្រើប្រាស់ API 10
ព័ត៌មានអំពីការប្រើប្រាស់ API 10
10.1 ព័ត៌មានទូទៅ
ឆ្លងកាត់វេទិកា libvisiontransfer C ++ និង Python API គឺអាចរកបានសម្រាប់អន្តរកម្មកម្មវិធីផ្ទាល់ខ្លួនជាមួយ Ruby ។ សម្រាប់ Windows កំណែប្រព័ន្ធគោលពីរនៃបណ្ណាល័យគឺអាចរកបានដែលអាចប្រើបានជាមួយ Microsoft Visual Studio ។ សម្រាប់លីនុច សូមចងក្រងបណ្ណាល័យពីកូដប្រភពដែលមាន។ API ត្រូវបានរួមបញ្ចូលជាផ្នែកមួយនៃការចេញផ្សាយកម្មវិធីដែលមាន ដែលអាចទាញយកបានពីការគាំទ្ររបស់យើង។ webគេហទំព័រ ៤.
libvisiontransfer API ផ្តល់មុខងារសម្រាប់ការទទួលបានលទ្ធផលដំណើរការរបស់ Ruby តាមរយៈបណ្តាញកុំព្យូទ័រ។ លើសពីនេះ API ក៏អនុញ្ញាតឱ្យបញ្ជូនទិន្នន័យរូបភាពផងដែរ។ ដូច្នេះវាអាចត្រូវបានប្រើសម្រាប់ការត្រាប់តាម Ruby នៅពេលអនុវត្តការអភិវឌ្ឍន៍ប្រព័ន្ធ។
លទ្ធផលដំណើរការបញ្ជូនមានសំណុំរូបភាព។ ជាធម្មតាទាំងនេះគឺជារូបភាពខាងឆ្វេងដែលបានកែតម្រូវ និងផែនទីមិនស្មើគ្នាដែលបានគណនា។ ទោះយ៉ាងណាក៏ដោយ ប្រសិនបើកំណត់រចនាសម្ព័ន្ធ Ruby ក៏អាចផ្តល់នូវរូបភាពដែលបានកត់ត្រាទុក ឬរូបភាពដែលបានកែតម្រូវទាំងអស់ (សូមមើលផ្នែកទី 9.9)។
រូបភាពកាមេរ៉ាដើម និងដែលត្រូវបានកែតម្រូវជាធម្មតាត្រូវបានបញ្ជូនជាមួយ monochrome bit-depth 8 ប៊ីត ឬ 12 ប៊ីតក្នុងមួយភីកសែល ឬក្នុងរបៀប 8 ប៊ីត RGB ។ ផែនទីមិនស្មើគ្នាតែងតែត្រូវបានបញ្ជូនជាមួយនឹងជម្រៅបន្តិចនៃ 12 ប៊ីត។ នៅខាងក្នុងបណ្ណាល័យ ផែនទីមិនស្មើគ្នា និងរូបភាព 12 ប៊ីតត្រូវបានបំប៉ោងដល់ 16 ប៊ីត ដើម្បីអនុញ្ញាតឱ្យដំណើរការកាន់តែមានប្រសិទ្ធភាព។
API ផ្តល់នូវថ្នាក់បីដែលអាចប្រើបានសម្រាប់ការទទួល និងបញ្ជូនទិន្នន័យរូបភាព៖
· ImageProtocol គឺជាចំណុចប្រទាក់កម្រិតទាបបំផុត។ ថ្នាក់​នេះ​អនុញ្ញាត​ឱ្យ​មាន​ការ​បំប្លែង និង​ឌិកូដ​នៃ​សំណុំ​រូបភាព​ទៅ/ពី​សារ​បណ្ដាញ។ អ្នកនឹងត្រូវដោះស្រាយការទំនាក់ទំនងបណ្តាញទាំងអស់ដោយខ្លួនឯង។
· ImageTransfer បើករន្ធបណ្តាញសម្រាប់ការផ្ញើ និងទទួលសំណុំរូបភាព។ ថ្នាក់នេះគឺមានខ្សែតែមួយ ហើយដូច្នេះនឹងរារាំងនៅពេលទទួល ឬបញ្ជូនទិន្នន័យ។
· AsyncTransfer អនុញ្ញាតឱ្យមានការទទួល ឬបញ្ជូនសំណុំរូបភាពអសមកាល។ ថ្នាក់នេះបង្កើតខ្សែស្រឡាយមួយ ឬច្រើនដែលគ្រប់គ្រងទំនាក់ទំនងបណ្តាញទាំងអស់។
ព័ត៌មានលម្អិតអំពីការប្រើប្រាស់នៃថ្នាក់នីមួយៗអាចរកបាននៅក្នុងឯកសារ API ដែលមាន។
10.2 ការផ្ទេររូបភាព Example
អតីតមួយample សម្រាប់ការប្រើប្រាស់ class ImageTransfer ក្នុង C++ ដើម្បីទទួលបានលទ្ធផលដំណើរការលើបណ្តាញ ហើយសរសេរវាទៅជារូបភាព files, ត្រូវបានបង្ហាញខាងក្រោម។
1https://nerian.com/support/software/
45

10.2 ការផ្ទេររូបភាព Example

ព័ត៌មានអំពីការប្រើប្រាស់ API 10

កូដប្រភពនេះ។ file គឺជាផ្នែកមួយនៃការចេញផ្សាយកូដប្រភព API ។ សូមយោងទៅលើឯកសារ API សម្រាប់ព័ត៌មានបន្ថែមស្តីពីការប្រើប្រាស់ ImageTransfer និងសម្រាប់ឧamples នៅក្នុង Python ។

# រួមបញ្ចូល < ការផ្លាស់ប្តូរចក្ខុវិស័យ / ឧបករណ៍រាប់បញ្ចូល . h> #include < visiontransfer / imagetransfer . h> #include < visiontransfer / imageset . h> # រួមបញ្ចូល # រួមបញ្ចូល # រួមបញ្ចូល

#ifdef _MSC_VER // ស្ទូឌីយោរូបភាព #definesnprintf #endif

មិនមក _snprintf_s

ជាមួយ

snprintf

ការប្រើប្រាស់ namespace visiontransfer ;

int main () { // ស្វែងរក Nerian stereo devices DeviceEnumeration deviceEnum ; DeviceEnumeration : : DeviceList devices = deviceEnum . discoverDevices ( ) ; i f ( d e v i c e s . s i z e ( ) == 0 ) { s t d : : c o u t << “No d e v i c e s d i s c o v e r e d ! ” << s t d : : e n d l ; return -1; }

// ឧបករណ៍បោះពុម្ព std : : cout << ” D iscovereddevices : ” << std : : endl ; សម្រាប់ ( unsignedinti = 0 ; i < ឧបករណ៍ . size ( ); i ++) {
std : : cout << ឧបករណ៍ [ i ] . ទៅ S tring ( ) << std : : endl ; } std : : cout << std : : endl ;

// បង្កើតវត្ថុផ្ទេររូបភាពដែលទទួលទិន្នន័យពី // ឧបករណ៍ដែលបានរកឃើញដំបូង ImageTransfer imageTransfer (ឧបករណ៍ [0] );

// ទទួលរូបភាព 100 សម្រាប់ ( int imgNum=0; imgNum<100; imgNum ++) {
std : : cout << ” R ទទួលបានរូបភាពកំណត់ ” << imgNum << std : : endl ;

// ទទួលរូបភាព ImageSet imageSet ; while (! imageTransfer . receiveImageSet ( imageSet )) {
// បន្ត​ការ​ព្យាយាម​រហូត​ដល់​ទទួល​បាន​ជោគជ័យ }

// សរសេររូបភាពដែលបានរួមបញ្ចូលទាំងអស់ម្តងមួយៗសម្រាប់ ( inti = 0 ; i < imageSet . getNumberOfImages ( ); i ++) {
// C បង្កើតឯកសារ PGM ឡើងវិញ

46

10.3 AsyncTransfer Example

ព័ត៌មានអំពីការប្រើប្រាស់ API 10

ចារ fileឈ្មោះ [100]; snprintf ( fileឈ្មោះ , ទំហំ ( ឯកសារ N ame ) , " image%03d_%d . pgm”, ខ្ញុំ,
imgNum);
សំណុំរូបភាព។ សរសេរPgmFile (ខ្ញុំ , fileឈ្មោះ); } }
ត្រឡប់ 0; }

10.3 AsyncTransfer Example
អតីតមួយample សម្រាប់ការប្រើប្រាស់ class AsyncTransfer ក្នុង C++ ដើម្បីទទួលបានលទ្ធផលដំណើរការលើបណ្តាញ ហើយសរសេរវាទៅជារូបភាព files, ត្រូវបានបង្ហាញខាងក្រោម។ កូដប្រភពនេះ។ file គឺជាផ្នែកមួយនៃការចេញផ្សាយកូដប្រភព API ។ សូមយោងទៅឯកសារ API សម្រាប់ព័ត៌មានបន្ថែមស្តីពីការប្រើប្រាស់ AsyncTransfer និងឧទាហរណ៍amples នៅក្នុង Python ។

# រួមបញ្ចូល < ការផ្លាស់ប្តូរចក្ខុវិស័យ / ឧបករណ៍រាប់បញ្ចូល . h> #include < visiontransfer / asynctransfer . h> #include < visiontransfer / imageset . h> # រួមបញ្ចូល # រួមបញ្ចូល # រួមបញ្ចូល

#ifdef _MSC_VER // ស្ទូឌីយោរូបភាព #definesnprintf #endif

មិនមក _snprintf_s

ជាមួយ

snprintf

ការប្រើប្រាស់ namespace visiontransfer ;

int main () { try { // ស្វែងរក Nerian stereo devices DeviceEnumeration deviceEnum ; DeviceEnumeration : : DeviceList devices = deviceEnum . discoverDevices ( ) ; i f ( d e v i c e s . s i z e ( ) == 0 ) { s t d : : c o u t << “No d e v i c e s d i s c o v e r e d ! ” << s t d : : e n d l ; return -1; }

// ឧបករណ៍បោះពុម្ព std : : cout << ” D iscovereddevices : ” << std : : endl ; សម្រាប់ ( unsignedinti = 0 ; i < ឧបករណ៍ . size ( ); i ++) {
std : : cout << ឧបករណ៍ [ i ] . ទៅ S tring ( ) << std : : endl ; } std : : cout << std : : endl ;

47

10.4 ការកសាងឡើងវិញ 3D

ព័ត៌មានអំពីការប្រើប្រាស់ API 10

// បង្កើតវត្ថុផ្ទេររូបភាពដែលទទួលទិន្នន័យពី // ឧបករណ៍ដែលបានរកឃើញដំបូង AsyncTransfer asyncTransfer ( devices [ 0 ] );
// ទទួលរូបភាព 100 សម្រាប់ ( int imgNum=0; imgNum<100; imgNum ++) {
std : : cout << ” R ទទួលបានរូបភាពកំណត់ ” << imgNum << std : : endl ;
// ទទួលរូបភាព ImageSet imageSet ; while (! asyncTransfer . collectionReceivedImageSet ( imageSet ,
0.1 / អស់ពេល / )) { // បន្តការព្យាយាមរហូតដល់ការទទួលជោគជ័យ }
// សរសេររូបភាពដែលបានរួមបញ្ចូលទាំងអស់ម្តងមួយៗសម្រាប់ ( inti = 0 ; i < imageSet . getNumberOfImages ( ); i ++) {
// C បង្កើតឯកសារ PGM ឡើងវិញ fileឈ្មោះ [100]; snprintf ( fileឈ្មោះ , ទំហំ ( ឯកសារ N ame ) , " image%03d_%d . pgm”, ខ្ញុំ,
imgNum);
សំណុំរូបភាព។ សរសេរPgmFile (ខ្ញុំ , fileឈ្មោះ); } } } catch ( const std : : exception & ex ) { std : : cerr << ” E xceptionoccurred : ” << ex . what ( ) << std : : endl ; }
ត្រឡប់ 0; }
10.4 ការកសាងឡើងវិញ 3D
ដូចដែលបានពិពណ៌នានៅក្នុងផ្នែកទី 7.2 ផែនទីភាពខុសគ្នាអាចត្រូវបានបំលែងទៅជាសំណុំនៃចំណុច 3D ។ នេះទាមទារចំណេះដឹងអំពីម៉ាទ្រីសផែនទីពីភាពមិនស្មើគ្នាទៅជម្រៅ Q (សូមមើលផ្នែកទី 7.2) ដែលត្រូវបានបញ្ជូនដោយ Ruby រួមជាមួយនឹងផែនទីភាពខុសគ្នានីមួយៗ។
ការអនុវត្តប្រកបដោយប្រសិទ្ធភាពនៃការផ្លាស់ប្តូរដែលត្រូវការ ដែលប្រើសំណុំការណែនាំ SSE ឬ AVX ត្រូវបានផ្តល់ដោយ API តាមរយៈថ្នាក់ Reconstruct3D ។ ថ្នាក់នេះបំប្លែងផែនទីមិនស្មើគ្នាទៅជាផែនទីនៃកូអរដោនេចំណុច 3D ។ សូមមើលឯកសារ API សម្រាប់ព័ត៌មានលម្អិតបន្ថែម។
១០ ប៉ារ៉ាម៉ែត្រ
ពិធីការបណ្តាញដាច់ដោយឡែកត្រូវបានប្រើសម្រាប់ការអាន និងសរសេរប៉ារ៉ាម៉ែត្រឧបករណ៍។ ពិធីការនេះត្រូវបានអនុវត្តដោយ DeviceParameters។ ប៉ារ៉ាម៉ែត្រ​ណា​មួយ​ដែល​ត្រូវ​បាន​ផ្លាស់​ប្តូ​រ​តាម​រយៈ​ពិធីការ​នេះ​នឹង​ត្រូវ​បាន​កំណត់​ឡើង​វិញ​ប្រសិន​បើ​ឧបករណ៍​ត្រូវ​បាន​ចាប់ផ្ដើម​ឡើង​វិញ​ឬ​ប្រសិន​បើ​អ្នក​ប្រើ​ធ្វើ​ឱ្យ​ការ​ផ្លាស់​ប្តូ​រ​ប៉ារ៉ាម៉ែត្រ​តាម​រយៈ web ចំណុចប្រទាក់។
48

11 កម្មវិធីដែលបានផ្គត់ផ្គង់
រូបភាពទី 31៖ រូបថតអេក្រង់នៃកម្មវិធី NVCom ។
11 កម្មវិធីដែលបានផ្គត់ផ្គង់
11.1 NVCom
កូដប្រភពដែលមាន ឬការចេញផ្សាយកម្មវិធីប្រព័ន្ធគោលពីរក៏រួមបញ្ចូលផងដែរនូវកម្មវិធីម៉ាស៊ីនភ្ញៀវ NVCom ដែលត្រូវបានបង្ហាញក្នុងរូបភាពទី 31។ នៅពេលចងក្រងកម្មវិធីនេះដោយខ្លួនឯង សូមប្រាកដថាអ្នកមានបណ្ណាល័យ OpenCV និង Qt ដែលបានដំឡើង។ NVCom ផ្តល់នូវលក្ខណៈពិសេសដូចខាងក្រោមៈ
· ស្វែងយល់ពីឧបករណ៍ Ruby, view ស្ថានភាពរបស់ពួកគេ និងចូលទៅកាន់ការដំឡើងរបស់ពួកគេ។ · ទទួល និងបង្ហាញរូបភាព និងផែនទីមិនស្មើគ្នាពី Ruby ។ · អនុវត្តការសរសេរកូដពណ៌នៃផែនទីភាពខុសគ្នា។ ·ផ្តល់នូវការមើលឃើញផ្ទាល់ 3D pointcloud ។ ·សរសេរទិន្នន័យដែលទទួលបានទៅ files ជារូបភាព ឬពពកចំណុច 3D ។ NVCom ភ្ជាប់មកជាមួយ GUI ដែលផ្តល់នូវការចូលទៅកាន់មុខងារសំខាន់ៗទាំងអស់។ មុខងារកម្រិតខ្ពស់បន្ថែមទៀតគឺអាចរកបានតាមរយៈជម្រើសបន្ទាត់ពាក្យបញ្ជា ដែលត្រូវបានរាយក្នុងតារាងទី 2 ។ ជម្រើសបន្ទាត់ពាក្យបញ្ជាក៏អាចត្រូវបានប្រើសម្រាប់ការកត់ត្រាទិន្នន័យដោយស្វ័យប្រវត្តិ ឬការចាក់សារថ្មីផងដែរ។ លុះត្រាតែ NVCom ដំណើរការក្នុងរបៀបមិនមែនក្រាហ្វិក វាបើកបង្អួច GUI ដែលបង្ហាញរូបភាពដែលទទួលបាន។ សំណុំរូបភាពដែលបានបង្ហាញបច្ចុប្បន្នអាចត្រូវបានសរសេរទៅថាសដោយចុចគ្រាប់ចុចបញ្ចូល ឬដោយចុចលើរូបតំណាងកាមេរ៉ានៅក្នុងរបារឧបករណ៍។ នៅពេលចុចគ្រាប់ចុចដកឃ្លា ឬចុចលើរូបតំណាងថត រូបភាពបន្តបន្ទាប់ទាំងអស់នឹងត្រូវបានរក្សាទុក។ នៅពេលបិទ NVCom វានឹងរក្សាទុកការកំណត់បច្ចុប្បន្នរបស់វា ដែលនឹងត្រូវបានផ្ទុកឡើងវិញដោយស្វ័យប្រវត្តិនៅពេលដែល NVCom ត្រូវបានបើកដំណើរការនៅពេលបន្ទាប់។
49

11.2 អ្នកផលិត GenICam GenTL

11 កម្មវិធីដែលបានផ្គត់ផ្គង់

តារាងទី 2៖ ជម្រើសបន្ទាត់ពាក្យបញ្ជាដែលមានសម្រាប់ NvCom ។

-c VAL
-f FPS -w DIR -s DIR -n មិនមែនក្រាហ្វិក -p PORT -H HOST -t បើក/បិទ -d -T -3 VAL
-z VAL -F -b បើក/បិទ -h ជួយ

ជ្រើសរើសពណ៌ចម្រុះ (0 = គ្មានពណ៌ 1 = ក្រហម / ខៀវ 2 = ឥន្ទធនូ) ដាក់កម្រិតបញ្ជូនអត្រាស៊ុមទៅ FPS សរសេររូបភាពទាំងអស់ភ្លាមៗទៅ DIR ផ្ញើរូបភាពពីថតដែលបានផ្តល់ឱ្យ
ប្រើលេខច្រកពីចម្ងាយដែលបានផ្តល់ឱ្យសម្រាប់ការទំនាក់ទំនង ប្រើឈ្មោះម៉ាស៊ីនពីចម្ងាយដែលបានផ្តល់ឱ្យសម្រាប់ការទំនាក់ទំនង ធ្វើឱ្យសកម្ម / អសកម្មការផ្ទេរ TCP បិទការទទួលរូបភាព បោះពុម្ពស៊ុមពេលវេលាច្រើនបំផុតamps សរសេរពពកចំណុច 3D ដែលមានចម្ងាយរហូតដល់ VAL (0 = បិទ) កំណត់កត្តាពង្រីកទៅ VAL ភាគរយ ដំណើរការក្នុងរបៀបពេញអេក្រង់ សរសេរចំណុចពពកជាគោលពីរជាជាងទម្រង់អត្ថបទ បង្ហាញជំនួយនេះ។

11.2 អ្នកផលិត GenICam GenTL
11.2.1 ការដំឡើង
ការចេញផ្សាយកម្មវិធីដែលមានបន្ថែមរួមមានម៉ូឌុលកម្មវិធីដែលអនុលោមតាមស្តង់ដារ GenICam GenTL ។ ស្តង់ដារ GenTL បញ្ជាក់ចំណុចប្រទាក់ស្រទាប់ដឹកជញ្ជូនទូទៅសម្រាប់ការចូលប្រើកាមេរ៉ា និងឧបករណ៍រូបភាពផ្សេងទៀត។ យោងតាមអនុសញ្ញាដាក់ឈ្មោះ GenICam អ្នកផលិត GenTL គឺជាកម្មវិធីបញ្ជាដែលផ្តល់នូវការចូលប្រើឧបករណ៍រូបភាពតាមរយៈចំណុចប្រទាក់ GenTL ។ ម្យ៉ាងវិញទៀត អ្នកប្រើប្រាស់ GenTL គឺជាកម្មវិធីណាមួយដែលប្រើអ្នកផលិត GenTL មួយ ឬច្រើនតាមរយៈចំណុចប្រទាក់នេះ។ ម៉ូឌុលកម្មវិធីដែលបានផ្គត់ផ្គង់តំណាងឱ្យអ្នកផលិត GenTL ហើយអាចប្រើជាមួយកម្មវិធីកម្មវិធីណាមួយដែលដើរតួជាអ្នកប្រើប្រាស់។ នេះអនុញ្ញាតឱ្យមានការរួមបញ្ចូល Ruby ដែលត្រៀមរួចជាស្រេចទៅក្នុងកម្មវិធីម៉ាស៊ីនចក្ខុវិស័យដែលមានស្រាប់ដូចជា HALCON ជាដើម។
អាស្រ័យលើកំណែដែលអ្នកបានទាញយក អ្នកផលិតត្រូវបានផ្តល់ជាប្រព័ន្ធគោលពីរ ឬជាកូដប្រភព។ ប្រសិនបើអ្នកជ្រើសរើសការចេញផ្សាយកូដប្រភព អ្នកផលិតនឹងត្រូវបានបង្កើតឡើងរួមជាមួយសមាសធាតុកម្មវិធីផ្សេងទៀត។ ប្រព័ន្ធគោលពីរដែលបានផលិត / ទាញយកត្រូវបានដាក់ឈ្មោះថា nerian-gentl.cti ។ ដើម្បី​ត្រូវ​បាន​រក​ឃើញ​ដោយ​អ្នក​ប្រើ​ប្រាស់, នេះ file ត្រូវតែដាក់ក្នុងថតដែលស្ថិតនៅក្នុងផ្លូវស្វែងរក GenTL ។ ផ្លូវស្វែងរកត្រូវបានបញ្ជាក់តាមរយៈអថេរបរិស្ថានពីរខាងក្រោម៖
GENICAM_GENTL32_PATH៖ ស្វែងរកផ្លូវសម្រាប់អ្នកផលិត GenTL 32 ប៊ីត។ GENICAM_GENTL64_PATH៖ ស្វែងរកផ្លូវសម្រាប់អ្នកផលិត GenTL 64 ប៊ីត។
កម្មវិធីដំឡើងវីនដូប្រព័ន្ធគោលពីរកំណត់រចនាសម្ព័ន្ធបរិស្ថានទាំងនេះដោយស្វ័យប្រវត្តិ

50

11.2 អ្នកផលិត GenICam GenTL

11 កម្មវិធីដែលបានផ្គត់ផ្គង់

អថេរ។ នៅពេលបង្កើតការចេញផ្សាយកូដប្រភព សូមកំណត់រចនាសម្ព័ន្ធអថេរបរិស្ថានដោយដៃ។
11.2.2 ឧបករណ៍និម្មិត
នៅពេលដែលផ្លូវស្វែងរកត្រូវបានកំណត់ អ្នកផលិតត្រៀមរួចរាល់សម្រាប់ប្រើប្រាស់ដោយអ្នកប្រើប្រាស់។ សម្រាប់ Ruby នីមួយៗ អ្នកផលិតផ្តល់នូវឧបករណ៍និម្មិតចំនួនប្រាំ ដែលនីមួយៗផ្តល់ផ្នែកមួយនៃទិន្នន័យដែលទទួលបាន។ ឧបករណ៍និម្មិតទាំងនេះត្រូវបានដាក់ឈ្មោះដូចខាងក្រោម៖
/color ផ្តល់រូបភាពកាមេរ៉ាពណ៌ដែលត្រូវបានបញ្ជូនដោយ Ruby ។ នៅក្នុងការកំណត់លំនាំដើម នេះគឺជារូបភាពបន្ទាប់ពីការកែតម្រូវ និងការព្យាករត្រូវបានអនុវត្ត។ រូបភាពត្រូវបានអ៊ិនកូដជារូបភាព RGB ដែលមាន 8 ប៊ីតក្នុងមួយប៉ុស្តិ៍ (RGB8) ។
/left ផ្តល់រូបភាពកាមេរ៉ាខាងឆ្វេងដែលត្រូវបានបញ្ជូនដោយ Ruby ។ នៅក្នុងការកំណត់លំនាំដើម ស្ទ្រីមទិន្នន័យនេះមិនមានទេ។ រូបភាពត្រូវបានអ៊ិនកូដដោយ 8 ឬ 12 ប៊ីតក្នុងមួយភីកសែល (Mono8 ឬ Mono12) ។
/right ផ្តល់រូបភាពកាមេរ៉ាត្រឹមត្រូវ។ នៅក្នុងការកំណត់លំនាំដើម ស្ទ្រីមទិន្នន័យនេះមិនមានទេ។ រូបភាពត្រូវបានអ៊ិនកូដជាទម្រង់ Mono8 ឬ Mono12។
/disparity ផ្តល់ផែនទីភាពខុសគ្នាដែលត្រូវបានបញ្ជូនដោយ Ruby ។ ទិន្នន័យនេះមិនមានទេប្រសិនបើ Ruby ត្រូវបានកំណត់រចនាសម្ព័ន្ធនៅក្នុងរបៀបឆ្លងកាត់ ឬកែតម្រូវ។ ផែនទីភាពមិនស្មើគ្នាត្រូវបានបញ្ជូនជាមួយការអ៊ិនកូដ 12 ប៊ីតដែលមិនខ្ចប់ក្នុងមួយភីកសែល (Mono12) ។
/pointcloud ផ្តល់ការបំប្លែងផែនទីភាពខុសគ្នាទៅជា 3D point cloud (សូមមើលផ្នែក 7.2)។ ចំណុចនីមួយៗត្រូវបានតំណាងដោយលេខចំណុចអណ្តែត 32 ប៊ីតចំនួនបីដែលអ៊ិនកូដ x-, y- និង z-coordinate (Coord3D_ABC32f) ។
/ ឧបករណ៍និម្មិតនេះផ្តល់នូវស្ទ្រីមទិន្នន័យពហុផ្នែកដែលមានទិន្នន័យទាំងអស់ដែលមានតាមរយៈឧបករណ៍ផ្សេងទៀត។ នៅក្នុងការកំណត់លំនាំដើម ឧបករណ៍នេះផ្តល់នូវរូបភាពកាមេរ៉ាខាងឆ្វេង ផែនទីភាពខុសគ្នា និងពពកចំណុច 3D ។
ឧបករណ៍និម្មិត /ពណ៌ / ឆ្វេង / ស្តាំ និង / ភាពមិនស្មើគ្នាផ្តល់ទិន្នន័យដែលមិនទាន់ដំណើរការដែលត្រូវបានទទួលពី Ruby ។ ទិន្នន័យដែលទទួលបានតាមរយៈឧបករណ៍ /pointcloud ត្រូវបានគណនាដោយអ្នកផលិតពីផែនទីភាពខុសគ្នាដែលទទួលបាន។ នេះ​ត្រូវ​បាន​ធ្វើ​ដោយ​ការ​គុណ​ផែនទី​គម្លាត​ជាមួយ​នឹង​ម៉ាទ្រីស​ផែនទី​គម្លាត​ទៅ​ជម្រៅ Q (មើល​ផ្នែក 7.2) ដែល​ត្រូវ​បាន​បញ្ជូន​ដោយ Ruby រួម​ជាមួយ​គូរូបភាពនីមួយៗ។ ភាពខុសគ្នាមិនត្រឹមត្រូវត្រូវបានកំណត់ទៅជាគម្លាតអប្បបរមា ហើយដូច្នេះនាំឱ្យពិន្ទុដែលមានចម្ងាយធំខ្លាំងណាស់។
វាត្រូវបានណែនាំឱ្យប្រើឧបករណ៍និម្មិតពហុផ្នែក / នៅពេលដែលត្រូវការទិន្នន័យច្រើនជាងមួយប្រភេទ។ នេះនឹងធានាថាការទទួលបានទិន្នន័យទាំងអស់ត្រូវបានធ្វើសមកាលកម្ម។ នៅពេលត្រូវការទិន្នន័យបញ្ចូលតែមួយប្រភេទ នោះការប្រើឧបករណ៍និម្មិតដែលខិតខំប្រឹងប្រែងគឺជាជម្រើសដ៏មានប្រសិទ្ធភាពបំផុត។
51

11.3 ថ្នាំង ROS

១១ គាំទ្រ

11.2.3 លេខសម្គាល់ឧបករណ៍ លេខសម្គាល់ឧបករណ៍ទាំងអស់ដែលត្រូវបានផ្តល់ដោយអ្នកផលិតគឺ URLs និងមានសមាសធាតុដូចខាងក្រោមៈ
ពិធីការ // អាសយដ្ឋាន / ឧបករណ៍និម្មិត
សមាសភាគពិធីការកំណត់អត្តសញ្ញាណពិធីការដឹកជញ្ជូនមូលដ្ឋានដែលនឹងត្រូវប្រើសម្រាប់ការទំនាក់ទំនង។ តម្លៃខាងក្រោមអាចធ្វើទៅបាន៖
udp៖ ប្រើពិធីការដឹកជញ្ជូន UDP តិចសម្រាប់ការទំនាក់ទំនង។
tcp៖ ប្រើពិធីការដឹកជញ្ជូន TCP តម្រង់ទិសការតភ្ជាប់សម្រាប់ការទំនាក់ទំនង។
ឧបករណ៍និម្មិតត្រូវកំណត់ទៅជាឈ្មោះឧបករណ៍មួយដែលត្រូវបានរាយក្នុងផ្នែកមុន។ អតីតខ្លះamples សម្រាប់លេខសម្គាល់ឧបករណ៍ដែលមានសុពលភាពគឺ៖ udp://192.168.10.10/ pointcloud tcp://192.168.10.100/ ខាងឆ្វេង
11.3 ថ្នាំង ROS
សម្រាប់ការរួមបញ្ចូល Ruby ជាមួយប្រព័ន្ធប្រតិបត្តិការមនុស្សយន្ត (ROS) មានថ្នាំង ROS ផ្លូវការ។ ថ្នាំងនេះត្រូវបានគេហៅថា nerian_stereo ហើយអាចរកបាននៅក្នុងឃ្លាំងកញ្ចប់ ROS ផ្លូវការ។ ថ្នាំងបោះផ្សាយផែនទីមិនស្មើគ្នាដែលបានគណនា និងពពកចំណុច 3D ដែលត្រូវគ្នាជាប្រធានបទ ROS ។ លើសពីនេះ វាអាចផ្សព្វផ្សាយព័ត៌មានអំពីការក្រិតតាមខ្នាតកាមេរ៉ា និងការអាន IMU ។
ដើម្បីដំឡើងថ្នាំងនេះពីម៉ាស៊ីនមេកញ្ចប់ ROS នៅលើប្រព័ន្ធ Ubuntu Linux សូមប្រើពាក្យបញ្ជាខាងក្រោម៖ > sudo apt -get update> sudo apt -get install ros -`rosversion -d`-nerian -stereo
ព័ត៌មានលម្អិតអំពីថ្នាំងនេះអាចត្រូវបានរកឃើញនៅលើ ROS wiki ទំព័រ 2 ដែលត្រូវគ្នា។
12 ការគាំទ្រ
ប្រសិនបើអ្នកត្រូវការការគាំទ្រជាមួយការប្រើប្រាស់ Ruby បន្ទាប់មកសូមប្រើវេទិកាគាំទ្ររបស់យើងនៅ https://nerian.com/support/forum/ ឬទាក់ទង៖
Nerian Vision GmbH Zettachring 2 70567 Stuttgart ប្រទេសអាល្លឺម៉ង់
2http://wiki.ros.org/nerian_stereo
52

14 ពត៌មានប្រភពបើកចំហ
ទូរស័ព្ទ៖ +49 711 2195 9414 អ៊ីមែល៖ service@nerian.com
Webគេហទំព័រ៖ www.nerian.com
13 ព័ត៌មានធានា
ឧបករណ៍នេះត្រូវបានផ្តល់ជូនជាមួយនឹងការធានារយៈពេល 2 ឆ្នាំយោងតាមច្បាប់សហព័ន្ធអាល្លឺម៉ង់ (BGB) ។ ការធានាត្រូវបានបាត់បង់ប្រសិនបើ៖
· លំនៅដ្ឋានត្រូវបានបើកដោយអ្នកផ្សេងក្រៅពីបុគ្គលិកសេវាកម្ម Nerian Vision Technologies ផ្លូវការ។
· កម្មវិធីបង្កប់ត្រូវបានកែប្រែ ឬជំនួស លើកលែងតែការធ្វើបច្ចុប្បន្នភាពកម្មវិធីបង្កប់ផ្លូវការ។
ក្នុងករណីមានការធានា សូមទាក់ទងបុគ្គលិកជំនួយរបស់យើង។
14 ព័ត៌មានប្រភពបើកចំហ
កម្មវិធីបង្កប់របស់ Ruby មានកូដពីបណ្ណាល័យប្រភពបើកចំហ និងកម្មវិធីដែលបានរាយក្នុងតារាងទី 3 ។ កូដប្រភពសម្រាប់សមាសធាតុកម្មវិធីទាំងនេះ និងពាក្យនៃអាជ្ញាប័ណ្ណកម្មវិធីរៀងៗខ្លួនអាចទទួលបានពីព័ត៌មានប្រភពបើកចំហ webគេហទំព័រ ៦. សមាសធាតុទាំងនេះមួយចំនួនអាចមានកូដពីគម្រោងប្រភពបើកចំហផ្សេងទៀត ដែលប្រហែលជាមិនត្រូវបានរាយបញ្ជីនៅទីនេះទេ។ សម្រាប់បញ្ជីច្បាស់លាស់ សូមពិគ្រោះជាមួយកញ្ចប់ប្រភពរៀងៗខ្លួន។
ស្ថាប័ន និងបុគ្គលខាងក្រោមបានចូលរួមចំណែកក្នុងសមាសធាតុប្រភពបើកចំហផ្សេងៗ៖
Free Software Foundation Inc., Emmanuel Pacaud, EMVA និងអ្នករួមចំណែក, គម្រោងប្រភពបើកចំហរបស់ Android, Red Hat Incorporated, University of California, Berkeley, David M. Gay, Christopher G. Demetriou, Royal Institute of Technology, Alexey Zelkin, Andrey A. Chernov, FreeBSD, SL Moshier, Citrus Project, Todd C. Miller, DJ Delorie, Intel Corporation, Henry Spencer, Mike Barcroft, Konstantin Chuguev, Artem Bityuckiy, IBM, Sony, Toshiba, Alex Tatmanjants, M. Warner Losh, Andrey A. Chernov, Daniel Eischen, Jon Beniston, ARM Ltd, CodeSourcery Inc, MIPS Technologies Inc, Intel Corporation, Willow Garage Inc., NVIDIA Corporation, Advanced Micro Devices Inc., OpenCV Foundation, Itseez Inc., The Independent JPEG Group, elibThomas G. Lane, Guido Vollbeding, SimonPierre Cadieux, Eric S. Raymond, Mans Rullgard, Cosmin Truta, Gilles Vollant, James Yu, Tom Lane, Glenn Randers-Pehrson, Willem van Schaik, John Bowler, Kevin Bracey, Sam Bushell, Magnus Holmgren, Greg Roelofs, Tom Tanner, Andreas Dilger, Dave Martindale, Guy Eric Schalnat, Paul Schmidt, Tim Wegner, Sam Leffler, Silicon Graphics, Inc. Industrial Light & Magic, University of Delaware, Martin Burnicki, Harlan Stenn, Danny Mayer, The PHP Group , OpenSSL Software Services, Inc., OpenSSL Software Foundation, Inc., Andy Polyakov, Ben Laurie, Ben Kaduk, Bernd Edlinger, Bodo Möller, David Benjamin, Emilia Käsper, Eric Young, Geoff Thorpe, Holger Reif, Kurt Roeckx, Lutz Jänicke , Mark J. Cox, Matt Caswell, Matthias St. Pierre, Nils Larsch, Paul Dale, Paul C. Sutton, Ralf S. Engelschall, Rich Salz, Richard Levitte, Stephen Henson, Steve Marquess, Tim Hudson, Ulf Möller, Viktor Dukhovni
3http://nerian.com/support/resources/scenescan-open-source/
53

14 ពត៌មានប្រភពបើកចំហ
អ្នកនិពន្ធទាំងអស់ដែលរួមចំណែកដល់កញ្ចប់រួមបញ្ចូលនៅក្នុង PetaLinux ។ សូមទទួលបានបញ្ជីពេញលេញពី www.xilinx.com/petalinux ។
ប្រសិនបើអ្នកជឿថាឈ្មោះរបស់អ្នកគួរតែត្រូវបានបញ្ចូលក្នុងបញ្ជីនេះ សូមប្រាប់យើងឱ្យដឹង។
54

14 ពត៌មានប្រភពបើកចំហ

តារាងទី 3៖ សមាសធាតុប្រភពបើកចំហ។

ដាក់ឈ្មោះការអនុវត្តសេចក្តីយោង Aravis GenApi libgpiod libwebរន្ធលីនុច PTP ntp
OpenCV
OpenSSL PetaLinux PHP

កំណែ 0.6.4 បំណះ 3.1.0 1.4 2.2 3.1 4.2.8p10
3.2.0
1.1.1d 2019.2 7.3.7

អាជ្ញាប័ណ្ណ
GNU LGPL 2.0 GenICam License GNU LGPL 2.1 GNU LGPL 2.1 GNU GPL 2 BSD License MIT License BSD License libpng License JasPer License 2.0 BSD License អាជ្ញាប័ណ្ណ PHP ផ្សេងៗ

55

ប្រវត្តិកែប្រែ

14 ពត៌មានប្រភពបើកចំហ

ប្រវត្តិកែប្រែ

កាលបរិច្ឆេទកែប្រែ

ការពិពណ៌នារបស់អ្នកនិពន្ធ

v1.0

ថ្ងៃទី 28 ខែកញ្ញា ឆ្នាំ 2022 KS

v0.1

ថ្ងៃទី 23 ខែសីហា ឆ្នាំ 2022 KS

កំណែដំបូង សេចក្តីព្រាងបឋម

56

ឯកសារ/ធនធាន

កាមេរ៉ា 3D Depth Nerian Ruby [pdf] សៀវភៅណែនាំអ្នកប្រើប្រាស់
Ruby 3D Depth Camera, Ruby 3D, Depth Camera, Camera
កាមេរ៉ា 3D Depth Nerian Ruby [pdf] សៀវភៅណែនាំអ្នកប្រើប្រាស់
Ruby 3D Depth Camera, Ruby 3D, Depth Camera, Camera

ឯកសារយោង

ទុកមតិយោបល់

អាសយដ្ឋានអ៊ីមែលរបស់អ្នកនឹងមិនត្រូវបានផ្សព្វផ្សាយទេ។ វាលដែលត្រូវការត្រូវបានសម្គាល់ *