سیمنٹک سیگمنٹیشن کے لیے 2021 گائیڈ

ماخذ نوڈ: 872271

انٹرو

ڈیٹا کے طور پر امیجز کے ساتھ کام کرتے وقت گہرا سیکھنا بہت کامیاب رہا ہے اور فی الحال اس مرحلے پر ہے جہاں یہ متعدد استعمال کے معاملات میں انسانوں سے بہتر کام کرتا ہے۔ سب سے اہم مسائل جن کو انسان کمپیوٹر ویژن سے حل کرنے میں دلچسپی رکھتا ہے۔ تصویر کی درجہ بندی، آبجیکٹ کا پتہ لگانے اور تقسیم کرنا ان کی مشکلات کے بڑھتے ہوئے ترتیب میں۔

تصویر کی درجہ بندی کے سادہ پرانے کام میں ہم صرف ان تمام اشیاء کے لیبل حاصل کرنے میں دلچسپی رکھتے ہیں جو تصویر میں موجود ہیں۔ آبجیکٹ کا پتہ لگانے میں ہم ایک قدم آگے آتے ہیں اور یہ جاننے کی کوشش کرتے ہیں کہ تصویر میں موجود تمام اشیاء کیا ہیں، باؤنڈنگ بکس کی مدد سے وہ مقام جس پر اشیاء موجود ہیں۔ امیج سیگمنٹیشن تصویر میں موجود اشیاء کی صحیح حد کو درست طریقے سے معلوم کرنے کی کوشش کرکے اسے ایک نئی سطح پر لے جاتا ہے۔

ماخذ http://cs224d.stanford.edu/index.html

اس مضمون میں ہم امیج سیگمنٹیشن کے اس تصور سے گزریں گے، متعلقہ استعمال کے کیسز، نتائج کے حصول میں شامل مختلف نیورل نیٹ ورک آرکیٹیکچرز، میٹرکس اور ڈیٹا سیٹس پر تبادلہ خیال کریں گے۔

تصویر کی تقسیم کیا ہے؟

ہم جانتے ہیں کہ تصویر پکسلز کا مجموعہ ہے۔ تصویری تقسیم ایک مخصوص طبقے سے تعلق رکھنے والی تصویر میں ہر پکسل کی درجہ بندی کرنے کا عمل ہے اور اسی لیے اسے فی پکسل درجہ بندی کے مسئلے کے طور پر سوچا جا سکتا ہے۔ تقسیم کی تکنیک کی دو قسمیں ہیں۔

Source http://cs231n.stanford.edu/slides/2017/cs231n_2017_lecture11.pdf
  1. سنمک تقسیم :- سیمنٹک سیگمنٹیشن ایک مخصوص لیبل سے تعلق رکھنے والے ہر پکسل کی درجہ بندی کرنے کا عمل ہے۔ یہ ایک ہی چیز کی مختلف مثالوں میں مختلف نہیں ہے۔ مثال کے طور پر اگر ایک تصویر میں 2 بلیاں ہیں، تو سیمنٹک سیگمنٹیشن دونوں بلیوں کے تمام پکسلز کو ایک ہی لیبل دیتا ہے۔
  2. مثال کی تقسیم :- مثال کی تقسیم اس معنی میں سیمنٹک سیگمنٹیشن سے مختلف ہے کہ یہ تصویر میں کسی خاص چیز کی ہر مثال کو ایک منفرد لیبل دیتا ہے۔ جیسا کہ اوپر کی تصویر میں دیکھا جا سکتا ہے کہ تمام 3 کتوں کو مختلف رنگوں یعنی مختلف لیبل تفویض کیے گئے ہیں۔ semantic segmentation کے ساتھ ان سب کو ایک ہی رنگ تفویض کیا جاتا۔

تو اب ہم اس مقام پر آئیں گے جہاں ہمیں اس قسم کے الگورتھم کی ضرورت ہوگی۔

امیج سیگمنٹیشن کے استعمال کے کیسز

ہینڈ رائٹنگ کی پہچان :- جنجو وغیرہ نے یہ ظاہر کیا کہ کس طرح ان کے ہاتھ سے لکھے ہوئے دستاویزات سے الفاظ اور لائنوں کو نکالنے کے لیے سیمنٹک سیگمنٹیشن کا استعمال کیا جا رہا ہے۔ 2019 کا تحقیقی مقالہ ہاتھ سے لکھے ہوئے حروف کو پہچاننا

ماخذ

گوگل پورٹریٹ موڈ :- استعمال کے بہت سے معاملات ہیں جہاں پیش منظر کو پس منظر سے الگ کرنا بالکل ضروری ہے۔ مثال کے طور پر گوگل کے پورٹریٹ موڈ میں ہم پس منظر کو دھندلا ہوا دیکھ سکتے ہیں جبکہ پیش منظر کو ٹھنڈا اثر دینے کے لیے کوئی تبدیلی نہیں کی گئی ہے۔

ماخذ:- https://ai.googleblog.com/2018/03/mobile-real-time-video-segmentation.html

یوٹیوب کی کہانیاں :- گوگل نے حال ہی میں مواد تخلیق کرنے والوں کے لیے یوٹیوب کی کہانیوں کا ایک فیچر جاری کیا ہے تاکہ کہانیاں تخلیق کرتے وقت مختلف پس منظر دکھائے۔

ماخذ:- https://ai.googleblog.com/2018/03/mobile-real-time-video-segmentation.html

ورچوئل میک اپ :- امیج سیگمنٹیشن کی مدد سے اب ورچوئل لپ اسٹک لگانا ممکن ہے۔

ماخذ:- https://www.theverge.com/2017/3/16/14946086/sephora-virtual-assistant-ios-app-update-ar-makeup

4. ورچوئل ٹرائی آن :- کپڑوں پر ورچوئل ٹرائی ایک دلچسپ خصوصیت ہے جو اسٹورز میں خصوصی ہارڈ ویئر کا استعمال کرتے ہوئے دستیاب تھی جو 3d ماڈل بناتی ہے۔ لیکن گہری سیکھنے اور تصویر کی تقسیم کے ساتھ صرف 2d تصویر کا استعمال کرتے ہوئے وہی حاصل کیا جا سکتا ہے۔

ماخذ:- https://arxiv.org/pdf/1807.07688.pdf

بصری تصویری تلاش :- کپڑوں کو الگ کرنے کا خیال ای کامرس میں تصویری بازیافت کے الگورتھم میں بھی استعمال ہوتا ہے۔ مثال کے طور پر Pinterest/Amazon آپ کو کسی بھی تصویر کو اپ لوڈ کرنے اور کپڑے کے حصے کو الگ کرنے کی بنیاد پر تصویری تلاش کر کے ملتے جلتے مصنوعات حاصل کرنے کی اجازت دیتا ہے۔

ماخذ:- https://github.com/paucarre/tiefvision

خود ڈرائیور کاریں :- سیلف ڈرائیونگ کاروں کو پکسل پرفیکٹ لیول تک اپنے اردگرد کے ماحول کی مکمل تفہیم کی ضرورت ہوتی ہے۔ اس لیے تصویر کی تقسیم کا استعمال لین اور دیگر ضروری معلومات کی شناخت کے لیے کیا جاتا ہے۔

ماخذ:- https://medium.com/intro-to-artificial-intelligence/semantic-segmentation-udaitys-self-driving-car-engineer-nanodegree-c01eb6eaf9d

Nanonets فارچون 500 کمپنیوں کو سیمنٹک سیگمنٹیشن کا استعمال کرتے ہوئے پیمانے پر بہتر کسٹمر کے تجربات کو فعال کرنے میں مدد کرتا ہے۔

طریقے اور تکنیک

گہری تعلیم کی آمد سے پہلے، تصویری تقسیم کے مسئلے کو حل کرنے کے لیے کلاسیکی مشین لرننگ کی تکنیکیں جیسے SVM، Random Forest، K-means Clustering کا استعمال کیا جاتا تھا۔ لیکن جیسا کہ زیادہ تر تصویر سے متعلق مسائل کے بیانات کے ساتھ گہری سیکھنے نے موجودہ تکنیکوں کے مقابلے میں جامع طور پر بہتر کام کیا ہے اور اب سیمنٹک سیگمنٹیشن سے نمٹنے کے وقت ایک معمول بن گیا ہے۔ آئیے ان تکنیکوں کا جائزہ لیں جو مسئلے کو حل کرنے کے لیے استعمال کی جا رہی ہیں۔

