- 1. میٹلیب ایڈیٹر ونڈو کا استعمال کرکے تصویری پروسیسنگ
- 2۔ میٹالاگ جی یو آئی کے ساتھ تصویری پروسیسنگ
- تصویری پروسیسنگ کے لئے MATLAB گرافیکل یوزر انٹرفیس تشکیل دینا
- تصویری پروسیسنگ کے لئے میٹلیب جی یو آئی کوڈ
- تصویری پروسیسنگ کے لئے میٹلائب جی یوآئ کوڈ چلائیں
تصور کریں کہ آپ اپنے کیمرہ کو کسی چیز کی طرف اشارہ کررہے ہیں اور کیمرا آپ کو اس شے کا نام بتاتا ہے ، ہاں ، اینڈرائڈ سمارٹ فونز میں گوگل لینس امیج پروسیسنگ کا استعمال کرکے یہی کام کر رہا ہے۔ اس سے کمپیوٹر کو چیزوں کا پتہ لگانے اور پہچاننے اور اس کے مطابق اقدامات کرنے کا وژن ملتا ہے ۔ تصویری پروسیسنگ میں چہرے کا پتہ لگانے اور پہچاننے ، انگوٹھے کے نقوش ، بڑھا ہوا حقیقت ، او سی آر ، بارکوڈ اسکین اور بہت کچھ جیسی بہت سی ایپلی کیشنز ہیں۔ تصویری پروسیسنگ کے لئے بہت سارے سافٹ ویر دستیاب ہیں ، ان میں سے میٹی ایل بی سب سے موزوں ہے جس کے ساتھ شروع کیا جائے۔
میٹلیب متعدد ایڈوانس امیجنگ پروسیسنگ آپریشن انجام دے سکتا ہے ، لیکن میٹالاب میں تصویری پروسیسنگ کے ساتھ شروع کرنے کے لئے ، یہاں ہم کچھ بنیادی کاموں کی وضاحت کریں گے جیسے آر جی بی سے گرے ، امیج کو گھمائیں ، بائنری کنورژن وغیرہ۔ آپ شور کو ہٹانے ، تصویر کے ل auto خود کار پروگرام بناسکتے ہیں۔ وضاحت ، اس ٹیوٹوریل میں بیان کردہ افعال کا استعمال کرکے فلٹرنگ۔
آگے بڑھنے سے پہلے ، اگر آپ MATLAB کے لئے نئے ہیں تو ، بہتر سمجھانے کے لئے آپ ہمارے پچھلے MATLAB سبق کو جانچ سکتے ہیں۔
- میٹلیب کے ساتھ شروع کرنا: ایک فوری تعارف
- متلاگ کے ساتھ انٹرفیسنگ ارودوینو
- ڈی اے ٹی موٹر کنٹرول میٹلائب اور اردوینو کا استعمال کرتے ہوئے
- میٹلیب اور اردوینو کا استعمال کرتے ہوئے اسٹیپر موٹر کنٹرول
- ایم اے ٹی ایل بی کا استعمال کرکے ریئل ٹائم ٹمپریچر گراف کیسے پلاٹ کریں
میٹلیب میں ، ہمیشہ کی طرح ، کسی بھی تصویری پروسیسنگ الگورتھم کو انجام دینے کے لئے دو طریقے ہیں ، ایک یہ ہے کہ براہ راست ایڈیٹر / کمانڈ ونڈو میں کمانڈ داخل کریں اور دوسرا اس کے لئے جی یو آئی تشکیل دیں۔ یہاں ، ہم آپ کو MATLAB میں تصویری پروسیسنگ کے بنیادی کام انجام دینے کے دونوں طریقے دکھائیں گے۔
1. میٹلیب ایڈیٹر ونڈو کا استعمال کرکے تصویری پروسیسنگ
اب ، ہم ایڈیٹر ونڈو میں تصویری پروسیسنگ کے کچھ بنیادی کام انجام دینے کے لئے کوڈ لکھیں گے۔ MATLAB میں استعمال ہونے والی تمام بنیادی اصطلاحات سے واقف ہونے کے لئے لنک پر عمل کریں۔ ایڈیٹر ونڈو میں درج ذیل کوڈ کو کاپی اور پیسٹ کریں ،
a = imread ('F: \ سرکٹ ڈائجسٹ mat میٹلیب کا استعمال کرتے ہوئے تصویری پروسیسنگ \ camerman.jpg')؛ سب پلیٹ (2،3،1)؛ imshow (a)؛ b = rgb2gray (a)؛ سب پلیٹ (2،3،2)؛ imshow (b)؛ c = im2bw (a)؛ سب پلیٹ (2،3،3)؛ imshow (c)؛ d = ایڈماسٹ (ب)؛ سب پلیٹ (2،3،4)؛ imshow (d)؛ e = a؛ e = rgb2gray (e)؛ سب پلیٹ (2،3،5)؛ امہسٹ (ای)؛ imfinfo ('F: \ سرکٹ ڈائجسٹ mat میٹلیب کا استعمال کرتے ہوئے تصویری پروسیسنگ \ داڑھی - man.jpg') = سائز (a) ٪ رنگ نقشہ ('بہار')
متغیر 'اے' میں ، ہم کمانڈ ایمریڈ ('فائل کا نام') کا استعمال کرکے امیج کو درآمد کررہے ہیں اور پھر سب پلیٹ (قطار ، کالم ، پوزیشن) کا استعمال کرکے '2' صف اور '3' کالم کا پلاٹ بنا رہے ہیں اور درآمد شدہ تصویر کو پوزیشن پر ظاہر کررہے ہیں '۔ 1 '۔ تصویر دکھانے کے لئے ہم کمانڈ imshow ('filename') استعمال کرتے ہیں ۔
ذیل میں اپ لوڈ کردہ امیج پر کچھ بنیادی پروسیسنگ کے لئے کچھ کمانڈ دیئے گئے ہیں:
- متغیر 'بی' میں ، ہم آر جی بی 2 گرے ('فائل کا نام') کا استعمال کرکے اور '2' پوزیشن پر پلاٹ میں ڈسپلے کرکے آرجیبی امیج کو گرے اسکیل اینٹی ایسٹی امیج میں تبدیل کررہے ہیں ۔
- متغیر 'c' میں ، ہم شبیہ کو بائنری امیج میں تبدیل کر رہے ہیں یا آپ '0' (سیاہ) اور '1' (سفید) کی شکل میں ایم 2bw ('فائل کا نام') کمانڈ استعمال کرکے اور اسے پلاٹ پر نمائش کے ذریعہ کہہ سکتے ہیں۔ پوزیشن '3'۔
- متغیر 'ڈی' میں ، ہم گرے اسکیل امیجینٹ اقدار کو ایڈجسٹ یا میپنگ کر رہے ہیں جس کا استعمال آئماڈسٹ ('فائل کا نام') استعمال کرکے اور '4' پوزیشن پر پلاٹ میں ڈسپلے کر رہے ہیں۔
- متغیر 'ای' میں ، ہم کمانڈ امہسٹ ('فائل کا نام') استعمال کرکے گرے اسکیل امیجٹ کے ہسٹوگرام کی منصوبہ بندی کر رہے ہیں اور پوزیشن '5' پر پلاٹ میں ڈسپلے کر رہے ہیں۔ ہسٹگرام کی منصوبہ بندی کے ل you آپ کو ہمیشہ تصویر کو گرے اسکیل میں تبدیل کرنا ہوگا اور پھر آپ اس گرافک فائل کا ہسٹگرام دیکھ سکیں گے۔
- گرافیکل فائل کے بارے میں معلومات ظاہر کرنے کے لئے امفنفو ('مقام کے ساتھ فائل کا نام') کمانڈ استعمال کیا جاتا ہے۔
- = سائز ('فائل کا نام') کمانڈ کسی خاص گرافک فائل کے سائز اور رنگین طیاروں کو ظاہر کرنے کے لئے استعمال کیا جاتا ہے۔
- رنگین نقشہ ('بہار') گرافک فائل کے رنگ نقشہ کی قسم کو تبدیل کرنے کے لئے استعمال ہوتا ہے۔ یہاں ، میں نے اپنے کوڈ میں اس کمانڈ کو بطور کمنٹ سیٹ کیا ہے لیکن آپ اسے فیصد کا نشان ختم کرکے استعمال کرسکتے ہیں۔ میٹلائب میں رنگ کی بہت سی قسمیں ہیں جیٹ ، ایچ ایس وی ، گرم ، ٹھنڈا ، موسم گرما ، موسم خزاں ، موسم سرما ، گرے ، ہڈی ، کاپر ، گلابی ، لکیریں اور بہار۔
ان کی طرح ، می اے ٹی ایل ایل میں بھی بہت سے کمانڈ موجود ہیں جن کا استعمال مختلف کام انجام دینے کے لئے کیا جاسکتا ہے ، آپ لنک پر عمل کرکے میٹلیب میں تصویری پروسیسنگ کے افعال کو چیک کرسکتے ہیں۔
2۔ میٹالاگ جی یو آئی کے ساتھ تصویری پروسیسنگ
تصویری پروسیسنگ کے لئے MATLAB گرافیکل یوزر انٹرفیس تشکیل دینا
امیج پروسیسنگ کے لئے GUI (گرافیکل یوزر انٹرفیس) بنانے کے لئے کمانڈ ونڈو میں نیچے کمانڈ ٹائپ کرکے GUI کا آغاز کریں ۔
رہنما
ایک پاپ اپ ونڈو کھل جائے گی ، پھر نیچے کی گئی تصویر میں دکھائے جانے کے بعد نیا خالی جی یوآئ منتخب کریں ،
اب ہمیں پش بٹن کی تعداد (ہر پش بٹن مختلف ٹاسک انجام دے گی) اور تصویر کو ظاہر کرنے کے لئے ایک محور کا انتخاب کرنا ہے۔
سائز تبدیل کرنے یا پش بٹن یا ایکسز کی شکل بدلنے کے ل just ، صرف اس پر کلک کریں اور آپ بٹن کے کونوں کو گھسیٹنے کے قابل ہو جائیں گے۔ ان میں سے کسی پر بھی ڈبل کلک کرنے سے آپ رنگ ، اسٹرنگ ، ٹیگ اور اس مخصوص بٹن کے دیگر آپشنز کو تبدیل کرسکیں گے۔ تخصیص کے بعد یہ اس طرح نظر آئے گا
آپ اپنی پسند کے مطابق بٹنوں کو اپنی مرضی کے مطابق کرسکتے ہیں۔ اب جب آپ اسے محفوظ کرتے ہیں تو ، MATLAB کے ایڈیٹر ونڈو میں ایک کوڈ تیار ہوتا ہے ۔ تیار کردہ کوڈ میں ترمیم کرکے مختلف پش بٹنوں کے لئے کام طے کریں۔ ذیل میں ہم نے میٹلیب کوڈ میں ترمیم کی ہے۔
تصویری پروسیسنگ کے لئے میٹلیب جی یو آئی کوڈ
اس پروجیکٹ کے اختتام پر میٹلیب جی یوآئ کا استعمال کرتے ہوئے تصویری پروسیسنگ کے لئے مکمل میٹلیب کوڈ دیا گیا ہے۔ اس کے علاوہ ہم یہاں GUI فائل (.fig) اور کوڈ فائل (.m) کو ڈاؤن لوڈ کے ل are بھی شامل کر رہے ہیں ، جس کا استعمال کرتے ہوئے آپ اپنی ضرورت کے مطابق بٹن یا Axes سائز کو حسب ضرورت بنا سکتے ہیں۔ جیسا کہ ذیل میں بیان کیا گیا ہے ہم نے پیدا کردہ کوڈ میں ترمیم کی ہے۔
میں 'uploadimage' تقریب، کاپی اور کمپیوٹر سے فائل کو داخل کرنے کے لئے کوڈ کو ذیل میں پیسٹ کریں. یہاں ، MATLAB GUI میں شبیہہ کی درآمد کیلئے کمانڈ uigetfile ('امیج ایکسٹینشن ٹائپ') استعمال کیا جاتا ہے۔ اس فائل کو استعمال کرتے ہوئے کمانڈ پڑھیں imread () اور پھر کمانڈ کے ساتھ یہ ظاہر imshow () پر axes1 استعمال کرتے ہوئے محور (handles.axes1) . اب ، کمانڈ سیٹ اپ ڈیٹا () کے ساتھ ، متغیر کو جی یو آئی میں اسٹور کریں تاکہ متغیر GUI کے ایک حص toے تک GUI کے دوسرے حصے تک قابل رسائی ہوجائے۔
a = uigetfile ('. jpg') a = imread (a)؛ محور (ہینڈل.ایکسس 1)؛ imshow (a)؛ سیٹ اپ ڈیٹا (0 ، 'ا' ، ا)
اب ، ہر فنکشن میں آپ کو کمانڈ گیٹ پیٹاٹا () نظر آئے گا جو ڈیٹا کو بازیافت کرنے کے لئے استعمال ہوتا ہے جو جی یو آئی میں سیٹ اپ ڈیٹا () کا استعمال کرکے اسٹور کیا جاتا ہے ۔
یہاں ہم تصویری پروسیسنگ میں عام طور پر استعمال شدہ آٹھ افعال کی وضاحت کریں گے
سیریل نمبر. |
کمانڈ |
بٹن کا نام |
کام انجام دینا |
1۔ |
uigetfile () |
تصویر انٹرنیٹ پر ڈالنا |
ڈسک سے تصویر درآمد کرنے کے لئے کلک کریں |
2 |
rgb2gray () |
آر جی بی سے گرے |
آرجیبی امیج کو گرے اسکیل میں تبدیل کرنے کے لئے کلک کریں |
3۔ |
im2bw () |
ثنائی امیج میں بدلیں |
تصویر کو بائنری میں تبدیل کرنے کے لئے کلک کریں |
4 |
- |
دوبارہ تلاش کریں |
اصل کی طرح تصویر کو دوبارہ ترتیب دینے کے لئے کلک کریں |
5 |
imhist () |
ہسٹوگرام |
تصویر کے ہسٹگرام دیکھنے کے لئے کلک کریں |
6۔ |
تکمیل () |
تصویر کی تکمیل کریں |
تکمیلی تصویر کو دیکھنے کے لئے کلک کریں |
7۔ |
کنارے (فائل کا نام ، طریقہ) |
ایج کا پتہ لگانا |
تصویر میں کناروں کا پتہ لگانے کے لئے کلک کریں |
8۔ |
imrotate (فائل کا نام ، زاویہ) |
گھڑی کی طرف گھمائیں |
تصویر کو گھڑی کی سمت میں گھمانے کیلئے کلک کریں |
9۔ |
imrotate (فائل کا نام ، زاویہ) |
اینٹی کلاک وائز کو گھمائیں |
شبیہ کو مخالف گھڑی کی سمت میں گھمانے کیلئے کلک کریں |
1. آرجیبی امیج کو گرے اسکیل میں تبدیل کریں
میں 'rgb2gray' تقریب، کاپی اور کرنے کے لئے کوڈ کو ذیل میں پیسٹ مٹیالا پیمانہ میں RGB تصویر تبدیل کمانڈ کا استعمال کرتے ہوئے کی طرف سے (rgb2gray) .
a = getappdata (0، 'a')؛ agray = rgb2gray (a)؛ محور (ہینڈل.ایکسس 1)؛ imshow (agray)؛
2. ثنائی امیج میں تبدیل کریں
میں 'im2bw' تقریب، کاپی اور کرنے کے لئے کوڈ کو ذیل میں پیسٹ بائنری تصویر میں تصویر کو تبدیل یا آپ کی شکل میں کہہ سکتے ہیں '0' (سیاہ) اور '1' (سفید) کمانڈ کا استعمال کرتے ہوئے کی طرف سے im2bw () .
a = getappdata (0، 'a')؛ abw = im2bw (a)؛ محور (ہینڈل.ایکسس 1)؛ imshow (abw)؛
3. اصلی امیج کو دوبارہ ترتیب دیں
میں 'ری سیٹ' تقریب، کاپی اور کرنے کے لئے کوڈ کو ذیل میں پیسٹ اصل تصویر میں ترمیم کی تصویر ری سیٹ.
a = getappdata (0، 'a')؛ محور (ہینڈل.ایکسس 1)؛ imshow (a)؛
4. پلاٹ امیجسٹ ہسٹوگرام
میں 'ہسٹوگرام' تقریب، کاپی اور کرنے کے لئے کوڈ کو ذیل میں پیسٹ مٹیالا پیمانہ تصویر کے ہسٹوگرام پلاٹ کمانڈ کا استعمال کرتے ہوئے کی طرف سے imhist ('فائل کا نام') اور تاریخ میں یہ ظاہر axes1 . ہسٹگرام کی منصوبہ بندی کے ل you آپ کو ہمیشہ تصویر کو گرے اسکیل میں تبدیل کرنا ہوگا اور پھر آپ اس گرافک فائل کا ہسٹگرام دیکھ سکیں گے۔
a = getappdata (0، 'a')؛ ahist = a؛ ahist = rgb2gray (ahist)؛ محور (ہینڈل.ایکسس 1)؛ imhist (ahist)؛
5. تکمیلی امیج میں بدلیں
میں 'complementimage' تقریب، کاپی اور دیکھنے کے لئے کوڈ کو ذیل میں پیسٹ ڈالا گرافک کی اضافی کمانڈ کا استعمال کرتے ہوئے کی طرف سے فائل (imcomplement) .
a = getappdata (0، 'a')؛ اکومپ = اے؛ acomp = imcomplement (acomp)؛ محور (ہینڈل.ایکسس 1)؛ imshow (acomp)؛
6. کینی کا طریقہ استعمال کرتے ہوئے کنارے کا پتہ لگانا
میں 'برتری' تقریب، کاپی اور پتہ لگانے اور کمانڈ کا استعمال کرتے ہوئے کی طرف سے مٹیالا پیمانہ تصویر میں کناروں کو تلاش کرنے کے لئے کوڈ کو ذیل میں پیسٹ کنارے ('فائل کا نام'، 'طریقہ') . کی جگہ میں طریقہ کار آپ کو ان تین میں سے منتخب کر سکتے ہیں ھوشیار، Prewitt اور montage میں . ہم کنارے کا پتہ لگانے کے لئے کینی کا طریقہ استعمال کر رہے ہیں ۔ نیز آپ اصلی تصویر سے براہ راست کنارے کا پتہ نہیں لگاسکتے ہیں ، پہلے آپ کو اسے گرے اسکیل میں تبدیل کرنا ہوگا اور پھر آپ کناروں کا پتہ لگانے کے قابل ہوسکتے ہیں۔
a = getappdata (0، 'a')؛ aedge = a؛ ایجج = آر جی بی 2 گری (ایج)؛ ایج = کنارے (ایج ، ' کین ') ' محور (ہینڈل.ایکس 1)؛ imshow (ایج)؛
7. تصویری گھڑی کی طرف گھمائیں
میں 'گھڑی' تقریب، کاپی اور کرنے کے لئے کوڈ کو ذیل میں پیسٹ گھڑی کی سمت میں کی تصویر کو باری باری دکھائے کمانڈ کا استعمال کرتے ہوئے کی طرف سے imrotate (فائل کا نام، 'زاویہ')
a = getappdata (0، 'a')؛ اکلاک = a؛ اکلاک = امروٹیٹ (اکلاک ، 270)؛ محور (ہینڈل.ایکسس 1)؛ imshow (اکلاک)؛
8. تصویری اینٹی کلاک وائز کو گھمائیں
میں 'کے anticlockwise' تقریب، کاپی اور کرنے کے لئے کوڈ کو ذیل میں پیسٹ کے anticlockwise سمت میں کی تصویر کو باری باری دکھائے کمانڈ کا استعمال کرتے ہوئے کی طرف سے imrotate (فائل کا نام، 'زاویہ')
a = getappdata (0، 'a')؛ اکلاک = a؛ اکلاک = امروٹیٹ (اکلاک، 90)؛ محور (ہینڈل.ایکسس 1)؛ imshow (اکلاک)؛
تصویری پروسیسنگ کے لئے میٹلائب جی یوآئ کوڈ چلائیں
اب ،.m فائل میں ترمیم شدہ کوڈ کو چلانے کے لئے 'RUN' کے بٹن پر کلک کریں
میٹلیب کو جواب دینے میں کچھ سیکنڈ لگ سکتے ہیں ، کسی بھی جی یوآئ بٹن پر کلک نہ کریں جب تک کہ MATLAB نیچے بائیں کونے میں مصروف پیغام نہیں دکھا رہا ہے جیسا کہ ذیل میں دکھایا گیا ہے ،
جب سب کچھ تیار ہو تو ، پی سی سے 'اپ لوڈ امیج' کے بٹن پر کلک کرکے امیج کو امپورٹ کریں۔ اب ، آپ اس کے مطابق کسی بھی بٹن پر کلک کرکے تصویر کو تبدیل یا گھمانے میں کامیاب ہوں گے۔ جدول کے نیچے آپ کو وہ کام دکھائے گا جو ہم کسی خاص بٹن کے کلک پر انجام دے رہے ہیں:
ہر بٹن پر کلک کرنے کا نتیجہ نیچے دکھایا جائے گا ،
نیچے دیئے گئے ویڈیو میں ہر بٹن کے مکمل کام کا مظاہرہ کیا گیا ہے ۔
یہاں تک کہ آپ تصویری پروسیسنگ ٹول باکس کے ساتھ اعلی سطحی تصویری پروسیسنگ بھی کرسکتے ہیں جسے آپ میٹ ورکس سرکاری ویب سائٹ سے خرید سکتے ہیں ، کچھ پیشگی سطح کے آپریشن ذیل میں درج ہیں:
- ہندسی عمل
- بلاک آپریشنز
- لکیری فلٹرنگ اور فلٹر ڈیزائن
- تبدیلیاں
- تصویری تجزیہ اور اضافہ
- بائنری امیج آپریشنز