Perception دکتر سعید شیری قیداری کتاب 4 & فصل Amirkabir University of Technology Computer Engineering & Information Technology Department.
Download
Report
Transcript Perception دکتر سعید شیری قیداری کتاب 4 & فصل Amirkabir University of Technology Computer Engineering & Information Technology Department.
Perception
دکتر سعید شیری قیداری
کتاب4 & فصل
Amirkabir University of Technology
Computer Engineering & Information Technology Department
نمایش عدم قطعیت
تعریف خطا :اختالف بین اندازه گیری سنسور و مقدار واقعی
نمایش آماری :میخواهیم از لحاظ آماری مشخصات خطای یک سنسور
را برای هر اندازه گیری پیدا کنیم.
اگر اندازه گیری را بصورت یک مسئله تخمین بیان کنیم ،هدف تخمین
مقدار خطا از روی nمقدار اندازه گیری شده است.
)E[X]=g(p1,p2,…,pn
توزیع احتمال خطا
میتوان ویژگیهای آماری مقدار خطا را با یک تابع توزیع
احتمال نشان داد
توزیع نرمال
معموال وقتی که مدل بهتری برای نمایش خطا نداشته باشیم از
توزیع نرمال استفاده میکنیم.
این توزیع خواص ریاضی بهتری نسبت به سایر روشها دارد.
استقالل متغیرهای تصادفی
در روبات متحرک فرض استقالل مقادیر اندازه گیری شده کاربرد
فراوانی دارد.
برای مثال درروباتی که با دو لیزر چپ و راست فاصله ها را اندازه
گیری میکند مقادیر اندازه گیری شده مستقل از هم خواهند بود.
این فرض برای دو متغیر تصادفی X1, X2بصورت زیر است:
]E[X1 X2]= E[X1] E[X2
) Var([X1 +X2)=Var(X1 )+Var(X2
انتشار خطا
روبات متحرک مجبور است تا برای استخراج اطالعات از محیط اندازه
گیری های زیادی انجام نموده و داده های آنها را با هم ترکیب نماید.
اما سیگنالهای حاصل از سنسورها همواره همراه با عدم قطعیت است.
معموال مایل هستیم که بدانیم:
منبع عدم قطعیت کدامست
چگونه میتوان عدم قطعیت را نمایش داد
نحوه انتشار عدم قطعیت یک مقدارچگونه است
عدم قطعیت حاصل از قرائت های سنسورهای مختلف کدامست
مثالی ازانتشار خطا
فرض کنید که یک روبات متحرک
با استفاده از سنسوری قادر به اندازه
گیری فاصله نقاطی از یک دیوار
است .هر یک از اندازه گیری ها با
عدم قطعیت همراه خواهند بود.
در اینجا میخواهیم بدانیم در صورتی که عدم قطعیت اندازه
گیری هر یک از نقاط را بدانیم ،مقدار عدم قطعیت دراندازه
تخمین محل خط استخراج شده چقدر خواهد بود.
سیستم انتشار خطا
سیستم انتشار خطا یک سیستم دارای چندین ورودی و خروجی
است.
میخواهیم از روی توزیع احتمال خطا برای سیگنال ورودی
Xiتوزیع احتمال خطا برای سیگنال خروجی Yiرا محاسبه
نمائیم.
قانون انتشار خطا
برای مسایلی که انتشار خطا غیر خطی است میتوان نشان داد
که ماتریس کوواریانس خروجی از قانون انتشار خطای زیر
بدست میآید:
استخراج ویژگی
یک روبات متحرک باید بتواند با اندازه گیری از طریق
سنسورها و تعبیر اطالعات موجود در آن رابطه خود با
محیطش را بدست آورد.
برای اینکار نیازمند مدلی از محیط خواهیم بود که به کمک آن
بتوانیم داده های سنسورها را تابیر کنیم.
استخراج ویژگی
وقتی که سنسور اطالعاتی را اندازه گیری میکند به طریق
میتوان از این اطالعات استفاده نمود:
تعیین رفتار روبات با استفاده از اطالعات خام
استفاده از اطالعات سنسورها برای بروز کردن یک مدل و
تعیین رفتار روبات از بصورت تابعی از مدل
استخراج اطالعات مفید از سنسورها و ایجاد یک درک سطح
باال از آن
ویژگی
ویژگی و یا featureبه ساختارهای قابل تشخیص در محیط گفته میشود.
ویژگی ها قابل استخراج از اندازه گیری ها بوده و قابل بیان توسط
روابط ریاضی هستند.
ویژگی ها را میتوان بصورت low level ,high levelدسته بندی
نمود.
low-level features (geometric primitives) like lines,
circles
high-level features like edges, doors, tables or trash
cans.
درروبات متحرک از ویژگی ها در ساختن مدل محیط بویژه برای مکان
یابی و ساختن نقشه محیط استفاده میشود.
مدل کردن محیط
استفاده از اطالعات خام:
استفاده از ویژگی های سطح پائین نظیر خطوط و دایره:
حجم زیادی دارند ،میتوان از هر بیت اطالعاتی بصورت مستقل استفاده نمود.
حجم اطالعات را کاهش میدهد ،اطالعات ضعیف و ناقص حذف میشوند.
استفاده از ویژگی های سطح باال مثل اشیا ،درب ،دیوارها:
حجم اطالعات بسیار کاهش می یابد ،خطر از بین رفتن اطالعات در اثر فیلترینگ
مرحله استخراج ویژگی وجود دارد.
مثالی از استخراج ویژگی
استخراح ویژگی بر اساس اطالعات فاصله
اغلب ویژگی های استخراج شده از سنسورهای فاصله شامل
ویژگیهای هندسی ابتدائی نظیر خط و دایره میشود.
در محیط های داخل اتاق اطالعاتی نظیر خطوط بسیار
سودمند هستند .
اطالعات اندازه گیری شده با یک مدل و یا templateاز
پیش تعیین شده تطبیق داده میشوند.
بعلت وجود خطا در اندازه گیری این مسایل بصورت یک
مسئله optimizationبررسی میشوند.
استخراج اطالعات یک خط از داده های
سنسور فاصله Line Extraction
میخواهیم مطابق شکل زیر با استفاده از اندازه گیرهای انجام
شده توسط یک سنسور فاصله ویژگی های یک خط را
استخراج نمائیم.
•بعلت وجود خطا در اندازه گیری نقاط یک
خط واحدی که از تمام نقاط عبور کند وجود
نخواهد داشت .از اینرو ناگزیر هستیم بهترین
خطی که از نقاط عبور میکند را برگزینیم.
استخراج خط
فرض کنید اندازه گیری ها در مختصات قطبی انجام شده باشد).xi=(ri, qi
هر اندازه گیری را میتوان با دو متغیر تصادفی مدل کرد:
)Xi=(Pi,Qi
در این بررسی فرض میشود که عدم قطعیت مقادیر P, Qمستقل از هم
باشد .از اینرو:
]E[Pi,Pj,]= E[Pi] E[Pj
]E[Q i, Q j,]= E[Q i] E[Q j
]E[Pi, Q j,]= E[Pi] E[Q j
همینطور فرض میشود که اندازه گیری ها
دارای توزیع احتمال گوسی باشند
استخراج خط
اگر خطا در اندازه گیری وجود نداشت میشد فرض کرد که
تمام نقاط در روی خط زیر قرار دارند:
rcos(q-a) –r=0
بدیهی است که بعلت وجود خطا این معادله برقرار نخواهد بود.
rcos(q-a) –r=d
r
q
در برخی از روشهای استخراج ویژگی از این فاصله
عمودی بعنوان معیاری برای خطا استفاده میشود
استخراج خط
بازا ی هر اندازه گیری میتوان فاصله عمودی را بصورت
زیر نوشت:
ricos(qi-a) –r=di
اگر همه اندازه گیری های به یک اندازه خطا داشته باشند
میتوان مجموع خطا را بصورت زیر نوشت:
r i cos(q i a )r
2
میتوان با استفاده از روابط زیر خطا را مینیمم نمود
unweighted least squares solution
S
0
r
S di
2
i
i
S
0
a
استخراج خط
اعمال وزن به اندازه گیری ها:
در عمل ممکن است اندازه گیری نقاط مختلف با خطاهای
متفاوتی انجام شده باشد ،مثال در یک سیستم مبتنی بر استریو
مقدار خطا با افزایش فاصله زیادتر میشود .در اینصورت
میتوان با استفاده از انحراف معیار اندازه گیری وزنی را
بصورت زیر برای هر داده تعریف نمود:
1
2
i
w
i
در اینصورت مجموع خطا برابر است با:
r i cos(q i a )r
2
S wi d wi
2
i
i
i
استخراج خط
میتوان نشان داد که در صورت استفاده از رابطه فوق مقادیر
زیر برای خط قابل محاسبه خواهند بود:
استخراج خط
مثالی از اعمال روش فوق به 17داده حاصل از یک لیزر:
استفاده از هیستوگرام
هیستوگرام روشی ساده برای ترکیب ویژگی هاست.
یک هیستوگرام زاویه اطالعات آماری حاصل از خطی که با
اتصال دو نقطه مجاور بدست میآید را نشان میدهد .
شکل بعد نقاط حاصل از اسکن 360درجه یک اتاق و
هیستوگرام زاویه ای حاصل را نشان میدهد.
هرپیک بلند موجود در هیستوگرام مربوط به جفت دیوارهای
موازی است.
استفاده از هیستوگرام
استخراج ویژگی از تصاویر )(vision
مراحل
Conditioning
Labeling
Identification of the events by collecting together pixel
participating in the same kind of event
Extracting
Determination of the spatial arrangement of the events, i.e.
searching for a structure
Grouping
Suppresses noise
Background normalization by suppressing uninteresting
systematic or patterned variations.
Done by: gray-scale modification (e.g. trasholding) (low
pass) filtering
Compute a list of properties for each group
Matching
آماده سازی تصویر
تمامی سنسورهای ویژن تصویر را به همراه مقدار قابل
توجهی نویز تحویل میدهند .از اینرو قبل از هر الگوریتم
استخراج ویژگی الزم است تا تصویر از نویز تمیز شود
هموار سازی تصویر
بسیاری از الگوریتم های پردازش تصویر از مشتق دوم شدت
نور تصاویر استفاده میکنند .بعلت حساسیت زیاد این روشها به
تغییرات روشنائی الزم است تا سیگنال تصویر هموار گردیده
و نویز آن حذف شود ). (smoothing
یک روش استاندارد انجام کانولوشن با یک تابع گاوسی است
که بصورت زیر تقریب زده میشود.
I GI
1 2 1
1
G 2 4 2
16
1 2 1
تشخیص لبه
لبه به نواحی از یک تصویر گفته میشود که دارای تغییرات
قابل توجهی در brightnessباشند .
تشخیص لبه باعث کاهش در مقدار اطالعات موجود در
تصویر میشود .فرض بر این است که لبه ها مربوط به نواحی
مهمی از تصویر باشند )در عمل ممکن است نویز و یا لبه
های پیدا نشده این فرض را باطل کند(.
تشخیص لبه
تصویر سقف و لبه تشخیص داده شده برای آن
مشکالت تشخیص لبه
در تصاویر گرفته شده توسط دوربین مقدار قابل توجهی نویز وجود دارد.
اگر صرفا از مشتق گیری استفاده شود وجود نویز باعث بوحود آمدن
پیک هائی خواهد شد که عمل تشخیص لبه را مشکل خواهد نمود.
از اینرو اکثر روشهای تشخیص لبه از ترکیب هموارسازی و مشتق
گیری استفاده میکنند.
تشخیص لبه توسط روش Canny
در سال 1983توسط John Cannyاختراع شد.
تصویر Iبا یک تابع گوسی کانوالو شده و ماکزیمم تصویر
مشتق گیری شده جستجو میشود.
این روش مراحل الزم برای تشخیص لبه یعنی هموارسازی و
مشتق گیری را در یک مرحله انجام میدهد.
(G I ) ' G ' I
تشخیص لبه توسط روشCanny
تصویر بجای کانوالو شدن با تابع گوسی با مشتق آن کانوالو میشود
(G I )' G ' I
تشخیص لبه توسط روشCanny
مراحل انجام در یک بعد:
تصویر Iبا ’ Gکانوالو میشود تا نتیجه Rبدست آید
قدر مطلق Rبدست میآوریم
مقادیری از | |Rرا که از یک مقدار آستانه بیشتر هستند
عالمت میگذاریم .مقدار آستانه طوری انتخاب میشود که پیک
های ناشی از نویز حذف شوند.
: Canny تشخیص لبه توسط روش
مثال یک بعدی
(a) Intensity 1-D profile of an ideal step edge.
(b) Intensity profile I(x) of a real edge.
(c) Its derivative I’(x).
(d) The result of the convolution R(x) = G’ I, where
G’ is the first derivative of a Gaussian function.
تشخیص لبه توسط روشCanny
در حالت دو بعدی به خاطر اینکه ’ Gجهت دار است نیاز به
اعمال دو فیلتر عمود بر هم خواهیم داشت.
تشخیص لبه توسط روشCanny
الگوریتم تشخیص لبه در هر جهت دلخواه:
تصویر )I(x,yرا با ) fV(x,yو ) fH(x,yکانوالو کنید تا مقادیر گرادیان
)Rv(x,yو ) RH(x,yبدست آید.
مقدار مربع مقادیر گرادیان را محاسبه کنید:
)R (x,y)= R2H(x,y)+ R2V(x,y
مقادیری از ) R (x,yرا که از یک حد آستانه بیشتر هستند عالمت
گذاری کنید.
با روش nonmaxima suppressionمقادیری از گرادیان را که
بصورت ماکزیمم محلی نیستند با صفر عوض کنید .اینکار عرض لبه ها
را به یک پیکسل تغییر خواهد داد.
مجموعه ای از نقاطی که مجاور هم هستند را پیدا کرده و در یک لیست
مرتب شده قرار دهید .با استفاده از یک حد آستانه لبه های ضعیف را
حذف کنید.
Nonmaxima Suppression
خروجی یک اپراتور تشخیص لبه
معموال یک تصویر سیاه و سفید است
که در آن مقادیر گرادیانی که بیشتر
از یک حد آستانه هستند بصورت سیاه
و سایر نقاط بصورت سفید ظاهر
میشوند.
عمل Nonmaxima
Suppressionباعث بوجود آمدن
کانتورهائی میشود که عرض آنها فقط
یک پیکسل میباشد.
Cannyتشخیص لبه توسط روش
مثال دو بعدی
a) Example of Canny edge detection
b) After nonmaxima suppression
تشخیص لبه به روش گرادیان
معموال یک روبات متحرک اگر بخواهد بصورت بالدرنگ
عمل نماید با مشکل کمی زمان مواجه یوده و ممکن است قادر
به استفاده از روش Cannyبرای تشخیص لبه نباشد .در
چنین مواردی از روشهای ساده شده این الگوریتم استفاده
میشود.
در این روشها از تصویر با ماسکهای از پیش تعیین شده ای
کانوالو میشود.
Roberts
Prewitt
Sobel
تشخیص لبه به روش گرادیان
Sobel مثالی از روش
a) Raw image
c) Thresholding
b) Filtered (Sobel)
d) Nonmaxima suppression
مقایسه روشهای تشخیص لبه
Seconds
زمان الزم برای تشخیص لبه در یک تصویر780 x 560
Roberts
Prewitt
زمان محاسبه لبه با دقت الگوریتم متناسب است!
Sobel
Canny
5x5
Canny
7x7
پیدا کردن حد آستانه بصورت پویا
بسیاری از الگوریتم های پردازش تصویر نیازمند استفاده از یک حد
آستانه هستند.
برای یک روبات متحرک استفاده از مقدار ثابت نمیتواند مفید باشد زیرا
روبات در محیطی پویا در حال حرکت است و روشنائی محیط دائم در
حال تغییر میباشد.
این امکان وجود دارد که با بررسی آماری تصویر مورد پردازش مقدار
آستانه را تعیین نمود.
در مورد حد آستانه تشخیص لبه میتوان از هیستوگرام مقادیر گرادیان
استفاده نموده و فقط تعداد nپیکسل که دارای بیشترین مقدار هستند را
انتخاب نمود.
مقدار گرادیان نقطه ای که nمشخص میکند بعنوان حد آستانه انتخاب
میشود.
پیدا کردن حد آستانه بصورت پویا
(a) Number of pixels with
a specific gradient
magnitude in the
image of Figure 1.2(b).
(b) Same as (a), but
with logarithmic
scale
تبدیل هاف
Hough Transform
تبدیل هاف روشی ساده برای پیدا کردن یک شکل مشخص در
تصویر میباشد .این روش برای منحنی هائی استفاده میشود که
قابل بیان در فضای پارامتر باشند.
هر نقطه xp,ypمتعلق به یک خط با معادله y = m x + b
باید محدویت yp = m xp + bرا داشته باشد.
تبدیل هاف نقاط یک تصویر را برای پیدا کردن mو bکه
تشکیل یک خط میدهند را مورد جستجو قرا ر میدهد.
تبدیل هاف برای یک خط
b
y
b
1
P3
1
P2
P3
P3
P2
P2
P1
1
P1
P1
a
x
Points of a line
Points in Hough space
( y=ax+b )
x
y
b=( -x) a+y
P1
0
1
b=1
P2
1
2
b=-a+2
P3
2
3
b=-2a+3
1
1
1
3
1
1
1
1
1
1
Digitizes line
intersection in
Hough space
(Voting)
a
تبدیل هاف برای یک خط
الگوریتم
یک آرایه دو بعدی ] A [m,bتشکل دهید که محورهای آن را mو b
تشکیل داده باشند.
آرایه فوق را با صفر عدد دهی اولیه نمائید.
برای هر پیکسل ) (xp, ypموجود در تصویربرای تمام مقادیر mو b
اگر رابطه
yp = m xp + b
برقراربود مقدار ]A [m,bرا یک واحد افزایش دهید.
مقادیر جدول را حستجو نموده و سلولهای با بیشترین مقدار Aرا پیدا
کنید .هر سلول مقداری برای mو bمشخص میکند که به یک خط در
تصویر تعلق دارد.
تبدیل هاف برای یک دایره
xi a yi b r
برای دایره با معادله
میتوان آنرا بصورت پارامتریک زیر نوشت
y b
tan ψ π 2
a
2
2
a x b y r
2
2
i
i
2
2
i
i
x
y
i
a x i rcos( ψi π/2)
Pi ( x i , yi )
b yi rsin( ψi π/2)
( a, b)
b tan ψ π 2 a xi y
i
0
i
xi
a
x
r
r
o
i
yi
o
b
a
i-/2
b
استخراج کف زمین
Floor plane extraction
برای پیدا کردن سطحی از زمین که روبات بتواند در روی
آن حرکت کند استفاده میشود.
در بسیاری از روشهای پیاده سازی شده از اطالعات لبه ها و
رنگ استفاده میشود.
برای مواردی مفید است که:
اشیا و موانع از لحاظ ظاهری با کف زمین تفاوت داشته باشند.
کف زمین صاف بوده و زاویه آن با روبات مشخص باشد.
موانعی که از سقف آویزان شده باشند وجود نداشته باشد.
استخراج کف زمین
Floor plane extraction
مراحل:
در مرحله پیش پردازش تصویر با یک گاوسین هموارسازی
میشود.
یک آرایه هیستوگرام Hبا nمقداربرای شدت تصویر مربوط
به نمونه کف ایجاد میشود که مقادیر اولیه آن بصورت زیر
باشد.
H[i]=0 for i=1,...,n
برای هر پیکسل در تصویر هموارشده مقدارهیستوگرام
مربوطه یکواحد افزایش داده میشود H[If(x,y)] +=1
استخراج کف زمین
Floor plane extraction
گاهی اوقات چندین هیستوگرام یک بعدی از شدت تصویر،
Hueو saturationایجاد میشود.
برای دسته بندی یک پیکسل بعنوان کف زمین و یا مانع،
مقدار شدت آن پیکسل با مقادیر موجود در هیستوگرام مقایسه
شده و اگر از یک مقدار آستانه کمتر بود بعنوان مانع و در
غیر اینصورت بعنوان کف زمین عالمت گذاری میشود.
این روش برای کاربردهای داخل و خارج اتاق نظیر
ویلچیرهای خودکار و روباتهای چمن زن استفاده شده است.
استخراج کف زمین
Floor plane extraction