مکمل طور پر Convolutional نیٹ ورک

سی این این کا عمومی فن تعمیر چند کنوولیشنل اور پولنگ پرتوں پر مشتمل ہوتا ہے جس کے بعد آخر میں کچھ مکمل طور پر جڑی ہوئی پرتیں ہوتی ہیں۔ 2014 میں جاری ہونے والے فلی کنوولیشنل نیٹ ورک کا مقالہ دلیل دیتا ہے کہ مکمل طور پر جڑی ہوئی آخری تہہ کے بارے میں سوچا جا سکتا ہے کہ وہ 1×1 کنوولوشن کر رہا ہو جو پورے خطے کا احاطہ کرے۔

ماخذ:- https://arxiv.org/abs/1411.4038

لہذا آخری گھنے تہوں کو ایک ہی نتیجہ حاصل کرنے والی ایک کنولوشن پرت سے تبدیل کیا جاسکتا ہے۔ لیکن اب ایسا کرنے کا فائدہ یہ ہے کہ ان پٹ کے سائز کو مزید طے کرنے کی ضرورت نہیں ہے۔ گھنی تہوں کو شامل کرتے وقت ان پٹ کا سائز محدود ہوتا ہے اور اس لیے جب مختلف سائز کا ان پٹ فراہم کرنا ہوتا ہے تو اس کا سائز تبدیل کرنا پڑتا ہے۔ لیکن ایک گھنی تہہ کو کنوولوشن سے بدل کر، یہ رکاوٹ موجود نہیں ہے۔

نیز جب تصویر کا ایک بڑا سائز ان پٹ کے طور پر فراہم کیا جاتا ہے تو پیدا ہونے والا آؤٹ پٹ فیچر میپ ہوگا نہ کہ صرف کلاس آؤٹ پٹ جیسا کہ ایک عام ان پٹ سائز کی تصویر کے لیے۔ نیز فائنل فیچر میپ کا مشاہدہ شدہ رویہ مطلوبہ کلاس کے ہیٹ میپ کی نمائندگی کرتا ہے یعنی فیچر میپ میں آبجیکٹ کی پوزیشن کو نمایاں کیا گیا ہے۔ چونکہ فیچر میپ کا آؤٹ پٹ مطلوبہ آبجیکٹ کا ہیٹ میپ ہے یہ سیگمنٹیشن کے ہمارے استعمال کے معاملے کے لیے درست معلومات ہے۔

چونکہ آؤٹ پٹ لیئر پر حاصل کردہ فیچر کا نقشہ انجام پانے والے کنوولوشنز کے سیٹ کی وجہ سے نیچے کا نمونہ ہے، اس لیے ہم انٹرپولیشن تکنیک کا استعمال کرتے ہوئے اس کا نمونہ بنانا چاہیں گے۔ بلینیئر اپ سیمپلنگ کام کرتی ہے لیکن پیپر میں ڈیکونولوشن کے ساتھ سیکھے ہوئے نمونے کا استعمال کرنے کی تجویز پیش کی گئی ہے جو کہ غیر لکیری اپ سیمپلنگ بھی سیکھ سکتی ہے۔

نیٹ ورک کے نیچے نمونے لینے والے حصے کو انکوڈر اور اوپر کے نمونے لینے والے حصے کو ڈیکوڈر کہا جاتا ہے۔ یہ ایک نمونہ ہے جسے ہم بہت سے فن تعمیر میں دیکھیں گے یعنی انکوڈر کے ساتھ سائز کو کم کرنا اور پھر ڈیکوڈر کے ساتھ نمونہ بنانا۔ ایک مثالی دنیا میں ہم پولنگ کا استعمال کرتے ہوئے نمونے کو کم نہیں کرنا چاہیں گے اور ایک ہی سائز کو برقرار رکھنا چاہتے ہیں لیکن اس سے بہت زیادہ مقدار میں پیرامیٹرز ہوں گے اور یہ حسابی طور پر ناقابل عمل ہوگا۔

ماخذ:- https://arxiv.org/abs/1411.4038

اگرچہ حاصل کردہ آؤٹ پٹ کے نتائج اچھے رہے ہیں لیکن مشاہدہ کیا گیا آؤٹ پٹ کھردرا ہے اور ہموار نہیں۔ اس کی وجہ کنوولوشن لیئرز کا استعمال کرتے ہوئے 32 بار ڈاون سیمپلنگ کی وجہ سے حتمی فیچر لیئر پر معلومات کا نقصان ہے۔ اب نیٹ ورک کے لیے اس چھوٹی سی معلومات کو استعمال کرتے ہوئے 32x اپ سیمپلنگ کرنا بہت مشکل ہو جاتا ہے۔ اس فن تعمیر کو FCN-32 کہا جاتا ہے۔

اس مسئلے کو حل کرنے کے لیے، پیپر نے 2 دیگر فن تعمیرات FCN-16، FCN-8 تجویز کیے ہیں۔ FCN-16 میں پچھلی پولنگ لیئر کی معلومات کو فائنل فیچر میپ کے ساتھ استعمال کیا جاتا ہے اور اس لیے اب نیٹ ورک کا کام 16x اپ سیمپلنگ سیکھنا ہے جو کہ FCN-32 کے مقابلے بہتر ہے۔ FCN-8 ایک اور پچھلی پولنگ پرت سے معلومات شامل کرکے اسے اور بھی بہتر بنانے کی کوشش کرتا ہے۔

یونیٹ

U-net اوپر سے مکمل طور پر convolutional نیٹ ورک کے اوپر بنتا ہے۔ اسے پھیپھڑوں یا دماغ میں ٹیومر تلاش کرنے کے لیے طبی مقاصد کے لیے بنایا گیا تھا۔ یہ ایک انکوڈر پر بھی مشتمل ہوتا ہے جو ان پٹ امیج کو فیچر میپ میں ڈاون سیمپ کرتا ہے اور ڈیکوڈر جو کہ سیکھے ہوئے ڈیکونولوشن لیئرز کا استعمال کرتے ہوئے فیچر میپ کو امیج کے سائز میں داخل کرتا ہے۔

ماخذ:- https://arxiv.org/abs/1505.04597

U-Net فن تعمیر کی اہم شراکت شارٹ کٹ کنکشن ہے۔ ہم نے اوپر FCN میں دیکھا کہ چونکہ ہم نے ایک تصویر کو انکوڈر کے حصے کے طور پر نیچے نمونہ کیا ہے، ہم نے بہت سی معلومات کھو دی ہیں جو آسانی سے انکوڈر والے حصے میں بازیافت نہیں کی جا سکتیں۔ FCN فائنل فیچر لیئر سے پہلے پولنگ لیئرز سے معلومات لے کر اس کو حل کرنے کی کوشش کرتا ہے۔

U-Net معلومات کے نقصان کے اس مسئلے کو حل کرنے کے لیے ایک نیا طریقہ تجویز کرتا ہے۔ یہ انکوڈر میں متعلقہ نیچے نمونے لینے والی پرت سے ڈیکوڈر میں ہر اپ سیمپلنگ لیئر کو معلومات بھیجنے کی تجویز پیش کرتا ہے جیسا کہ اوپر دیے گئے اعداد و شمار میں دیکھا جا سکتا ہے اس طرح گنتی کو کم رکھنے کے ساتھ ساتھ بہتر معلومات حاصل کی جاتی ہیں۔ چونکہ انکوڈر کے شروع میں پرتوں میں مزید معلومات ہوں گی وہ ان پٹ امیجز کے مطابق عمدہ تفصیلات فراہم کرکے ڈیکوڈر کے نمونے لینے کے عمل کو تقویت دیں گی اس طرح نتائج میں کافی بہتری آئے گی۔ اس مقالے میں ناول نقصان کے فنکشن کے استعمال کی بھی تجویز دی گئی ہے جس پر ہم ذیل میں بات کریں گے۔

ڈیپ لیب

گوگل کے محققین کے ایک گروپ کی ڈیپ لیب نے موجودہ نتائج کو بہتر بنانے اور کم کمپیوٹیشنل اخراجات پر بہتر پیداوار حاصل کرنے کے لیے بہت سی تکنیکیں تجویز کی ہیں۔ تحقیق کے حصے کے طور پر تجویز کردہ 3 اہم اصلاحات ہیں۔

1) ایٹروس کنولیشنز
2) ایٹروس اسپیشل پیرامیڈل پولنگ
3) حتمی پیداوار کو بہتر بنانے کے لیے مشروط رینڈم فیلڈز کا استعمال
آئیے ان سب کے بارے میں بات کرتے ہیں۔

