آخرين ارسالهاي انجمن

بازگشت   انجمن میهن دانلود > برنامه نويسي > برنامه نويسي ويژوال بيسيك > اموزش های برنامه نویسی

پاسخ
 
LinkBack ابزارهای تاپيك نحوه نمایش
قدیمی 08-20-2008, 12:35 PM   #1 (permalink)
مدير کل انجمن و سایت
Admin
 
rahimonline آواتار ها
 
تاریخ عضویت: Mar 2007
محل سکونت: BONAB
پست ها: 6,048

درجه: 55 [♥ Bé-Yêu ♥♥ Bé-Yêu ♥♥ Bé-Yêu ♥♥ Bé-Yêu ♥♥ Bé-Yêu ♥]
سابقه: 2027 / 2027
سحر و جادو: 2016 / 6827
تجربه: 7%

تشکر: 833
881 بار در 765 پست از ایشان تشکر شده است
Activity Longevity
19/20 20/20
Today پست ها
sssss6048
rahimonline به AIM ارسال پیام rahimonline به Yahoo ارسال پیام فرستادن پیام با Skype به rahimonline
Smile مقدمه ای بر پردازش تصوير

اولين گام پردازش تصوير کار با رنگ نقاط (pixel) هستش. اما بايد بگم توی حالت عادی شما ۳ درجه رنگی از ۳ رنگ اصلی آبی و سبز و قرمز برای هر نقطه داريد که با کم و زياد شدن شدت هر مولفه اصلی رنگ حاصل تغيير ميکنه . اما تو پردازش تصوير اين فرمت اصلا به درد نمی خوره ! دليلش اينه که شما معمولا نياز به تشخيص يه محدوده رنگی خاص داريد مثلا رنگ حول و حوش صورتي, حالا با ۳ رنگ اصلی چطور می خوايد اين محدوده رو تعيين کنيد ؟! ميشه گفت محاله ممکنه يا بهتر بگم اصلا عقلانی نيست دنبالش بريد.!!!
پس بايد دنبال شيوه ای برای اون باشيم!
برای هر رنگ ما ۳ مشخصه می تونيم نام ببريم :
۱- نام رنگ (چيز بهتری گير نيووردم بهش بگم -> Hue ) :
اين يعنی اينکه رنگ چيه ! مثلا ميگی آبی يا آبی يکم متمايل به سبز يا ....
۲- شدت رنگ :
اگه دقت کرده باشيد هر رنگ ميتونه پر رنگ يا کم رنگ باشه اما ماهيت ذاتی اون يه چيزه و فقط کم رنگ تر يا پررنگ تر شده به اين ميگن -> Saturation
۳- روشنايی يا تيرگی رنگ :
يه رنگ رو می تونيد بهش نور بتابونيد که روشناييش زياد بشه يا نور رو کم کنيد که روشناييش کم بشه که ميتونه انقدر کم بشه که سياه بشه !! به اين ميگن->Intensity
اميدوارم تونسته باشن خوب برسونم منظورم چيه !
پس يه حوضه جديد که الهام گرفته از چشم هستش رو باهاش آشنا شديم که کار روی رنگها برای تصميم گيری روی مشخصات اون رو راحت ميکنه. به اين حوضه رنگی اصطلاحا HSI ميگن که مخفف اون ۳کلمه بالاست. شکل زير نمودار تغييرات رنگ رو با توجه به اين ۳ مولفه نشون ميده:
H بين ۰ تا ۳۶۰ هستش يعنی از قرمز تا سبز ۱۲۰ درجه و از سبز تا آبی ۱۲۰درجه و از آبی تا قرمز ۱۲۰ درجه در جهت خلاف جهت حرکت عقربه های ساعت.
S بين ۰ تا ۱۰۰ هستش که از کم رنگ (۰) تا پر رنگ (۱۰۰)
I از ۰ تا ۱۰۰ هستش يعنی از تاريک(۰) تا روشن(۱۰۰)
چند نمونه از رنگها در ۲ حوضه مذکور :
رنگ
RGB مقادیر
HSI مقادير
سياه
(255,255,255)
(0,0,0)
سفيد
(255,255,255)
(0,0,100)
قرمز
(255,0,0)
(0,100,100)
سبز
(0,255,0)
(120,100,100)
آبی
(0,0,255)
(240,100,100)
! قهوه ای
(64,128,128)
(180,50,50)

حالا نياز به اين داريم که RGB مربوط به هر نقطه را به HSI تبديل کنيم که رابطش رو به صورت سی نوشتم که r,g,b همون ۳ رنگ آبی و سبز و قرمز هر نقطه هستش:
int min,max;
/////////////////////

if(r>g)
{
max=r;
min=g;
}
else

{
max=g;
min=r;
}
if(b>max)
max=b;


if(b<min )
min=b;
////////////////////

if(max==0)
{
i=0;
s=0;
h=0;
}
else

{
i=max*100/255;
s=(max-min)*100/max;
h=180*acos((((r-g)+(r-b))/2)/sqrt(pow(r-g,2)+(r-b)*(g-b)))/3.1415;
if(b>g)
h=360-h;
}

__________________
فقط کاربراني که ثبت شده اند و فعال شده اند مي توانند لينکها را ببينند[براي ثبت نام اينجا را کليک کنيد]
فقط کاربراني که ثبت شده اند و فعال شده اند مي توانند لينکها را ببينند[براي ثبت نام اينجا را کليک کنيد]
فقط کاربراني که ثبت شده اند و فعال شده اند مي توانند لينکها را ببينند[براي ثبت نام اينجا را کليک کنيد]
فقط کاربراني که ثبت شده اند و فعال شده اند مي توانند لينکها را ببينند[براي ثبت نام اينجا را کليک کنيد]
فقط کاربراني که ثبت شده اند و فعال شده اند مي توانند لينکها را ببينند[براي ثبت نام اينجا را کليک کنيد]

فقط کاربراني که ثبت شده اند و فعال شده اند مي توانند لينکها را ببينند[براي ثبت نام اينجا را کليک کنيد]


rahimonline آنلاین نیست.   پاسخ با نقل قول
پاسخ

علاقه مندی ها (Bookmarks)

ابزارهای تاپيك
نحوه نمایش

شرايط ارسال
شما نمیتوانید تاپيك جدیدی ارسال کنید
شما امکان ارسال پاسخ را ندارید
شما نمیتوانید فایل پیوست در پست خود ضمیمه کنید
شما نمیتوانید پست های خود را ویرایش کنید

BB code is فعال
شکلک ها فعال است
کد [IMG] فعال است
کدهای HTML غیر فعال است
Trackbacks are فعال
Pingbacks are فعال
Refbacks are فعال
انتخاب سریع یک انجمن



Powered by vBulletin Version 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises  LC

http://forum.mihandownload.com/