آموزش متلب
پردازش شدت نور تصاویر در نرم افزار متلب (5)
17 مهر 1401
آموزش متلب
هیستوگرام هدف و شدت نور تصاویر در متلب (7)
17 آذر 1401
Show all

 شدت نور تصاویر با تابع Imhistدر متلب(6)

آموزش متلب

 شدت نور تصاویر با تابع Imhist در متلب

بخش 6 آموزش برنامه نویسی درنرم افزار متلب 

در این بخش میخوانیم :

1- کار با تابع  Imhist

2- نمودار تابع  Imhist

3- پراکندگی واریانس 

 بررسی پارامترهای دیگر

  1. %%Load Image 
    Img 1 = imread (‘pout . tif ‘) ;
    Img 2 = imadjust (img 1) ;
    Img3 = imadjust (img 1 , stretchlim (img 1 ) , [0 1] ,0/5 ) ;
    Img 4 = imadjust ( img , stretchlim ( img 1 ) , [0 1] , 2 ) ;

 

 

نمودار شدت نور در متلب

 

 

شدت نور با تابع Imhistدر متلب

تصویر شماره (2) سفیدتر و تصویرشماره (3) سیاهتر میشود .

معادله خطی (y شیب خط ) :

فرمول معادله خط Imhistدر متلب

 منحنی اشباع شده :

 توان گامائ آن فرمول متلب میشود :

با گامائ یک تصویر نرمال ، حالت خطی

با گامائ بیشتر از یک تصویر 3 ، رنگ سیاه تر

با گامائ کمتر از یک تصویر2 ، رنگ سفیدتر

با گاما میتوان تقریبا همه حالتها را پوشش داد.

اگر گاما به سمت صفر میل کند همان گامائ کمتر از یک میشود

(یعنی تصویر روشنتر و روشنتتر میشود)

 توابع   imadjust , stretchlim کارشان توسعه کنتراست هست که این مبحث مربوط به این توابع است .

برای افزایش وضُوح تصویر باید پراکندگی واریانس را بیشتر کنیم مثلا در جایی که تنظیم نور خوب نباشد یا واریانس و اندازه کافی نباشد .

  1. >> A = magic (5)

 ماتریس پنج در پنج ماتریسی است که مجموع قطرها ، سطرها ، ستون ها با هم مساوی است برای تبدیل آن به بردار چند راه داریم :

راه اول ریشه A را سرچ میکنیم ماتریسی یک سطری میشود که تعداد ستون هایش مهم نیست .

  1. >> reshape (A , 1 , [ ] )

راه دوم فقط یک ستون دارد و تعداد سطرهایش مهم نیست .

  1. >>reshape (A , [ ] , 1 )

 راه میانبر

 همه اعضای A را به شکل یک بردار عمودی نشان دهیم .

  1. >> A ( : )

برای تبدیل عناصر یک ماتریس به بردار راحت ترین وساده ترین راه شدت نور تصاویر در متلب با تابع Imhist است .

 تبدیل تصویر به آرائ عمودی و رسم هیستو گرام آن ، تابعی به نام هیست در طول باکس آمار این کار را انجام میدهد .

  1. >>hist (img 1 ( : ) )

Error using

Error میدهد به دابل تبدیل میکنیم .

 

  1. >> hist (double (img ( : ) ) )

به طور خود کار در بین ده قسمت آن را رسم میکند .

 

نمودار شدت نور با تابع Imhistدر متلب

 

 

  1. >> hist (double ( img 1 ( : ) ) , 50 )
    >> hist (double (img ( : ) ) , 100 )
    >> hist (double ( img 1 ( : ) ) , 256 )

 

نمودار شدت نور با تابع Imhistدر متلب

  1. >> Xlim ( [ 0 255 ] )

 در این تصویر تمرکز بیشتر روی وسط نموداراست محاسبه هیستوگرام در شدت نور تصاویر در متلب با تابع Imhist ترسیم میشود Imag Histogram مقدار فراوانی روشنایی بین نقاط مختلف تصویر است

  1. Imhist
    Display histogram of image data
    Syntax
    Imhist ( I )
    Imhist ( I , n )
    Imhist ( x , map )
    [counts , x ] = imhist ( … )

اگر به سه شکل اول پیاده سازی کنیم فقط رسم میکند .

اگر بخواهیم مرکز دسته ها و تعداد اعضای هر دسته را پیدا کنیم دو خروجی میگیرد که رسم نمیکند .

برای رسم هیستوگرام معادل هر شکل فیگور جدیدی کنار قبلی ایجاد میکنیم .

 

  1. Figure ;
    Subplot ( 2 , 2 , 1 ) ;
    Imhist ( img 1 , 256 ) ;
    Title ( ‘ Original  Image ‘ ) ;
    
    Subplot ( 2 , 2 ,2) ;
    Imhist ( img 2 , 256 ) ;
    Title ( ‘ Result of imadjust ‘ ) ;
    
    Subplot ( 2 , 2 ,3) ;
    Imhist ( img 3 , 256 ) ;
    Title ( ‘ Result of imadjust  ( 2 ) ‘ ) ;
    
    Subplot ( 2 , 2 ,4 ) ;
    Imhist ( img 4 , 256 ) ;
    Title ( ‘ Result of imadjust  ( 3 ) ‘ ) ;

مقایسه نمودارها در شدت نور با تابع Imhistدر متلب

ترکیب تفکیکی ما بیشتر میشود اگر از همه طیف های رنگی قابل دسترس استفاده کنیم .

وقتی در هیستوگرام به هدف آماری نزدیک شویم یک کار آماری اتفاق میافتد که آنالیز یا تحلیل هیستوگرام گویند نباید لزوما یک اُپراتور غیر خطی یا خطی باشد .

هیستوگرام پیوسته یک توزیع آماری است .

از توابع فوق برای شناسایی قاب پلاک خودرو برای نرم افزار پلاک خوان استفاده میشود. از پروژه های پردازش تصویر پلاک خوان در نرم افزار کنترل تردد پارکینگ ، اتوماسیون هوشمند پارکینگ ، ساخت و تولید دستگاه پارکینگ هوشمند و نیز نرم افزار کنترل تردد خودرو در جاده و استفاده های دیگر مورد استفاده قرار میگیرد.

تابع کمانی احتمال که با علامت اختصاری PDF  نمایش میدهیم یک کمیت تصادفی را توصیف میکند .

 

نمودار شدت نور با تابع Imhistدر متلب

 

 ادامه آموزش متلب در بخش 7

دیدگاهتان را بنویسید