Atrous Convolution

FCN اپروچ کے ساتھ ایک بڑا مسئلہ لگاتار پولنگ آپریشنز کی وجہ سے ضرورت سے زیادہ گھٹانا ہے۔ پولنگ کی سیریز کی وجہ سے ان پٹ امیج کا نمونہ 32x نیچے ہے جو کہ سیگمنٹیشن کا نتیجہ حاصل کرنے کے لیے دوبارہ نمونہ بنایا گیا ہے۔ 32x تک نمونے لینے سے معلومات کا نقصان ہوتا ہے جو کہ سیگمنٹیشن ٹاسک میں عمدہ پیداوار حاصل کرنے کے لیے بہت اہم ہے۔ نیز نمونے کو 32x تک ڈیکانوولیشن ایک کمپیوٹیشن اور میموری مہنگا آپریشن ہے کیونکہ سیکھے ہوئے نمونے کی تشکیل میں اضافی پیرامیٹرز شامل ہیں۔

اس مقالے میں ایٹروس کنوولوشن یا ہول کنوولوشن یا ڈیلیٹڈ کنوولوشن کے استعمال کی تجویز دی گئی ہے جو ایک ہی نمبر کے پیرامیٹرز کا استعمال کرتے ہوئے بڑے سیاق و سباق کو سمجھنے میں مدد کرتا ہے۔

Source:- https://www.mdpi.com/1424-8220/19/24/5361/htm

ڈائلٹیڈ کنوولوشن پیرامیٹرز کے درمیان خلا کو پُر کرنے کے لیے زیرو (جسے سوراخ کہتے ہیں) جوڑ کر فلٹر کا سائز بڑھا کر کام کرتا ہے۔ فلٹر پیرامیٹرز کے درمیان بھرے ہوئے سوراخوں/صفر کی تعداد کو ٹرم ڈیلیشن ریٹ کہتے ہیں۔ جب شرح 1 کے برابر ہے تو یہ عام کنوولوشن کے سوا کچھ نہیں ہے۔ جب شرح 2 کے برابر ہوتی ہے تو ہر دوسرے پیرامیٹر کے درمیان ایک صفر ڈالا جاتا ہے جس سے فلٹر 5×5 کنولوشن کی طرح نظر آتا ہے۔ اب اس میں 5×5 کنولوشن پیرامیٹرز کے ساتھ 3×3 کنوولوشن کا سیاق و سباق حاصل کرنے کی صلاحیت ہے۔ اسی طرح ریٹ 3 کے لیے ریسپٹیو فیلڈ 7×7 پر جاتا ہے۔

ڈیپ لیب میں آخری پولنگ لیئرز کو 1 کی بجائے سٹرائیڈ 2 میں تبدیل کیا جاتا ہے جس سے نمونے لینے کی شرح صرف 8x تک رہ جاتی ہے۔ پھر بڑے سیاق و سباق کو حاصل کرنے کے لیے atrous convolutions کا ایک سلسلہ لاگو کیا جاتا ہے۔ تربیت کے لیے آؤٹ پٹ لیبل والے ماسک کو ہر ایک پکسل کا موازنہ کرنے کے لیے نمونہ 8x نیچے کیا گیا ہے۔ تخمینہ کے لیے، بائلینئر اپ سیمپلنگ کا استعمال ایک ہی سائز کا آؤٹ پٹ تیار کرنے کے لیے کیا جاتا ہے جو کم کمپیوٹیشنل/میموری لاگت پر کافی اچھے نتائج دیتا ہے کیونکہ بائلینئر اپ سیمپلنگ کو اپ سیمپلنگ کے لیے ڈیکنولوشن کے برخلاف کسی پیرامیٹرز کی ضرورت نہیں ہوتی ہے۔

اے ایس پی پی

Spatial Pyramidal Pooling ایک تصور ہے جو SPPNet میں متعارف کرایا گیا ہے تاکہ ایک خصوصیت کے نقشے سے کثیر پیمانے کی معلومات حاصل کی جا سکے۔ ایس پی پی متعارف کرانے سے پہلے مختلف ریزولوشنز پر ان پٹ امیجز فراہم کیے جاتے ہیں اور کمپیوٹنگ فیچر میپس کو ایک ساتھ استعمال کیا جاتا ہے تاکہ کثیر پیمانے پر معلومات حاصل کی جا سکیں لیکن اس میں زیادہ حساب اور وقت لگتا ہے۔ Spatial Pyramidal Pooling کے ساتھ ملٹی اسکیل معلومات کو ایک ہی ان پٹ امیج سے حاصل کیا جا سکتا ہے۔

ماخذ:- http://kaiminghe.com/eccv14sppnet/index.html

ایس پی پی ماڈیول کے ساتھ نیٹ ورک 3×1 (یعنی GAP)، 1×2 اور 2×4 کے طول و عرض کے 4 آؤٹ پٹ تیار کرتا ہے۔ ان اقدار کو 1d ویکٹر میں تبدیل کر کے مربوط کیا جاتا ہے اس طرح متعدد پیمانے پر معلومات حاصل کی جاتی ہیں۔ SPP استعمال کرنے کا ایک اور فائدہ یہ ہے کہ کسی بھی سائز کی ان پٹ امیجز فراہم کی جا سکتی ہیں۔

ASPP مختلف پیمانوں سے معلومات کو فیوز کرنے کا تصور لیتا ہے اور اسے ایٹروس کنوولوشنز پر لاگو کرتا ہے۔ ان پٹ مختلف بازی کی شرحوں کے ساتھ جڑا ہوا ہے اور ان کے آؤٹ پٹس کو ایک ساتھ ملایا جاتا ہے۔

ماخذ:- http://liangchiehchen.com/projects/DeepLab.html

جیسا کہ دیکھا جا سکتا ہے کہ ان پٹ 3 × 3 فلٹرز کے پھیلاؤ کی شرح 6، 12، 18 اور 24 کے ساتھ جڑا ہوا ہے اور آؤٹ پٹس کو ایک ساتھ جوڑا گیا ہے کیونکہ وہ ایک ہی سائز کے ہیں۔ فیوزڈ آؤٹ پٹ میں 1 × 1 کنولوشن آؤٹ پٹ بھی شامل کیا جاتا ہے۔ عالمی معلومات فراہم کرنے کے لیے، GAP آؤٹ پٹ کو بھی اوپر کے نمونے لینے کے بعد شامل کیا جاتا ہے۔ مطلوبہ تعداد میں چینلز تک پہنچنے کے لیے 3×3 متنوع ڈیلیٹڈ آؤٹ پٹ، 1×1 اور GAP آؤٹ پٹ کی فیوزڈ آؤٹ پٹ 1×1 کنولوشن سے گزری ہے۔

چونکہ مطلوبہ تصویر کو سیگمنٹ کرنے کے لیے ان پٹ میں کسی بھی سائز کا ہو سکتا ہے، ASPP سے ملٹی اسکیل معلومات نتائج کو بہتر بنانے میں مدد کرتی ہیں۔

CRF کے ساتھ آؤٹ پٹ کو بہتر بنانا

پولنگ ایک ایسا آپریشن ہے جو نیورل نیٹ ورک میں پیرامیٹرز کی تعداد کو کم کرنے میں مدد کرتا ہے لیکن یہ اپنے ساتھ انویرینس کی خاصیت بھی لاتا ہے۔ انویرینس ایک نیورل نیٹ ورک کا معیار ہے جو ان پٹ میں معمولی ترجمے سے متاثر نہیں ہوتا ہے۔ پولنگ کے ساتھ حاصل ہونے والی اس خاصیت کی وجہ سے عصبی نیٹ ورک کے ذریعے حاصل کردہ سیگمنٹیشن آؤٹ پٹ موٹا ہے اور حدود کی قطعی طور پر وضاحت نہیں کی گئی ہے۔

ماخذ:- http://liangchiehchen.com/projects/DeepLab.html

اس سے نمٹنے کے لیے کاغذ گرافیکل ماڈل CRF کے استعمال کی تجویز کرتا ہے۔ مشروط رینڈم فیلڈ ایک پوسٹ پروسیسنگ مرحلہ چلاتا ہے اور شکل کی حدود کی وضاحت کرنے کے لئے تیار کردہ نتائج کو بہتر بنانے کی کوشش کرتا ہے۔ یہ نہ صرف اس کے لیبل کی بنیاد پر بلکہ دوسرے پکسل لیبل کی بنیاد پر پکسل کی درجہ بندی کرکے کام کرتا ہے۔ جیسا کہ مندرجہ بالا اعداد و شمار سے دیکھا جا سکتا ہے کہ عصبی نیٹ ورک کی طرف سے تیار کردہ موٹے حد CRF سے گزرنے کے بعد مزید بہتر ہو جاتی ہے۔

