Perception
دکتر سعید شیری قیداری
& فصل 4 کتاب
Amirkabir University of Technology
Computer Engineering & Information Technology Department
اجزای روبات هوشمند
Perception Cognition
ادراک شناخت Action
عمل
Sensors Actuators
حسگر عملگر
External World
محیط خارجی
اجزای روبات هوشمند
Perception
حس کردن، ساخت مدلی از دنیای اطراف
Cognition
رفتارها، انتخاب عمل، طرح ریزی، یادگیری
همکاری بین چند روبات، کار تیمی
پاسخ به محیط، یادگیری چند عاملی
Action
حرکت، ناوبری، پرهیز از موانع
دریافت دانش از محیط
یکی از مهمترین وظایف هر سیستم خودکار دریافت دانش
از محیطش میباشد.
اینکار از طریق بکار گیری سنسورهای مختلف و استخراج
اطالعات مفید از داده های اندازه گیری شده میباشد.
رنج وسیعی از سنسورها در روباتهای خودکار مورد
استفاده قرار میگیرد. در این فصل سنسورهائی مورد توجه
قرار خواهند گرفت که برای دریافت اطالعات از محیط
بکار میروند.
مثالی از روبات
مثالی از روبات
Gas Sensor
Accelerometer Gyro
Metal Detector
Pendulum Resistive
Tilt Sensors Piezo Bend Sensor
Gieger-Muller
Radiation Sensor
Pyroelectric Detector
UV Detector
Resistive Bend Sensors
CDS Cell
Resistive Light Sensor
Digital Infrared Ranging
Pressure Switch
Miniature Polaroid Sensor
Limit Switch Touch Switch
Mechanical Tilt Sensors
IR Pin IR Sensor w/lens
Diode
Thyristor
Magnetic Sensor
Polaroid Sensor Board
Hall Effect
Magnetic Reed Switch Magnetic Field
IR Reflection
IR Amplifier Sensor Sensors
Sensor
IRDA Transceiver
IR Modulator
Lite-On IR Radio Shack Solar Cell
Receiver
Remote Receiver Remote Receiver
Compass Compass
Piezo Ultrasonic 7
Transducers
برخی سنسور های متداول
Tactile sensors
contact switch, bumpers…
Infrared sensors
Reflective, proximity, distance sensors…
Ultrasonic Distance Sensor
Inertial Sensors (measure the second derivatives of position)
Accelerometer, Gyroscopes,
Orientation Sensors
Compass, Inclinometer
Laser range sensors
Vision, GPS, …
Sensor Fusion
در روباتهای سیار معموال از تعداد زیادی سنسور استفاده
میشود زیرا یک سنسور ممکن است کافی نباشد:
سنسورها در عمل دارای نویز زیادی هستند
دقت آنها محدود است
خراب میشوند ( قابل اعتماد نیستند)
قسمت محدودی از محیط را تحت پوشش قرار میدهند
قادر به توصیف دقیق محیط نیستند
سنسور مورد عالقه ممکن است گران باشد لذا ممکن است
با ترکیب چند سنسور ارزان به هدف مورد نظر رسید
تکنیک های ترکیب اطاعات سنسور ها
داده ها از چندین منبع مختلف جمع آوری میشوند
از طریق چند سنسور مختلف اندازه گیری میشوند
از چند موقعیت مختلف اندازه گیری میشوند
در زمانهای مختلف اندازه گیری میشوند
با استفاده از یک روش ریاضی عدم قطعیت موجود در منابع
داده درنظر گرفته میشود.
روشهای بیزین
شبکه های عصبی
فیلتر کالمن
01
دسته بندی سنسورها
داخلی:
اطالعاتی را از داخل روبات اندازه گیری میکنند. مثل: سرعت موتور، زاویه مفصل
ها، ولتاژ باتری وغیره
خارجی:
اطالعاتی را از محیط روبات جمع آوری میکنند: اندازه گیری مسافت، شدت نور،
دامنه صدا
:Passive
سنسور انرژی را از محیط دریافت میکند مثل سنسور حرارتی، ، CCDو میکروفن
:Active
انرژی را به محیط فرستاده وعکس العمل محیط در مقابل آنرا اندازه گیری میکند.
اندازه گیری کارائی سنسورها
Dynamic Range
عبارت است از دامنه حد باال و پائین مقادیر ورودی به سنسور
به نحویکه سنسور قادر به عملکرد عادی خود باشد.
DR= Maximum Input/Minimum Input
معموال بر حسب دسیبل بیان میشود.
اندازه گیری کارائی سنسورها
: Range حد باالی مقادیر ورودی به سنسور
:Resolution
حداقل اختالف بین دو مقداری که توسط سنسور قابل دریافت است
Linearity
نحوه رفتار خروجی یک سنسور نسبت به تغییرات سیگنال
ورودی را مشخص میکند
یک رفتار خطی با رابطه زیر مشخص میشود.
)F(ax+by)= aF(x)+ bF(y
اندازه گیری کارائی سنسورها
Bandwidth or Frequency
برای اندازه گیری سرعت یک سنسور در آماده کردن دنباله ای از
خروجی ها بکار میرود. بعبارت دیگر تعداد اندازه گیری های
سنسور در ثانیه را به فرکانس تعبیر میکنند.
Sensitivity
عبارت است از معیاری از میزان تغییرات جزئی در سیگنال
ورودی که میتواند باعث تغییر در خروجی شود:
Output change / Input change
اندازه گیری کارائی سنسورها
Cross Sensitivity
عبارت است از حساسیت به پارامترهای محیطی که متعامد با
سیگنال اصلی هستند.
یک قطب نما میتواند در جهت یابی روبات بر اساس میدان
مغناطیسی زمین بسیار مفید باشد. اما این وسیله عالوه بر میدان
مغناطیسی زمین به مصالح ساختمانی فلزی نیز حساسیت دارد.
در نتیجه استفاده از آن برای روبات که در محیط اتاق حرکت
میکند چندان مفید نخواهد بود.
اندازه گیری کارائی سنسورها
error
عبارت است از تفاضل مقدار اندازه گیری شده و مقدار واقعی
error = m – v
Accuracy
accuracy =1-error/v
Precision
سنسوری دارای Precisionباالست که بتواند در اندازه گیری های متفاوت
از یک کمیت واحدخروجی یکسانی تولید نماید.
precision= range/σ
مشکالت کار در محیط واقعی
روبات متحرک باید وضعیت محیط اطرافش را درک کرده، آنالیز نموده و بنحو قابل
استفاده ای بازگو نماید. اما اندازه گیری در محیط واقعی که همواره در معرض تغییر است
کاری است مشکل و دارای خطا خواهد بود.
مثالی از تغییرات و خطاهای محیطی:
تغییرات شدت نور
جذب نور یا صدا توسط سطوح
انعکاس توسط سطوح
در نتیجه روبات همواره در معرض حساست تعامدی نسبت به موقعیت و دینامیک روبات
و محیط خواهد بود.
مدل کردن خطاهای تصادفی کار سختی است
تعریف خطای سیستماتیک و تصادفی برای محیط های کنترل شده امکان پذیر است ولی
برای روبات متحرک بسیار سخت است.
مدل کردن خطا
مدل کردن خطا
میتوان رفتار سنسورها را با استفاده از یک تابع احتمال مدل نمود.
از آنجائیکه معموال دانش کمی در مورد علت بوجود آمدن خطا
وجود دارد در اغلب موارد توزیع احتمال خطا بصورت متقارن در
نظر گرفته میشود. این فرض میتواند در مورد مثالهای زیر ناصحیح
باشد:
بسته به شکل محیط و نوع اشیا قرار گرفته در آن سنسور اولتراسونیک
فاصله را بیش از حد واقعی نشان میدهد. لذا برای حالتی که سیگنال
برگستی صحیح بوده و حالتی که سگنل از محیط بدرستی برنگردد به دو
مدل مختلف نیاز خواهیم داشت.
در مورد بینائی استریو کارولیشن صحیح برای همه پیکسلها اتفاق نمی افتد
و نتایج ناصحیح بدست می آید.
مکان یابی
Localization
مکان یابی روبات در محیط
یکی از قابلیت های اساسی برای یک روبات متحرک توانائی
مکان یابی است. یعنی روبات بتواند موقعیت خود در محیط را
تشخیص دهد.
روشهای مختلفی برای اینکار وجود دارد
Global Positioning System
Dead-reckoning localization
Triangulation Ranging
....
انکدرهای چرخ و یا موتورها
در اغلب روباتهای متحرک چرخدار از موتورهائی استفاده میشود که
جهت کنترل سرعت موتور مجهز به انکدر میباشند. از اینرو انکدر
سنسوری است که براحتی در دسترس است و میتوان با استفاده از آن
میزان چرخش موتور و یا چرخها را اندازه گرفت.
در انکدر از دیسکهائی استفاده میشود که با
نوارهای تیره و روشن تقسیم بندی شده اند. این
نوارها با عبور دادن نور در مکان های روشن
امکان اندازه گیری مقدار چرخش را میدهند.
Incremental Optical Encoders
A
B A leads B
ChA
ChB
DIR
Encoder pulse and motor direction
Absolute Optical Encoders
• Used when loss of reference is not possible.
• Gray codes: only one bit changes at a time ( less uncertainty).
• The information is transferred in parallel form (many wires are necessary).
Binary Gray Code
000 000
001 001
010 011
011 010
100 110
101 111
110 101
111 100
Other Odometry Sensors
• Resolver
It has two stator windings
positioned at 90 degrees.
The output voltage is
proportional to the sine or
cosine function of the
rotor's angle. The rotor is
made up of a third winding,
winding C
• Potentiometer
= varying resistance
& Odometery
Dead Reckoning
برای یک روبات چرخدار میتوان مسافت طی شده توسط روبات را با
اندازه گیری تعداد دورهائی که چرخ چرخیده است اندازه گرفت.
ادومتری عبارت است از تخمین فاصله و جهت از یک محل معلوم با
استفاده از تعداد دورهائی که چرخهای روبات چرخیده اند.
ادومتری حالتی از Dead Reckoningاست که در آن تخمین موقعیت
براساس زمان، سرعت و جهت نسبت به یک نقطه معلوم اندازه گیری
میشود.
Dead Reckoningبرای سالیان متوالی توسط دریانوردانی چون
کریستف کلمب استفاده شده است. این کار در روباتها با استفاده از انکدر
ها و یا شتاب سنجها انجام میشود.
Dead-reckoning localization
این روش مبتنی بر استفاده از سنسورهای داخلی است و
معموال با استفاده از انکدرها و سایر سنسورها تغییرات
موقعیت و جهت نسبت به فریم مرجع روبات اندازه گیری
میشود.
معموال فیدبکی از محیط دریافت نمیشود. لذا احتمال بروز خطا
در این روش وجود دارد.
روشی ساده وسریع است.
معموال در ترکیب با سایر روشها استفاده میشود.
مشکالت ادومتری
ادومتری برای تخمین موقعیت در فاصله های کوتاه و محاسبات
نسبی مفید است اما با افزایش فاصله خطا و عدم قطعیت بدون
محدودیت رشد خواهند نمود.
این عدم قطعیت ناشی از خطاهای سیستماتیک و غیر
سیستماتیک است.
خطاهای ادومتری
خطاهای غیر سیستماتیک:
بندرت قابل اندازه گیری هستند از اینرو نمیتوان آنها را در مدل
اعمال نمود. نظیر: سر خوردن چرخها، متفاوت بودن اصطکاک،
برخورد با اشیا، و اختالف سطح کف محیط
خطاهای سیستماتیک:
خطاهائی هستند که قابل اندازه گیری بوده و از طریق کالیبره کردن
قابل جبران هستند و میتوان اثر آنها را در مدل اعمال کرد. نظیر:
متفاوت بودن قطر چرخها که باعث حرکت دورانی روبات میشود، و
یا عدم قطعیت در مورد پایه چرخها که باعث خطا در زاویه چرخش
میشود.
Dead-Reckoning
β
)x+∆x, y+∆y, β)
α
(x, y, α)
Accumulated error can be
quite big for a period of time.
(0,0)
Dead-Reckoning
تاثیر خطای ادومتری در مسیر تخمین زده
شده
A robot’s path as obtained by its odometry,
relative to a given map.
سنسور جهت
برای اندازه گیری جهت روبات میتوان از سنسور داخلی مثل
ژایروسکوپ یا خارجی مثل قطب نما استفاده کرد. این سنسور
مقدار چرخش روبات را اندازه گیری میکند.
در صورت داشتن اطالعات سرعت میتوان با انتگرال گیری
تخمینی از وقعیت را بدست آورد.
قطب نما
ژایرسکوپ
ژایرسکوپ سنسوری برای اندازه گیری جهت است. دارای
المان چرخانی است که میتواند جهت چرخش خود را نسبت به
محور مشخصی ثابت نگه دارد. از اینرو اندازه مطلقی برای
جهت تولید میکند.
به دو صورت مکانیکی
و اپتیکی ساخته میشوند.
ژایرسکوپ
اصول کار ژایرسکوپ مکانیکی بر مبنای خاصیت اینرسی
یک روتور دوار سریع است:
اگر سعی کنید یک روتور سریع را در جهت محور عمودی آن تغییر
جهت دهید نیروی زیادی به دست شما وارد خواهد آمد که مقدار آن به
سرعت چرخش بستگی دارد.
برای استفاده از ژایرو در ناوبری محور چرخش آنرا در جهت
مشخصی مثال شمال-جنوب قرار میدهند.
ژایرسکوپ
اگر به محور چرخش ژایرو نیروئی
وارد شود، ژایرو با نیروئی قائم به آن
.عکس العمل نشان خواهد داد
This mass resonates with sufficient
velocity to produce a Coriolis force
when the device is subjected to
rotation. A capacitive sensing
structure that modulates the
Coriolis force is mounted
orthogonal to the mass. The
Coriolis force is then directly
related to the rotational velocity,
and internal demodulation converts
the signal into an output voltage.
In figure 1, the gyroscope is spinning on its axis.
In figure 2, a force is applied to try to rotate the spin axis.
In figure 3, the gyroscope is reacting to the input force along
an axis perpendicular to the input force
Ground-Based Active and
Passive Beacons
Introduction to GPS
What is GPS
The Global Positioning System (GPS) is a
worldwide radio-navigation system formed from a
constellation of 24 satellites and their ground
stations
GPS receivers use these satellites as reference
points to calculate positions and time
Originally known as Navigation System with
Timing And Ranging (NAVSTAR)
Global Positioning System
(GPS)
Global Positioning System
(GPS)
Global Positioning System
(GPS)
GPS Error Budget
Source Uncorrected Error Level Ionosphere
0-30 meters
Troposphere 0-30 meters
Measurement Noise 0-10 meters
Ephemeris Data 1-5 meters
Clock Drift 0-1.5 meters
Multipath 0-1 meter
Selective Availability 0-70 meters
سنسور های فاصله
اندازه گیری فاصله به روش Active rangingیکی از متداولترین
روشها در روباتهای متحرک است: یک موج صوتی و یا نوری از
طریق فرستنده ای که روی روبات نصب است به محیط ارسال میشود و
گیرنده ای که در روی روبات قرار دارد منتظر بازگشت موج منعکس
شده توسط اشیا و موانع موجود در محیط میشود. با اندازه گیری زمان
پرواز رفت و برگشت موج میتوان فاصله تا اشیا و وموانع را محاسبه
نمود.
اغلب ارزان هستند و اندازه گیری مستقیمی از فاصله را تولید میکنند.
برای تشخیص موانع بکار میروند.
برای تهیه نقشه فضای آزاد محیط بکار میروند.
رقیب جدی آنها visionاست که ممکن است از جذابیت آنها بکاهد.
اندازه گیری فاصله به روش
time of flight
دو سنسور بسیار متداول که بر مبنای خاصیت time-of-flightمورد استفاده قرار
میگیرند عبارتند از: Sonarو Laser
مسافتی که یک موج صوتی و یا نوری ( الکترومغناطیسی) در محیط طی میکند از رابطه
زیر بدست می آید:
d =c⋅t
where
;)d = distance traveled (usually round-trip
;c = speed of wave propagation
.t = time of flight
سرعت انتشار صوت در محیط 300m/sاست در حالیکه سرعت نور 000003
Km/sیعنی یک میلیون بار سریعتر است. برای مثال نور 3 متر را در 10nsطی
میکند از اینرو اندازه گیری زمان پرواز نور برای فواصل کوتاه کار بسیار مشکلی است.
عوامل موثر بر کیفیت اندازه گیری زمان
پرواز موج
Uncertainties in determining the exact time of arrival of
the reflected signal;
Inaccuracies in the time-of-flight measurement
(particularly with laser range sensors);
The dispersal cone of the transmitted beam (mainly
with ultrasonic range sensors);
Interaction with the target (e.g., surface absorption,
specular reflections);
Variation of propagation speed;
The speed of the mobile robot and target (in the case
of a dynamic target);
سنسور اولتراسونیک
سنسورهای اولتراسونیک بدلیل ارزانی و سادگی استفاده در روباتها برای
اندازه گیری فاصله، پرهیز از موانع و ساخت نقشه محیط استفاده
میشوند.
در این سنسور یک بسته صوتی با فرکانسی در حدود 40-180KHz
توسط فرستنده ارسال میشود و سیگنالی که از محیط منعکس میشود
اندازه گیری میشود. فاصله تا اشیا از طریق اندازه گیری زمان رفت و
برگشت سیگنال محاسبه میشود.
سنسور اولتراسونیک
شکل موج
موج صوتی که توسط فرستنده ارسال میشود دارای پهنای
تقریبی 03 درجه خواهد بود. به این معنا که هر شیئ که در
داخل این پهنا قرار گیرد امکان دارد که موج ارسالی را
منعکس نماید. لذا اندازه گیری با ابهام در مورد شئی منعکس
کننده همراه خواهد بود.
رینگ اولتراسونیک
برخی روباتها برای تحت پوشش قرار دادن کل محیط از یک
رینگ سونار که از تعدادی سنسور که با زاویه مشخص قرار
گرفته اند استفاده میکنند.
اسکن محیط
برای بدست آورن اطالعات محیط الزم است تا در زاویه های
مختلف اندازه گیری انجام شود.
Doorway
Robot
Length of Echo
chair chair
Scan moving from left to right
اندازه گیری در هر 51 درجه
برخی مشکالت اندازه گیری با سونار
(aاندازه گیری سونار دقیق است.
(b,cنزدیک ترین شئی به سنسور
فاصله را مشخص خواهند نمود.
(dانعکاس باعث خواهد شد تا
دیوار ناپدید شود!
(eاغلب گوشه ها سیگنالهای
بازگشتی ضعیفی تولید میکنند.
در کنج ها بدلیل بازگشت ازچند
نقطه اندازه گیری فاصله بیشتری
را برمیگرداند.
مشکالت مربوط به نویز
سنسور اولتراسونیک
سنسور اولتراسونیک
Ultrasonic Sonar Sensor
سنسور پوالروید یکی از مشهورترین
Electronic board Ultrasonic
transducer
سنسورهای سونار مورد استفاده در
روباتهاست که توسط پوالروید برای
اندازه گیری فاصله تا شئی مقابل دوربین
( برای تنظیم خودکار فوکاس) ساخته
شده است. برخی مشخصات آن:
transmitter + receiver @ 50 KHz
Residual vibrations or ringing may
be interpreted as the echo signal
Blanking signal to block any return
signals for the first 2.38ms after
transmission
در بسیاری روبات ها از یک جفت فرستنده و گیرنده
به همراه مدار الکترونیکی الزم استفاده میشود.
اندازه گیری فاصله با استفاده از لیزر
استفاده از لیزر برای اندازه گیری فاصله برتری های زیادی
نسبت به استفاده از صوت دارد.
یک باریکه نور لیزری بر روی سطح مورد نظر تابانده شده و
بازتاب آن توسط آشکار ساز نوری تشخیص داده میشود.
فاصله از روی زمان الزم برای رفت و برگشت نور تخمین
زده میشود.
با استفاده از یک سیستم مکانیکی که شامل آینه و موتور است
میتوان محیط را بصورت 2 و یا 3 بعدی جاروب کرده ونقشه
محیط را ترسیم نمود.
اندازه گیری فاصله با استفاده از لیزر
Pulsed laser
در این روش همانند اولتراسونیک یک بسته نوری به سمت
هدف ارسال شده و زمان رفت و برگشت محاسبه میشود.
اینکار نیازمند آن خواهد بود تا زمان با دقت PSاندازه گیری
شود.
Phase Shift
در این روش اختالف فاز بین نور ارسالی و برگشتی اندازه
گیری میشود. اجرای عملی این روش ساده تر است.
اندازه گیری فاصله با استفاده از لیزر به روش
Phase Shift Measurement
یک نورلیزر و یا مادون قرمز همگرا شده وبه محیط فرستاده میشود.
چون زبری اغلب سطوح ازطول موج نورتابیده بیشتراست، بازتاب نور
بصورت isotroicalبوده وقسمتی ازآن موازی با نور تابیده شده به
سمت فرستنده بازمیگردد که با نصب گیرنده مناسب میتوان آنرا دریافت
کرد.
نور با فرکانس مشخصی ارسال شده و اختالف فاز بین نور ارسالی
وبازتاب آن اندازه گیری میشود.
اندازه گیری فاصله با استفاده از لیزر
Phase Shift Measurement
طول موج سیگنال مودوالسیون از رابطه زیر بدست می آید:
که cسرعت نور و fفرکانس مدوالسین است.
کل مسافت طی شده توسط نور از رابطه زیر بدست می آید:
که qاختالف فاز نور ارسالی و دریافتی است. از لحاظ تئوری این نوع اندازه گیری با ابهام
مواجه است زیرا با طول موج l=60 mشئی در فاصله و 5 متری با شئی درفاصله 56
متری از هم قابل تشخیص نخواهندبود.
اندازه گیری فاصله با استفاده از لیزر
اندازه گیری فاصله با استفاده از لیزر
رزلوشن زاویه ای 5.0 درجه
رزلوشن عمق در حدود 5 سانتیمتر
و رنج قابل اندازه گیری بین 5cm , 20 mاست
5 اسکن 081 درجه در ثانیه انجام میدهد.
اسکن کامل محیط توسط لیزر
معموال در لیزرهای فاصله از آینه ای استفاده میشود که بر روی پایه ای
دوار نصب شده و به کمک یک موتور میتواند تا 063 چرخیده و نور
سنسور را درزوایای مختلفی به محیط بفرستد.
بدین ترتیب میتوان اطالعات دو بعدی در مورد فضای اطراف روبات
بدست آورد. میتوان با اضافه کردن یک موتور دیگر و جاروب فضا در
محور عمودی، محیط را بصورت 3 بعدی اسکن نمود.
اسکن کامل محیط توسط لیزر
یک نمونه از داده های حاصل از اسکن 063 درجه محیط در شکل نشان داده شده
است:
رزلوشن زاویه ای 5.0 درجه
رزلوشن عمق در حدود 5 سانتیمتر
و رنج قابل اندازه گیری بین 5cm , 20 mاست
5 اسکن 081 درجه در ثانیه انجام شده است.
این سنسور برتری محسوسی نسبت به سونار دارد.
اندازه گیری فاصله با استفاده از لیزر
مشکالت
قادر به تشخیص اشیا شفاف مثل شیشه نیست
برگشت نور ازاشیا صیقلی باعث عدم دریافت نور توسط گیرنده و در
نتیجه عدم تشخیص فاصله میگردد.
Triangulation Ranging
این روشها با استفاده از خواص هندسی به اندازه گیری فاصله
میپردازند
معموال یک پترن نوری به محیط فرستاده شده و انعکاس آن
توسط گیرنده ای دریافت میشود و با داشتن اطالعات هندسی
مشخص فاصله اندازه گیری میشود. این عمل ممکن است
بصورت یک بعدی و یا دو بعدی انجام شود.
)Optical Triangulation (1D
یک باریکه نور همگرا شده به هدف فرستاده شده و انعکاس آن
توسط یک عدسی بر روی صفحه حساس به فاصله انداخته
میشود. با استفاده از روابط هندسی فاصله بصورت زیر
محاسبه میشود.
)Optical Triangulation (1D
این فاصله با 1/xنسبت معکوس دارد لذا رزلوشن سنسور
برای اشیاء دور کمتر خواهد بود.
در روباتیک از آن برای اندازه گیری فاصله اشیا تا 2 متر
استفاده میشود ولی کاربرد مهمتر این سنسور در صنایع برای
اندازه گیری های دقیق در حدود1 میکرومتر است.
سنسور ارزان قیمت ساخته شده توسط
Sharpاستفاده فراوانی در روباتهای
متحرک برای اندازه گیری فاصله در رنج 8
تا 08 سانتیمتری دارد.
)Optical Triangulation (2D
با جایگزینی یک دوربین CCDبجای سنسور حساس به فاصله
میتوان روش فوق را به دو بعد گسترش داد.
در اینحالت فرستنده یک پترن مشخص نوری (structured
) lightرا برروی هدف می تاباند ودوربین انعکاس نور تابیده
را دریافت میکند.
این روش در تاریکی و نور کم
هم قابل استفاده است و مشکل
Correspondenceسیستم
های استریو را ندارد.
)Optical Triangulation (2D
مقادیر اندازه گیری شده توسط
سنسور عبارتند از زاویه aو فاصله
تصویر بدست آمده یک نقطه تا مبدا
تصویر.
با استفاده از روابط هندسی داریم:
)Optical Triangulation (2D
دقت سنسور در اندازه گیری را میتوان توسط روابط زیر نشان داد:
با توجه به روابط فوق داریم:
با افزایش bرزلوشن سنسور بیشتر میشود اما اندازه سنسور هم بزرگتر
خواهد شد.
با افزایش فاصله کانونی fرزلوشن بیشتر میشود اما اندازه سنسور هم
بزرگتر خواهد شد.
با ارزانتر شدن لیزر اسکنرها کاربرد این نوع از سنسور به موارد
تحقیقاتی گسترده شده است.
سنسورهای سرعت و حرکت
سنسورهائی وجود دارند که میتوانند مستقیما حرکت نسبی بین
روبات و محیط را اندازه بگیرند.
برای روباتهائی که در بزرگراه ها حرکت میکنند استفاده از
سنسورهای Dopplerتنها راه تشخیص اشیا میباشد.
در این سیستمها از هر دو امواج صوتی و الکترومغناطیسی
استفاده میشود.
سنسورهای سرعت و حرکت
شتاب سنج
اندازه گیری فاصله با استفاده از شتاب
اندازه گیری جهت
Inertial measurement unit
An inertial measurement unit, or IMU, is an
electronic device that measures and reports on a
craft's velocity, orientation, and gravitational forces,
using a combination of accelerometers and
gyroscopes.
The IMU is the main component of inertial
navigation systems used in aircraft, spacecraft,
watercraft, and guided missiles among others.
An IMU works by detecting the current rate of
acceleration using one or more accelerometers, and
detects changes in rotational attributes like pitch, roll
and yaw using one or more gyroscopes.
اندازه گیری فاصله با استفاده از سنسور
بینائی
بینائی قویترین حس آدمی است
بینائی پیچیده ترین حس آدمی نیز بشمار میرود.
هنگامی که توسط یک دوربین از یک شیئ سه بعدی تصویر برداری
میشود، اطالعات بعد سوم یعنی عمق یا فاصله شیئ بصورت دو بعدی
تصویر خواهد شد.
استخراج اطالعات بعد سوم از یک تصویر دو بعدی کار ساده ای نیست.
از روشهائی نظیر بینائی استریو، triangulationو یا روشهای مبتنی
بر فوکاس میتوان برای بدست آوردن اطالعات بعد سوم استفاده نمود.
سنسورهای بینائی
Vision Sensors
CCD (light-sensitive, discharging capacitors
of 5 to 25 micron )
CMOS (Complementary Metal Oxide
Semiconductor technology )
Visual Range Sensors
اگر اطالعاتی در مورد اندازه اشیا وجود داشته باشد امکان
اندازه گیری فاصله از روی اندازه وجود خواهد داشت ولی
معموال چنین نیست.
راه حل کلی استفاه از چندین تصویر مختلف است تا اطالعات
اضافی مورد نیاز بدست آید.
دو روش مختلف:
Depth from focus/defocusاز اختالف پارامترهای دوربین
ها استفاده میکند.
Stereo visionاز اختالف دید دوربین ها استفاده میکند.
اندازه گیری فاصله از طریق فوکاس/دی
فوکاس
ایده اصلی در این روش استخراج فاصله از طریق اندازه گیری
پارامترهای دوربین است.
در این روش برای حل مسئله اندازه گیری عمق تصویردو و
یا چند تصویر از صحنه گرفته میشود. اختالف تصاویر در
فاصله کانونی و یا فاصله صفحه تصویر میباشد.
اندازه گیری فاصله از طریق فوکاس
اندازه گیری فاصله از طریق فوکاس
اندازه گیری Sharpness
برای اندازه گیری وضوح تصویر از روابط زیر استفاده
میشود.
Depth from defocus
در این روش از یک صحنه دو و یا چند تصویر با پارامترهای
مختلف دوربین گرفته میشود.
اطالعات مربوط به فاصله از تصویر سه بعدی حاصل
استخراج میشود.
تصویر فوکاس شده
اگر یک شی در مقابل دوربین Pineholeقرار گرفته باشد،
تصویر فوکاس شده یک نقطه x,yاز تصویرآن با )F(x,y
نشان داده شده و برابر است با شدت نوری که از آن نقطه به
تصویر میرسد.
تابع point spread functionبصورت زیر تعریف میشود:
مقدار نور تابش شده از نقطه Pشی در تصویر فوکاس شده که در
تصویر بدون فوکاس دخالت میکند.
Point Spread Function
با فرض اینکه blur circleدارای شدت نور یکنواختی است
این تابع بصورت زیر تعریف میشود:
آزمایشات
Best reported result is 1.3% RMS error in
terms of distance from the camera when the
target is about 0.9 m away .
The key problems are the measurement of
difference of blurring amount and the
calibration of the mapping between depth and
the difference of blurring.
استریو ویژن
با استفاده از دو دوربین میتوان به یک ادارک 3 بعدی از محیط
دست پیدا کرد. در عمل چنین سیگنالی پیچیده و همراه با نویز
خواهد بود.
هر دوربین منظره ای با تفاوتی اندک را ثبت خواهد نمود.
فاصله بین نقاط متناظر در دو تصویر را stereo disparity
میگویند
disparity
Stereo Vision
در حالت ساده اگر محور اپتیکی دو دوربین مطابق شکل موازی باشند برای مختصات
یک نقطه در دو تصویر داریم:
Stereo Vision
فاصله نسبت معکوس با disparityدارد
اشیا نزدیکتر را با دقت بیشتری میتوان اندازه گرفت
مقدار disparityبا bرابطه مستقیم دارد
برای یک مقدار خطای disparityثابت دقت اندازه گیری عمق با افزایش b
بیشتر خواهد شد.
اما این امکان وجود دارد که با افزایش bبرخی اشیا فقط در یک تصویر دیده
شوند.
نقطه ای که در هر دو تصویر قابل رویت باشد، تشکیل یک زوج
conjugateدر تصاویر حاصله خواهد داد که با دانستن محل یکی
میتوانیم در خطی با نام epipolarبدنبال دیگری بگردیم. در مثال شکل
قبل این خط موازی محور xاست.
اندازه گیری فاصله به روش استریو
The amount of disparity is related to distance
the difficulty lies in identifying corresponding points
The general principle is
left and right images are digitized
raw images are rectified for distortion / misalignment
rectified images are filtered to enhance textures+edges
a stereo matching algorithm is applied
modern techniques search along horizontal scan lines to find the best
set of matching pixels (e.g. mean-squared-error)
raw disparity map is filtered to remove noise
This can now be done on modern computers
e.g. Pentium P-4 @ GHz at interactive frame rates
Stereo Vision – the general
case
در حالت کلی ممکن است فرض موازی بودن محور اپتیکی
.دو دوربین صحیح نباشد
.مقادیر ماتریس دوران از طریق کالیبراسیون بدست میاید
We have 12 unknowns and require 12 equations:
we require 4 conjugate points for a complete calibration.
Note: Additionally there is a optical distortion of the image
سوال اساسی
نقاط مزدوج در دو تصویر را چگونه میتوان پیدا کرد؟
How do we solve the correspondence
?problem
کدامیک از المانهای تصویر باید با هم مقایسه شوند؟
دو روش وجود دارد:
)Pixel/area-based (lower-level
)Feature-based (higher-level
مشکالت پیدا کردن نقاط مرتبط
المانهای تصویری ممکن است در دو تصویر یکسان دیده
نشوند. برخی دالیل این امر عبارتند از:
مسایل مربوط به دوربینها.
وجود نویز در تصاویر، گین متفاوت دوربین ها، کنتراست متفاوت
مسایل مربوط به زاویه دید تصاویر.
اعوجاج پرسپکتیو
پوشیده شدن نقاط
انعکاس
نصب دوربین ها
سعی میشود تا دوربین های انتخاب شده از هر دو جهت یکسان
باشند.
دوربین ها بصورت کامال موازی هم نصب شوند.
انتخاب فاصله بین دو دوربین دارای ویژگی های زیر است:
فاصله کم: پیدا کردن نقاط یکسان دوتصویر ساده تر است
فاصله زیاد: درک بهتری از عمق وجود خواهد داشت
پیدا کردن نقاط یکسان
برای پیدا کردن هر نقطه یک تصویر در تصویر دیگر عمل
جستجو در روی یک خط با نام Epipolar lineانجام
میشود.
با استفاده از پنجره های همسایه به جستجوی مشابه ترین ناحیه
پرداخته میشود.
پیدا کردن نقاط یکسان
:برخی از معیارهای تشابه بین ناحیه ها عبارتند از
•SAD (sum of absolute differences)
•SSD (sum of squared differences)
•CC (cross-correlation)
برخی از پارامترهای مهم در انتخاب اندازه
:پنجره عبارتند از
•Ambiguity
•Noise sensitivity
•Sensitivity towards viewpoint-
related distortions
•Expected object sizes
•Frequency of depth jumps
Zero Crossing of Laplacian of
Gaussian
روش Zero Crossing of Laplacian of Gaussian
یکی از تکنیک های متداول برای یافتن نقاط مزدوج میباشد.
روشی است برای یافتن نقاطی در تصاویر سمت راست و چپ
که پایدار بوده و بخوبی با هم انطباق پیدا میکنند.
این روش در نرم افزار و سخت افزار پیاده شده است.
هسته این روش را الپالسین تصویر تشکیل میدهد:
Zero Crossing of Laplacian of
Gaussian
برای اینکه بتوان رابطه فوق را برای یک تصویر دیجیتال
محاسبه نمود آنرا با یک کانولوشن تقریب میزنند:
kernel
مثال
Step / Edge Detection in Noisy Image
حذف نویز
برای کاهش اثر نویز ابتدا با استفاده از اپراتور گاوسی روی
تصویر هموار سازی بعمل میاید.
filtering through Gaussian smoothing
مثال
left images right images
اعمال الپالسین بر روی
تصویر هموار شده باعث
spike بوجود آمدن
edge filtered مثبت و منفی در محل لبه
.ها خواهد شد
b1 and b2: vertical edge filtered
confidence image depth image left and right image;
filter = [1 2 4 -2 -10 -2 4 2 1]
c: confidence image:
bright = high confidence (good texture)
d: depth image:
bright = close; dark = far
Zero Crossing of Laplacian of
Gaussian
یک ویژگی بسیار موثر برای برای پیدا کردن
correspondenceبین تصاویر راست و چپ میتواند
zero crossingالپالسین تصویر هموار شده باشد LoG
Zero crossingدارای عرضی برابر با یک پیکسل است و
بخوبی در تصاویر قابل محاسبه است.
Color Tracking Sensors
Motion estimation of ball and robot for soccer
playing using color tracking
Representing Colors in an
RGB Image
How do We Segment a
“Single” Color?
We need to model it mathematically a priori
Simple RGB Color
Segmentation
Grouping, Clustering: Assigning
Features to Features