Deeplab-v3 نے بیچ نارملائزیشن کو متعارف کرایا اور تجویز کیا کہ ریزیٹ بلاک میں ہر پرت کے اندر پھیلاؤ کی شرح کو (1,2,4) سے ضرب کیا جائے۔ ASPP ماڈیول میں تصویری سطح کی خصوصیات کو بھی شامل کرنا جس پر ASPP پر اوپر کی بحث میں بحث کی گئی تھی اس مقالے کے حصے کے طور پر تجویز کی گئی تھی۔

ماخذ:- https://arxiv.org/pdf/1706.05587.pdf

Deeplab-v3+ نے 16x نمونے لینے والے سادہ بائلینر کے بجائے ایک ڈیکوڈر رکھنے کا مشورہ دیا۔ ڈیکوڈر U-Net جیسے فن تعمیر کے ذریعہ استعمال ہونے والے ڈیکوڈر سے اشارہ لیتا ہے جو نتائج کو بہتر بنانے کے لئے انکوڈر پرتوں سے معلومات لیتا ہے۔ انکوڈر آؤٹ پٹ کو بائلینئر اپ سیمپلنگ کا استعمال کرتے ہوئے 4x نمونہ بنایا گیا ہے اور انکوڈر کی خصوصیات کے ساتھ جوڑ دیا گیا ہے جو 4×3 کنولوشن انجام دینے کے بعد دوبارہ نمونہ 3x تک ہے۔ یہ نقطہ نظر براہ راست 16x اپ سیمپلنگ سے بہتر نتائج دیتا ہے۔ نیز ترمیم شدہ Xception آرکیٹیکچر کو انکوڈر کے حصے کے طور پر Resnet کے بجائے استعمال کرنے کی تجویز ہے اور گہرائی کے لحاظ سے الگ ہونے والے convolutions کو اب حسابات کی تعداد کو کم کرنے کے لیے Atrous convolutions کے اوپر استعمال کیا جاتا ہے۔

گلوبل کنولوشن نیٹ ورک

ماخذ:- https://arxiv.org/pdf/1703.02719.pdf

سیمنٹک سیگمنٹیشن میں دو کاموں کو بیک وقت انجام دینا شامل ہے۔

i) درجہ بندی
ii) لوکلائزیشن

درجہ بندی کے نیٹ ورک ترجمے اور گردش کے متغیر ہونے کے لیے بنائے گئے ہیں اس لیے مقام کی معلومات کو کوئی اہمیت نہیں دی جاتی ہے جبکہ لوکلائزیشن میں محل وقوع کی درست تفصیلات حاصل کرنا شامل ہے۔ اس طرح فطری طور پر یہ دونوں کام متضاد ہیں۔ زیادہ تر سیگمنٹیشن الگورتھم لوکلائزیشن کو زیادہ اہمیت دیتے ہیں یعنی اوپر والے اعداد و شمار میں دوسرے کو اور اس طرح عالمی سیاق و سباق کو نظر انداز کر دیتے ہیں۔ اس کام میں مصنف نے درجہ بندی کے کام کو بھی اہمیت دینے کا ایک طریقہ تجویز کیا ہے اور ساتھ ہی ساتھ لوکلائزیشن کی معلومات کو بھی ضائع نہیں کیا ہے۔

ماخذ:- https://arxiv.org/pdf/1703.02719.pdf

مصنف نے نیٹ ورک کے حصے کے طور پر بڑے دانا کا استعمال کرتے ہوئے اس کو حاصل کرنے کی تجویز پیش کی ہے اس طرح گھنے رابطوں کو فعال کرتے ہیں اور اس وجہ سے مزید معلومات۔ یہ GCN بلاک کی مدد سے حاصل کیا جاتا ہے جیسا کہ اوپر کی تصویر میں دیکھا جا سکتا ہے۔ GCN بلاک کو akxk convolution فلٹر کے طور پر سمجھا جا سکتا ہے جہاں k 3 سے بڑا نمبر ہو سکتا ہے۔ پیرامیٹرز کی تعداد کو کم کرنے کے لیے akxk فلٹر کو مزید 1 xk اور kx 1، kx1 اور 1xk بلاکس میں تقسیم کیا جاتا ہے جن کا خلاصہ کیا جاتا ہے۔ اس طرح قدر k کو بڑھا کر، بڑے سیاق و سباق کو پکڑا جاتا ہے۔

اس کے علاوہ، مصنف نے باؤنڈری ریفائنمنٹ بلاک کی تجویز پیش کی ہے جو Resnet میں نظر آنے والے بقایا بلاک کی طرح ہے جس میں ایک شارٹ کٹ کنکشن اور ایک بقایا کنکشن ہوتا ہے جس کا خلاصہ نتیجہ حاصل کرنے کے لیے کیا جاتا ہے۔ یہ مشاہدہ کیا گیا ہے کہ باؤنڈری ریفائنمنٹ بلاک ہونے کے نتیجے میں سیگمنٹیشن کی باؤنڈری پر نتائج میں بہتری آئی ہے۔

نتائج سے ظاہر ہوا کہ GCN بلاک نے آبجیکٹ کے مرکز کے قریب پکسلز کی درجہ بندی کی درستگی کو بہتر کیا جو طویل فاصلے کے سیاق و سباق کو کیپچر کرنے کی وجہ سے ہونے والی بہتری کی نشاندہی کرتا ہے جبکہ باؤنڈری ریفائنمنٹ بلاک نے باؤنڈری کے قریب پکسلز کی درستگی کو بہتر بنانے میں مدد کی۔

ایک بار سے زیادہ دیکھیں – KSAC برائے سیمنٹک سیگمنٹیشن

ڈیپلاب فیملی ASPP کا استعمال کرتی ہے تاکہ مختلف ایٹروس کنوولوشن ریٹ کا استعمال کرتے ہوئے ایک سے زیادہ وصول کرنے والے فیلڈز کی معلومات حاصل کریں۔ اگرچہ ASPP نتائج کی تقسیم کو بہتر بنانے میں نمایاں طور پر کارآمد رہا ہے لیکن فن تعمیر کی وجہ سے کچھ موروثی مسائل ہیں۔ ASPP میں مختلف متوازی پرتوں میں کوئی معلومات شیئر نہیں کی گئی ہیں اس طرح ہر پرت میں دانا کی عمومی طاقت کو متاثر کرتی ہے۔ نیز چونکہ ہر پرت تربیتی نمونوں کے مختلف سیٹوں کو پورا کرتی ہے (چھوٹی اشیاء چھوٹے ایٹروس ریٹ پر اور بڑی اشیاء بڑی ایٹروس ریٹ پر)، ہر متوازی پرت کے لئے ڈیٹا کی مقدار کم ہوگی اس طرح مجموعی عامیت کو متاثر کرے گی۔ نیز نیٹ ورک میں پیرامیٹرز کی تعداد پیرامیٹرز کی تعداد کے ساتھ لکیری طور پر بڑھتی ہے اور اس طرح اوور فٹنگ کا باعث بن سکتی ہے۔

ماخذ:- https://arxiv.org/pdf/1908.09443.pdf

ان تمام مسائل کو سنبھالنے کے لیے مصنف نے ایک نیا نیٹ ورک ڈھانچہ تجویز کیا ہے جسے Kernel-Sharing Atrous Convolution (KSAC) کہا جاتا ہے۔ جیسا کہ اوپر کے اعداد و شمار میں دیکھا جا سکتا ہے، ہر متوازی پرت کے لیے ایک مختلف دانا رکھنے کی بجائے ASPP ہے، ایک ہی دانا کو اس پار شیئر کیا جاتا ہے اس طرح نیٹ ورک کی عمومی صلاحیت کو بہتر بنایا جاتا ہے۔ ASPP کے بجائے KSAC استعمال کرنے سے 62% پیرامیٹرز محفوظ ہو جاتے ہیں جب 6,12 اور 18 کی بازی کی شرح استعمال کی جاتی ہے۔

KSAC ڈھانچہ استعمال کرنے کا ایک اور فائدہ یہ ہے کہ پیرامیٹرز کی تعداد استعمال شدہ بازی کی شرح کی تعداد سے آزاد ہے۔ اس طرح ہم ماڈل کے سائز میں اضافہ کیے بغیر زیادہ سے زیادہ شرحیں شامل کر سکتے ہیں۔ ASPP 6,12,18 کی شرح کے ساتھ بہترین نتائج دیتا ہے لیکن درستگی 6,12,18,24 کے ساتھ کم ہوتی ہے جو ممکنہ اوور فٹنگ کی نشاندہی کرتی ہے۔ لیکن KSAC کی درستگی اب بھی کافی حد تک بہتر ہوتی ہے جو کہ بہتر عام کرنے کی صلاحیت کو ظاہر کرتی ہے۔

اس کرنل شیئرنگ تکنیک کو فیچر اسپیس میں اضافے کے طور پر بھی دیکھا جا سکتا ہے کیونکہ ایک ہی دانا کو متعدد شرحوں پر لاگو کیا جاتا ہے۔ اسی طرح جس طرح ان پٹ بڑھانا بہتر نتائج دیتا ہے، نیٹ ورک میں فیچر بڑھانے سے نیٹ ورک کی نمائندگی کی صلاحیت کو بہتر بنانے میں مدد ملنی چاہیے۔

ویڈیو کی تقسیم

سیلف ڈرائیونگ کاریں، روبوٹکس وغیرہ جیسے استعمال کے معاملات کے لیے مشاہدہ شدہ ویڈیو پر ریئل ٹائم سیگمنٹیشن کی ضرورت ہے۔ اب تک زیر بحث آرکیٹیکچرز کافی حد تک درستگی کے لیے بنائے گئے ہیں نہ کہ رفتار کے لیے۔ لہذا اگر وہ ویڈیو پر فی فریم کی بنیاد پر لاگو ہوتے ہیں تو نتیجہ بہت کم رفتار پر آئے گا۔

نیز عام طور پر ایک ویڈیو میں لگاتار فریموں کے مناظر میں بہت زیادہ اوورلیپ ہوتا ہے جسے نتائج اور رفتار کو بہتر بنانے کے لیے استعمال کیا جا سکتا ہے جو کہ تصویر میں نہیں آئے گا اگر تجزیہ فی فریم کی بنیاد پر کیا جائے۔ ان اشاروں کا استعمال کرتے ہوئے آئیے ان آرکیٹیکچرز پر بات کرتے ہیں جو خاص طور پر ویڈیوز کے لیے بنائے گئے ہیں۔

STFCN

Spatio-Temporal FCN ویڈیو سیگمنٹیشن کرنے کے لیے LSTM کے ساتھ FCN استعمال کرنے کی تجویز کرتا ہے۔ ہم پہلے سے ہی اس بات سے واقف ہیں کہ تصویر کو الگ کرنے کے لیے FCN کو کس طرح استعمال کیا جا سکتا ہے۔ LSTM ایک قسم کے عصبی نیٹ ورک ہیں جو وقت کے ساتھ ترتیب وار معلومات حاصل کر سکتے ہیں۔ STFCN مقامی معلومات اور وقتی معلومات دونوں کو حاصل کرنے کے لیے LSTM کے ساتھ FCN کی طاقت کو جوڑتا ہے۔

ماخذ:- https://arxiv.org/abs/1608.05971

جیسا کہ اوپر دیے گئے اعداد و شمار سے دیکھا جا سکتا ہے STFCN ایک FCN، Spatio-temporal ماڈیول پر مشتمل ہوتا ہے جس کے بعد deconvolution ہوتا ہے۔ FCN کے ذریعہ تیار کردہ خصوصیت کا نقشہ Spatio-Temporal Module کو بھیجا جاتا ہے جس میں پچھلے فریم کے ماڈیول سے ایک ان پٹ بھی ہوتا ہے۔ ان دونوں ان پٹس پر مبنی ماڈیول مقامی معلومات کے علاوہ وقتی معلومات کو حاصل کرتا ہے اور اسے اس پار بھیجتا ہے جس کا نمونہ تصویر کے اصل سائز کے مطابق ہوتا ہے جیسا کہ FCN میں کیا جاتا ہے۔

چونکہ FCN اور LSTM دونوں STFCN کے حصے کے طور پر مل کر کام کر رہے ہیں، نیٹ ورک قابل تربیت ہے اور سنگل فریم سیگمنٹیشن اپروچ سے بہتر کارکردگی کا مظاہرہ کرتا ہے۔ اسی طرح کے نقطہ نظر ہیں جہاں LSTM کو GRU سے تبدیل کیا گیا ہے لیکن مقامی اور وقتی دونوں معلومات کو حاصل کرنے کا تصور ایک جیسا ہے۔

سیمینٹک ویڈیو CNNs بذریعہ نمائندگی وارپنگ

یہ مقالہ تقسیم کے نتائج کو بہتر بنانے کے لیے ایک اضافی ان پٹ کے طور پر ملحقہ فریموں میں نظری بہاؤ کے استعمال کی تجویز پیش کرتا ہے۔

ماخذ:- https://arxiv.org/abs/1708.03088

تجویز کردہ نقطہ نظر کو کسی بھی معیاری فن تعمیر میں بطور پلگ ان شامل کیا جا سکتا ہے۔ اہم جزو جو کھیل میں ہے وہ ہے NetWarp ماڈیول۔ سیگمنٹیشن میپ کی گنتی کرنے کے لیے موجودہ فریم اور پچھلے فریم کے درمیان آپٹیکل فلو کا حساب لگایا جاتا ہے یعنی Ft اور Λ(Ft) حاصل کرنے کے لیے FlowCNN سے گزرا جاتا ہے۔ اس عمل کو فلو ٹرانسفارمیشن کہتے ہیں۔ یہ قدر ایک وارپ ماڈیول سے گزرتی ہے جو نیٹ ورک سے گزر کر حساب کی گئی انٹرمیڈیٹ لیئر کے فیچر میپ کو بھی ان پٹ کے طور پر لیتی ہے۔ یہ ایک وارپڈ فیچر میپ دیتا ہے جسے پھر موجودہ پرت کے انٹرمیڈیٹ فیچر میپ کے ساتھ جوڑ دیا جاتا ہے اور پورا نیٹ ورک اینڈ ٹو اینڈ ٹرینڈ ہوتا ہے۔ اس فن تعمیر نے CamVid اور Cityscapes ویڈیو بینچ مارک ڈیٹاسیٹس پر SOTA کے نتائج حاصل کیے ہیں۔

ویڈیو سیمنٹک سیگمنٹیشن کے لیے کلاک ورک کنوینٹ

اس مقالے میں اس حقیقت کا فائدہ اٹھاتے ہوئے کہ ویڈیو میں سیمنٹک معلومات پکسل لیول کی معلومات کے مقابلے میں آہستہ آہستہ تبدیل ہوتی ہیں، ویڈیوز پر سیگمنٹیشن ٹاسک کے لیے نیورل نیٹ ورک کی رفتار کو بہتر بنانے کی تجویز پیش کرتا ہے۔ لہذا آخری تہوں میں معلومات ابتدائی تہوں کے مقابلے میں بہت سست رفتار سے تبدیل ہوتی ہیں۔ کاغذ مختلف اوقات تجویز کرتا ہے۔

ماخذ:- https://arxiv.org/abs/1608.03609

مندرجہ بالا اعداد و شمار درمیانی سطح کی تہہ پول4 اور ایک گہری تہہ fc7 کے مقابلے تبدیلی کی شرح کی نمائندگی کرتا ہے۔ بائیں طرف ہم دیکھتے ہیں کہ چونکہ فریموں میں بہت زیادہ تبدیلیاں ہیں دونوں پرتیں تبدیلی دکھاتی ہیں لیکن پول 4 میں تبدیلی زیادہ ہے۔ دائیں طرف ہم دیکھتے ہیں کہ فریموں میں بہت زیادہ تبدیلی نہیں ہے۔ اس لیے پول 4 معمولی تبدیلی دکھاتا ہے جبکہ fc7 تقریباً صفر تبدیلی دکھاتا ہے۔

تحقیق اس تصور کو بروئے کار لاتی ہے اور تجویز کرتی ہے کہ ایسے معاملات میں جہاں تمام فریموں میں زیادہ تبدیلی نہیں ہوتی ہے وہاں فیچرز/آؤٹ پٹس کو دوبارہ کمپیوٹنگ کرنے کی ضرورت نہیں ہے اور پچھلے فریم سے کیشڈ ویلیوز کو استعمال کیا جا سکتا ہے۔ چونکہ تبدیلی کی شرح تہوں کے ساتھ مختلف ہوتی ہے تہوں کے مختلف سیٹوں کے لیے مختلف گھڑیاں سیٹ کی جا سکتی ہیں۔ جب گھڑی ٹک کرتی ہے تو نئے آؤٹ پٹ کا حساب لگایا جاتا ہے، بصورت دیگر کیش شدہ نتائج استعمال کیے جاتے ہیں۔ گھڑی کی ٹک کی شرح مستحکم طور پر طے کی جا سکتی ہے یا متحرک طور پر سیکھی جا سکتی ہے۔

ماخذ:- https://arxiv.org/abs/1608.03609

کم تاخیر والی ویڈیو سیمنٹک سیگمنٹیشن

یہ مقالہ مندرجہ بالا بحث کے اوپری حصے میں سیگمنٹیشن میپ کی گنتی کے لیے فریموں کو انکولی طور پر منتخب کر کے یا فکسڈ ٹائمر یا ہیورسٹک استعمال کرنے کے بجائے کیشڈ رزلٹ کو استعمال کر کے بہتر بناتا ہے۔

ماخذ:- https://arxiv.org/abs/1804.00389

کاغذ میں نیٹ ورک کو 2 حصوں، نچلی سطح کی خصوصیات اور اعلی سطح کی خصوصیات میں تقسیم کرنے کی تجویز ہے۔ نیٹ ورک میں نچلی سطح کی خصوصیات کو کمپیوٹنگ کی لاگت اعلی خصوصیات کے مقابلے میں بہت کم ہے۔ تحقیق میں نچلی سطح کے نیٹ ورک کی خصوصیات کو سیگمنٹیشن میپ میں تبدیلی کے اشارے کے طور پر استعمال کرنے کا مشورہ دیا گیا ہے۔ اپنے مشاہدات میں انہوں نے نچلی سطح کی خصوصیات کی تبدیلی اور سیگمنٹیشن میپ کی تبدیلی کے درمیان مضبوط ارتباط پایا۔ لہٰذا یہ سمجھنے کے لیے کہ کیا حساب کرنے کی ضرورت ہے اگر اعلیٰ خصوصیات کا حساب لگانے کی ضرورت ہے، 2 فریموں میں نچلی خصوصیات کا فرق پایا جاتا ہے اور اگر یہ کسی خاص حد کو عبور کرتا ہے تو اس کا موازنہ کیا جاتا ہے۔ یہ پورا عمل ایک چھوٹے سے نیورل نیٹ ورک کے ذریعے خودکار ہوتا ہے جس کا کام دو فریموں کے نچلے فیچرز کو لینا اور اس بات کی پیشین گوئی کرنا ہے کہ آیا اعلیٰ فیچرز کو شمار کیا جانا چاہیے یا نہیں۔ چونکہ نیٹ ورک کا فیصلہ ان پٹ فریموں پر مبنی ہے جو لیا گیا فیصلہ اوپر کے نقطہ نظر کے مقابلے میں متحرک ہے۔

پوائنٹ بادلوں کے لیے سیگمنٹیشن

لیڈر جیسے سینسر سے آنے والا ڈیٹا پوائنٹ کلاؤڈ نامی فارمیٹ میں محفوظ ہوتا ہے۔ پوائنٹ کلاؤڈ کچھ نہیں بلکہ 3d ڈیٹا پوائنٹس (یا کسی بھی جہت) کے غیر ترتیب شدہ سیٹ کا مجموعہ ہے۔ یہ 3d میں منظر کی بہت کم نمائندگی ہے اور ایسی صورت میں CNN کا براہ راست اطلاق نہیں کیا جا سکتا۔ نیز پوائنٹ کلاؤڈز سے نمٹنے کے لیے ڈیزائن کیے گئے کسی بھی فن تعمیر کو اس بات کو مدنظر رکھنا چاہیے کہ یہ ایک غیر ترتیب شدہ سیٹ ہے اور اس لیے بہت زیادہ ممکنہ ترتیب ہو سکتی ہے۔ لہٰذا نیٹ ورک کو پرموٹیشن انویرینٹ ہونا چاہیے۔ نیز پوائنٹ کلاؤڈ میں بیان کردہ پوائنٹس کو ان کے درمیان فاصلے سے بیان کیا جاسکتا ہے۔ عام طور پر قریب ترین نکات مفید معلومات رکھتے ہیں جو تقسیم کے کاموں کے لیے مفید ہے۔

پوائنٹ نیٹ

PointNet درجہ بندی اور تقسیم کے کاموں کو حل کرنے کے لیے گہری تعلیم کا استعمال کرتے ہوئے پوائنٹ کلاؤڈز پر تحقیق کی تاریخ کا ایک اہم مقالہ ہے۔ آئیے پوائنٹ نیٹ کے فن تعمیر کا مطالعہ کرتے ہیں۔

ماخذ:- https://arxiv.org/abs/1612.00593

n پوائنٹس کے لیے نیٹ ورک کا ان پٹ ایک nx 3 میٹرکس ہے۔ nx 3 میٹرکس کو مشترکہ ملٹی پرسیپٹرون پرت (مکمل طور پر منسلک نیٹ ورک) کا استعمال کرتے ہوئے nx 64 پر میپ کیا جاتا ہے جسے پھر nx 64 اور پھر nx 128 اور nx 1024 پر میپ کیا جاتا ہے۔ 1024 ویکٹر حاصل کرنے کے لیے میکس پولنگ کا اطلاق ہوتا ہے جسے k میں تبدیل کیا جاتا ہے۔ سائز 512، 256 اور k کے ساتھ MLP سے گزر کر آؤٹ پٹ۔ آخر میں k کلاس آؤٹ پٹ کسی بھی درجہ بندی نیٹ ورک کی طرح تیار کیے جاتے ہیں۔

درجہ بندی صرف عالمی خصوصیات سے متعلق ہے لیکن تقسیم کے لیے مقامی خصوصیات کی بھی ضرورت ہے۔ لہذا nx 64 پر انٹرمیڈیٹ لیئر سے مقامی خصوصیات کو عالمی خصوصیات کے ساتھ مربوط کیا گیا ہے تاکہ anx 1088 میٹرکس حاصل کیا جا سکے جو 512 اور 256 کے mlp ​​کے ذریعے nx 256 تک پہنچنے کے لیے بھیجا جاتا ہے اور پھر اگرچہ MLPs of 128 اور m ہر پوائنٹ کے لیے m آؤٹ پٹ کلاسز دینے کے لیے۔ نقطہ بادل میں.

نیز نیٹ ورک میں نیٹ ورک کے حصے کے طور پر ایک ان پٹ ٹرانسفارم اور فیچر ٹرانسفارم شامل ہوتا ہے جس کا کام ان پٹ کی شکل کو تبدیل نہیں کرنا بلکہ affine ٹرانسفارمیشنز یعنی ترجمہ، گردش وغیرہ میں تبدیلی شامل کرنا ہے۔

A-CNN

ماخذ:- https://arxiv.org/abs/1904.08017

A-CNN نے مقامی معلومات کو حاصل کرنے کے لیے اینولر کنولوشنز کے استعمال کی تجویز پیش کی ہے۔ ہم CNN سے جانتے ہیں کہ کنوولوشن آپریشنز مقامی معلومات کو حاصل کرتے ہیں جو امیج کو سمجھنے کے لیے ضروری ہے۔ A-CNN نے ایک نیا کنولوشن وضع کیا جسے Annular convolution کہا جاتا ہے جس کا اطلاق پوائنٹ کلاؤڈ میں پڑوسی پوائنٹس پر ہوتا ہے۔

فن تعمیر ان پٹ nx 3 پوائنٹس کے طور پر لیتا ہے اور ان کے لیے نارمل تلاش کرتا ہے جو پوائنٹس کی ترتیب کے لیے استعمال ہوتا ہے۔ پوائنٹس کا ذیلی نمونہ FPS الگورتھم کا استعمال کرتے ہوئے لیا جاتا ہے جس کے نتیجے میں ni x 3 پوائنٹس ہوتے ہیں۔ ان کنولر کنولیشن کو 128 ڈائمینشنز تک بڑھانے کے لیے لاگو کیا جاتا ہے۔ کنولر کنوولوشن پڑوس کے پوائنٹس پر انجام دیا جاتا ہے جس کا تعین KNN الگورتھم کے ذریعے کیا جاتا ہے۔

اوپر کی کارروائیوں کا ایک اور سیٹ طول و عرض کو 256 تک بڑھانے کے لیے انجام دیا جاتا ہے۔ پھر طول و عرض کو 1024 میں تبدیل کرنے کے لیے ایم ایل پی کا اطلاق ہوتا ہے اور پوائنٹ کلاؤڈ کی طرح 1024 عالمی ویکٹر حاصل کرنے کے لیے پولنگ کا اطلاق ہوتا ہے۔ اس پورے حصے کو انکوڈر سمجھا جاتا ہے۔ درجہ بندی کے لیے انکوڈر گلوبل آؤٹ پٹ کو ایم ایل پی کے ذریعے سی کلاس آؤٹ پٹ حاصل کرنے کے لیے پاس کیا جاتا ہے۔ سیگمنٹیشن ٹاسک کے لیے عالمی اور مقامی دونوں فیچرز کو پوائنٹ سی این این کی طرح سمجھا جاتا ہے اور پھر ہر پوائنٹ کے لیے ایم کلاس آؤٹ پٹس حاصل کرنے کے لیے ایم ایل پی کے ذریعے پاس کیا جاتا ہے۔

پیمائش کا معیار

آئیے ان میٹرکس پر بات کرتے ہیں جو عام طور پر کسی ماڈل کے نتائج کو سمجھنے اور جانچنے کے لیے استعمال ہوتے ہیں۔

پکسل کی درستگی

پکسل کی درستگی سب سے بنیادی میٹرک ہے جسے نتائج کی توثیق کرنے کے لیے استعمال کیا جا سکتا ہے۔ درستگی درست طریقے سے درجہ بندی شدہ پکسلز wrt کل پکسلز کے تناسب کو لے کر حاصل کی جاتی ہے

درستگی = (TP+TN)/(TP+TN+FP+FN)

اس طرح کی تکنیک کے استعمال کا سب سے بڑا نقصان یہ ہے کہ اگر ایک طبقہ دوسرے پر غالب آجائے تو نتیجہ اچھا لگ سکتا ہے۔ مثال کے طور پر کہیے کہ بیک گراؤنڈ کلاس ان پٹ امیج کے 90% پر محیط ہے ہم صرف ہر پکسل کو بیک گراؤنڈ کے طور پر درجہ بندی کر کے 90% کی درستگی حاصل کر سکتے ہیں۔

یونین اوور انٹرسیکشن

IOU کی تعریف زمینی سچائی کے انقطاع کے تناسب کے طور پر کی گئی ہے اور ان کے اتحاد پر پیش گوئی شدہ سیگمنٹیشن آؤٹ پٹس۔ اگر ہم متعدد کلاسوں کا حساب لگا رہے ہیں، تو ہر کلاس کے IOU کا حساب لگایا جاتا ہے اور ان کا اوسط لیا جاتا ہے۔ پکسل کی درستگی کے مقابلے میں یہ ایک بہتر میٹرک ہے جیسا کہ اگر ہر پکسل کو 2 کلاس ان پٹ میں بیک گراؤنڈ کے طور پر دیا جائے تو IOU ویلیو (90/100+0/100)/2 یعنی 45% IOU ہے جو 90 کے مقابلے میں بہتر نمائندگی دیتا ہے۔ ٪ درستگی.

ماخذ:- https://www.pyimagesearch.com/2016/11/07/intersection-over-union-iou-for-object-detection

تعدد وزنی IOU

یہ اوسط IOU پر ایک توسیع ہے جس پر ہم نے تبادلہ خیال کیا اور اسے طبقاتی عدم توازن سے نمٹنے کے لیے استعمال کیا جاتا ہے۔ اگر ایک کلاس ڈیٹاسیٹ میں تصاویر کے زیادہ تر حصے پر حاوی ہے جیسے مثال کے طور پر پس منظر، تو اسے دوسری کلاسوں کے مقابلے میں کم کرنے کی ضرورت ہے۔ اس طرح کلاس کے تمام نتائج کا اوسط لینے کے بجائے، ڈیٹاسیٹ میں کلاس ریجن کی فریکوئنسی کی بنیاد پر ایک وزنی مطلب لیا جاتا ہے۔

F1 سکور

درجہ بندی F1 سکور میں مقبول طور پر استعمال ہونے والے میٹرک کو تقسیم کاری کے کام کے ساتھ ساتھ طبقاتی عدم توازن سے نمٹنے کے لیے بھی استعمال کیا جا سکتا ہے۔

ماخذ:- https://en.wikipedia.org/wiki/F1_score

اوسط صحت سے متعلق

درستگی کے تحت رقبہ - نتائج کی توثیق کے لیے مختلف کلاسوں میں منتخب کردہ حد کے لیے IOU اوسط کا استعمال کیا جاتا ہے۔

نقصان کے افعال

نقصان کی تقریب کا استعمال عصبی نیٹ ورک کی اصلاح کی طرف رہنمائی کے لیے کیا جاتا ہے۔ آئیے سیمنٹک سیگمنٹیشن ٹاسک کے لیے نقصان کے چند مقبول افعال پر بات کرتے ہیں۔

کراس اینٹروپی نقصان

تصویر میں ہر پکسل کے لیے کراس اینٹروپی درجہ بندی کے نقصان کی سادہ اوسط کو مجموعی فنکشن کے طور پر استعمال کیا جا سکتا ہے۔ لیکن یہ دوبارہ طبقاتی عدم توازن کی وجہ سے متاثر ہوتا ہے جسے FCN نے کلاس وزن کے استعمال سے درست کرنے کی تجویز پیش کی ہے۔

UNet سرحد کے قریب پکسلز کو زیادہ وزن دے کر اس میں بہتری لانے کی کوشش کرتا ہے جو اندرونی پکسلز کے مقابلے باؤنڈری کا حصہ ہیں کیونکہ اس سے نیٹ ورک سرحدوں کی شناخت پر زیادہ توجہ دیتا ہے اور موٹے آؤٹ پٹ نہیں دیتا ہے۔

فوکل نقصان

فوکل نقصان کو زیادہ وزن کی عمر دے کر نیٹ ورک کو سخت مثالوں پر توجہ مرکوز کرنے کے لیے ڈیزائن کیا گیا تھا اور سنگل اسٹیج آبجیکٹ ڈیٹیکٹرز میں پائے جانے والے انتہائی طبقاتی عدم توازن سے نمٹنے کے لیے بھی۔ اسی کا اطلاق سیمنٹک سیگمنٹیشن کے کاموں میں بھی کیا جا سکتا ہے۔

نرد کا نقصان

ڈائس فنکشن F1 سکور کے علاوہ کچھ نہیں ہے۔ نقصان کا یہ فنکشن براہ راست F1 سکور کو بہتر بنانے کی کوشش کرتا ہے۔ اسی طرح براہ راست IOU سکور بھی اصلاح کو چلانے کے لیے استعمال کیا جا سکتا ہے۔

ٹورسکی نقصان

یہ ڈائس کے نقصان کی ایک قسم ہے جو FN اور FP کو مختلف وزن کی عمر دیتا ہے۔

ہاسڈورف فاصلہ

یہ ایک تکنیک ہے جو زمینی سچائی اور پیشین گوئی کی حدود کے درمیان مماثلت کی پیمائش کے لیے استعمال ہوتی ہے۔ اس کا حساب ایک باؤنڈری میں کسی بھی نقطہ سے دوسرے کے قریب ترین پوائنٹ تک زیادہ سے زیادہ فاصلہ معلوم کرکے لگایا جاتا ہے۔ باؤنڈری نقصان کے فنکشن کو براہ راست کم کرنا ایک حالیہ رجحان ہے اور خاص طور پر استعمال کے معاملات میں طبی امیج سیگمنٹیشن میں بہتر نتائج دیتے ہوئے دکھایا گیا ہے جہاں درست حد کی شناخت کلیدی کردار ادا کرتی ہے۔

IOU یا Dice Loss جیسے خطے پر مبنی نقصان کے مقابلے میں باؤنڈری نقصان استعمال کرنے کا فائدہ یہ ہے کہ یہ طبقاتی عدم توازن سے متاثر نہیں ہوتا ہے کیونکہ پورے خطے کو اصلاح کے لیے نہیں سمجھا جاتا ہے، صرف باؤنڈری پر غور کیا جاتا ہے۔

ماخذ https://en.wikipedia.org/wiki/Hausdorff_distance

یہاں جن دو اصطلاحات پر غور کیا گیا ہے وہ دو حدود کے لیے ہیں یعنی زمینی سچائی اور آؤٹ پٹ پیشین گوئی۔

لیبل می :-

python میں لکھا ہوا تصویری تشریح کا آلہ۔
کثیرالاضلاع تشریح کی حمایت کرتا ہے۔
اوپن سورس اور مفت۔
ونڈوز، میک، اوبنٹو یا ایناکونڈا، ڈوکر کے ذریعے چلتا ہے۔
لنک :- https://github.com/wkentaro/labelme

ماخذ:- https://github.com/wkentaro/labelme

کمپیوٹر وژن تشریح کا آلہ:-

انٹیل کے ذریعہ تیار کردہ ویڈیو اور تصویری تشریح کا ٹول
مفت اور آن لائن دستیاب ہے۔
ونڈوز، میک اور اوبنٹو پر چلتا ہے۔
لنک :- https://github.com/opencv/cvat

وی جی جی امیج اینوٹیٹر :-

مفت اوپن سورس امیج انوٹیشن ٹول
سادہ html صفحہ < 200kb اور آف لائن چل سکتا ہے۔
کثیرالاضلاع تشریح اور پوائنٹس کی حمایت کرتا ہے۔
لنک :- https://github.com/ox-vgg/via

ماخذ:- https://github.com/ox-vgg/via

رییکٹ لیبل:-

میک کے لیے ادا شدہ تشریحی ٹول
تصاویر کو پہلے سے تشریح کرنے کے لیے بنیادی ML ماڈل استعمال کر سکتے ہیں۔
کثیر الاضلاع، کیوبک بیزیئر، لائنز اور پوائنٹس کو سپورٹ کرتا ہے۔
لنک :- https://github.com/ryouchinsa/Rectlabel-support

لیبل باکس:-

ادا شدہ تشریح کا آلہ
تیز اور درست تشریح کے لیے قلم کے آلے کو سپورٹ کرتا ہے۔
لنک :- https://labelbox.com/product/image-segmentation

ڈیٹا سیٹ

اس سیکشن کے ایک حصے کے طور پر آئیے عوام میں دستیاب مختلف مقبول اور متنوع ڈیٹاسیٹس پر تبادلہ خیال کریں جنہیں کوئی بھی تربیت کے ساتھ شروع کرنے کے لیے استعمال کر سکتا ہے۔

پاسکل سیاق و سباق

یہ ڈیٹا سیٹ پاسکل VOC 2010 ڈیٹاسیٹ کی توسیع ہے اور پورے منظر کے لیے تشریحات فراہم کر کے اصل ڈیٹا سیٹ سے آگے بڑھتا ہے اور اس میں حقیقی دنیا کے ڈیٹا کی 400+ کلاسز ہیں۔

ماخذ:- https://cs.stanford.edu/~roozbeh/pascal-context/
ماخذ:- https://cs.stanford.edu/~roozbeh/pascal-context/

لنک :- https://cs.stanford.edu/~roozbeh/pascal-context/

COCO ڈیٹاسیٹ

COCO سٹف ڈیٹاسیٹ میں اصل COCO ڈیٹاسیٹ کی 164k تصاویر ہیں جن میں پکسل لیول کی تشریحات ہیں اور یہ ایک عام بینچ مارک ڈیٹاسیٹ ہے۔ اس میں 172 کلاسز شامل ہیں: 80 چیزوں کی کلاسز، 91 اسٹف کلاسز اور 1 کلاس 'غیر لیبل'

ماخذ:- http://cocodataset.org/#home

لنک :- http://cocodataset.org/

سٹی اسکیپس ڈیٹاسیٹ

یہ ڈیٹا سیٹ سڑکوں، لینوں، گاڑیوں اور سڑک پر موجود اشیاء کے لیے زمینی حقائق پر مشتمل ہے۔ ڈیٹا سیٹ میں 30 کلاسز اور 50 شہروں پر مشتمل ہے جو مختلف ماحولیاتی اور موسمی حالات پر جمع کیے گئے ہیں۔ باریک تشریح شدہ تصاویر کا ایک ویڈیو ڈیٹاسیٹ بھی ہے جسے ویڈیو سیگمنٹیشن کے لیے استعمال کیا جا سکتا ہے۔ KITTI اور CamVid اسی طرح کے ڈیٹا سیٹس ہیں جو خود ڈرائیونگ کاروں کی تربیت کے لیے استعمال کیے جا سکتے ہیں۔

ماخذ:- https://www.cityscapes-dataset.com/

لنک :- https://www.cityscapes-dataset.com/

لِٹس ڈیٹاسیٹ

ڈیٹاسیٹ کو جگر کے سی ٹی اسکینوں سے ٹیومر کے گھاووں کی نشاندہی کرنے کے چیلنج کے حصے کے طور پر بنایا گیا تھا۔ ڈیٹاسیٹ میں تربیتی ڈیٹا کے 130 CT سکین اور ٹیسٹنگ ڈیٹا کے 70 CT سکین شامل ہیں۔

ماخذ:- https://competitions.codalab.org/competitions/17094

لنک :- https://competitions.codalab.org/competitions/17094

سی سی پی ڈیٹاسیٹ

کلاتھ کو پارسنگ ایک ڈیٹاسیٹ ہے جو مشترکہ امیج سیگمنٹیشن اور لیبلنگ کے ذریعے ریسرچ پیپر Clothing Co-Parsing کے حصے کے طور پر بنایا گیا ہے۔ ڈیٹاسیٹ میں کل 1000 ٹیگز کے لیے پکسل لیول کی تشریحات کے ساتھ 59+ تصاویر شامل ہیں۔

ماخذ:- https://github.com/bearpaw/clothing-co-parsing

ذریعہ :- https://github.com/bearpaw/clothing-co-parsing

پرتھیپن ڈیٹاسیٹ

گوگل کی تصاویر کی بنیاد پر جلد کی تقسیم کے کام کے لیے بنایا گیا ڈیٹاسیٹ جس میں 32 چہرے کی تصاویر اور 46 فیملی فوٹوز شامل ہیں۔

ماخذ:- http://cs-chan.com/downloads_skin_dataset.html

لنک :- http://cs-chan.com/downloads_skin_dataset.html

انریا ایریل امیج لیبلنگ

عوامی ڈومین کی تصاویر سے تخلیق کردہ فضائی تقسیم کے نقشوں کا ڈیٹا سیٹ۔ 810 مربع کلومیٹر کی کوریج ہے اور اس میں 2 کلاسز بلڈنگ اور ناٹ بلڈنگ ہیں۔

ماخذ:- https://project.inria.fr/aerialimagelabeling/
ماخذ:- https://project.inria.fr/aerialimagelabeling/

لنک :- https://project.inria.fr/aerialimagelabeling/

S3DIS

اس ڈیٹاسیٹ میں 3 سے زیادہ تصاویر کے ساتھ 70000 عمارتوں میں چھ بڑے پیمانے کے اندرونی حصوں کے پوائنٹ کلاؤڈز شامل ہیں۔

ماخذ:- http://buildingparser.stanford.edu/dataset.html

لنک :- http://buildingparser.stanford.edu/dataset.html

خلاصہ

ہم نے مختلف الگورتھم کی ایک درجہ بندی پر تبادلہ خیال کیا ہے جسے سیمنٹک سیگمنٹیشن کے استعمال کے معاملے کو حل کرنے کے لیے استعمال کیا جا سکتا ہے، چاہے وہ تصاویر، ویڈیوز یا پوائنٹ کلاؤڈز پر ہوں اور ان کی شراکت اور حدود بھی۔ ہم نے شروع کرنے کے لیے نتائج اور ڈیٹا سیٹس کا جائزہ لینے کے طریقوں کو بھی دیکھا۔ اس سے عام طور پر ایک عنوان کے طور پر سیمنٹک سیگمنٹیشن پر ایک جامع تفہیم ملنی چاہئے۔

semantic segmentation کے لیے مزید وسائل کی فہرست حاصل کرنے کے لیے، شروع کریں۔ https://github.com/mrgloom/awesome-semantic-segmentation.

مزید پڑھنا


آپ کو ہماری تازہ ترین پوسٹس میں دلچسپی ہو سکتی ہے:

: اپ ڈیٹ کریں
مزید پڑھنے کا مواد شامل کیا گیا۔

ماخذ: https://nanonets.com/blog/semantic-image-segmentation-2020/

ٹائم اسٹیمپ:

سے زیادہ اے آئی اور مشین لرننگ