Spaces:
Sleeping
Sleeping
File size: 38,893 Bytes
d48d4f3 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
خوب به نام خدا دوستان عزیز و ارجمند عرض سلام و ادب و احترام در خدمتتون هستیم با معرفی بسیار بسیار مقدماتی از نحوه به کارگیری لایبراری یا کتابخانه open cv در زبان برنامهنویسی پایتون که بتونیم توسط اون یک کارهای سادهای رو تو حوزه پردازش تصویر انجام بدیم اما ارتباطش به درس ما چیه در حال حاضر سیستم های اندازه گیری بسیار بسیار دارند از تکنیک های پردازش تصویر استفاده میکن یعنی اینکه مثلا شما سرعت یه خودرو رو بخوان اندازه گیری بکنند با یه مجموعه از در واقع تصاویر پشت سر هم یا ضبط ویدیو از اون یا اینکه بخوان توی خط تولید بدونند که مثلا ارتفاع ستون مایع توی مثلاً بطری چقدره آیا درست پر شده یا نه و یا اینکه توی فلان فضا چند تا از مثلاً فلان الگو وجود داره چند تا آدم چند تا از مثلاً ظرف اینا وجود دارند الی آخر که میشه همه اینا رو با پرده تصویر انجام داد خیلی خیلی کارها داره میشه تو حوزه خودروهای خودران خودتون برای ما فیلمهای ضبط کردید که نشون میدادید برای اینکه جاده رو پیدا کنه مسیر رو پیدا کنه به عابرهای پیاده نزنه ماشین و به چپ و راست بپیچه لاین عوض کنه به شکل مناسب از یکی از سنسورهایی که ازش استفاده میکرد سنسورهای در واقع دوربین های حالا عمق سنج بودن یا دوربین های عادی بودند و مجموعه اینا سبب میشه که خوب حوزه پردازش تصویر بسیار بسیار پرکاربرد باشه به صورت خاص این درس یا دروس مرتبط با این مجموعه توی دانشکده مهندسی برق و مهندسی کامپیوتر حالا دانشگاه های مختلف داره ارائه میشه من جمله شریف اما این دلیل بر این نیست که افراد از شاخه های دیگه با نحوه به کارگیری اون آشنا نباشند یعنی درسته که شاید شما نیاز زیادی هم داشته باشید بعضی وقتا عمق ریاضی پشت ماجرا یا فرمولاسیون به کار رفته توی اینا رو بدونید اما بد نیست که توانمند باشید با تکنیکهای مختلف اون و به کارگیری عملی اون در قالب نرمافزارهای مختلف کار بکنید یکی از سوپر معروفترین لایبراری ها کتابخانه های موجود که ازش توی پردش تصویر استفاده میشه و در واقع چیز جهانی داره معروفیت جهانی داره یه در واقع لایبری به نام اوپن سی وی اوپن سی وی در واقع فکر میکنم مخفف اوپن کامپیوتر ویژ باشه و یه چیز در واقع حالا اون اوپنش نمادی از باز بودنشه و اینکه بسیار در واقع همه چیش در دسترسه سایتش میتونید ببینید اوپن سیv org عرض به حضور شما تمام مواردی که لازمه توش وجود داره و یک در هلپ بسیار بسیار مناسبی داره که شما نیازی ندارید هیچ چیزی رو حفظ کنید و میتونید از روی الگوهایی که ما در اختیارتون قرار میدیم الان کوتاه و یا از خود این برید از در واقع آموزشهای این سایت استفاده کنید چه جوری نصبش کنید و چه جوری راهاندازیش کنید و از کجا شروع بکنید و الی آخر عرض به حضور شما الان این انتظار اولیه میره که کسانی که اینجا نشستن یه مقدار از پایتون میدونن یعنی فرض بر اینه که خب اوکی با پایتون آشنتی دارید و دارید میدونید این چجوری توش یک کدهای زدید قبلا اگر چه اوپن سی برای سی پلاس پلاس سی شپ جاوا ولی آخر هم اگر اشتباه نکنم در واقع چیز داره کتابخونه داره و میشه توی اونها هم از اوپن سی استفاده کرد اما الان تمرکز بحث ما روی در واقع چیز به کارگیری توی پایتونه برای اینکه اوپن سی تو پایتون تو راه بندازید خب اول فرض بر اینکه شما یه پایتونی نصب کردید مثلا من عرض به حضور شما پایتون ۳.۹ رو نصب حالا میتونید هر ورژن دیگهای حالا از سه به بالا رو نصب بکنید عرض به حضور شما برای اینکه راش بندازید یکی از دستوراتی که میشه توی ویندوز ازش استفاده کرد در واقع دستور pip instal open cv پایتون که عرض به حضور شما توی این سایت خدمتتون نشون داده شده و میتونید این دستور رو کپی بکنید یا این همین چند کلمه رو یا بنویسینش و کامنت پراپتون رو باز بکنید و اینجا پیستش کنید و اینتر بزنید و اون شروع میکنه براتون اگر در واقع حالا پایتون تو هم درست نصب شده باشه اینو براتون نصب میکنه اگرچه من قبلاً این کارو کردم و همپن سی براتون نصب میکنه و هم نامپای رو که توی کارهای پردش تصویر بسیار بسیار ازشون استفاده میشه حالا با فرض اینکه عرض به حضور شما این اتفاقات افتاده و ما نصب و انجام دادیم بریم ببینیم که چه میشه در حالت عادی با این کار کرد من خیلی فکر کردم که چه توی زمان کوتاه حول و حوش یه ساعته بیشترین بازدهی رو برای شما داشته باشم آخرش به این نتیجه رسیدم همینی که میخوام خدمتتون اجرا کنم اینه من در حد چند خط خیلی خیلی ساده و ابتدایی و اینجا مینویسم بعد از یکی از در واقع مجموع دادههای آمادهای که یکی از دوستان ما آقای مهندس فرخ کریمی آماده کردن توی گوگل کلب بهتون نشون میدم لینکشم خدمتتون میدم و اونجا میریم بقیه چیزا میکنیم و سعی میکنیم تند تند تا جایی که ممکنه روشون صحبت بکنیم و دیگه نیازی به نوشتن کد و طولانی شدن جلسه مون نداشته باشه برای اینکه شما اوپن کنید چه توی عرض به حضور شما خود با آوردن در واقع بالا رام کردن پایتون و یا اینکه در قالب یه چیز فایل در واقع کد میتونید با این شروع بکنید ایمپورت بکنید سیv تو رو سیv تو رو ایمپورت بکنید عرض به حضور شما اگر درست نصب کرده باشید بدون هیچ اروری این اتفاق میفته و دیگه شما میتونید الان از مجموعه بیشمار در واقع توابعی که تو حوزه تصویر نوشتن و شما را بینیاز میکنند از اینکه بخواید خودتون دستی کد بزنید یا یه سری ماتریسها رو عدد رقمهاشو عوض بکنید براتون خیلی از این کارا رو آماده انجام میدن خب طبیعتاً ساده ترین کاری که اولین کاری که باید بکنیم اینه که بتونیم یه عکس رو لود کنیم دیگه ها یه عکس رو بیاریم بالا که بتونیم روش کار انجام بدیم پس طبیعتا اولین دستوری که در واقع باید به کارش بگیریم در مورد لود شدن یا رید کردن یا خوندن یه عکسه خب دستور آی ام جی حالا این آی ام جی مساوی با دستور سی وی2 نقطه آی ام رید خب ایمیج رید پرانتز باز بسته از شما دو تا ورودی میگیره دو تا ورودیش اینجوریه که اولیش باید مسیر عکس کامپیوترتون و دومیش با یه عدد که مثلاً صفر یا یک باشه مشخص بکنید که اون عکس چه جوری لود شه که اگه یک بزنید عکس رنگی لود میشه و اگر صفر بزنید عکس حتی اگه رنگی باشه سیاه و سفید لود میشه خب من مثلاً یه عکسو عرض به حضور شما بخوام چیز بکنم لود بکنم اینجا تست کجا رفت تست ایمیل اسلش ای دات جی پی جی و به صورت رنگی چیکار میکنم لود میکنم و میریزمش تو یک متغیری به نام آی ام جی خب در حالت کلی عکس رو میدونید دیگه عکس یه سری در واقع ابعاد طولی و عرضی داره که بهش با نام پیکسل شناسایی میشه اجازه بدید من این آهنگ الان خدمتتون نشون بدم تو خود البته چیزم میشه دید شاه تو خود پایتونم میشه بازش کرد حالا نشونتون میدم عرض به حضور شما این تست ایمیج رو بیارم من الان این عکسو که حالا یه خاطرهای هم دارید ازش احتمالاً توی جلسه اول درس اندازهگیری و جزوه جلسه اولمون اینو لودش کردم که یه عکس رنگی باشه اون محصولیه که گفتیم آخر ترم از شما در میاد و خب میخویم حالا روی این یک سری کارا مثلاً انجام بدیم خب این عکس مائه و این عکس یه سری ابعاد در واقع یه سری پیکسل در راستای طولی داره یه سری پیکسل ستونی داره و در مجموع یعنی ببخشید یعنی مجموعه پیکسل داره که با شماره های سطری و ستونی میشه شناساییشون کرد و روشون کار کرد و چون عکس عکس رنگیه هر پیکسل دارای سه تا کاناله که یکیش نماد میزان دخالت رنگ آبیه تو اون عکسه یکیش قرمزه و یکیش هم سبزه که خب سب در مجموع اون رنگ به صورت یکتا در بیاد و خب اگر از دستور عرض به حضور شما آی ام در واقع ایمیج نقطه سایز استفاده بکنید img نقطه سایز من عکس رو الان ریختم توی متغیر i ام جی میتونید ابعادشو این سایزشو ببینید که میگه اینقدر در واقع داده دارم یه ماتریسیه که حاوی ۱۵۱ هزار و خورده در واقع دهی هستش و اگر بخواهید که به صورت خاص ببینید ماتریس چند در چنده میتونید با دستور آی ام جی نقطه شیپ پیدا بکنید که چنده میگه ۱۷۲ تا پیکسل ۱۷۲ ردیف پیکسل افقی داره ۲۹۳ تا عمودی داره و سه کانال داره که عرض کردم خدمتتون اینه که شما میتونید چیکار کنید عرض به حضورتون برید پیدا کنید که کانال مثلاً آبی و سبزش حالا هر کدوم چین خب اگه مثلاً من چه میدونم بنویسم img فرض کنید مثلا صفر و صفر و صفر رو بزنم imd صفر و صفر رو فقط بزنم یعنی پیکسل اول رو به من البته اجازه بدید خود آی ام جی اگه بزنم مثلا میبینید که در واقع هر کدوم از حالا اون پیکسلاش مثلا چه چیزی دارن چه در واقع مقادیری دارند خب و عرض به حضور شما که مثلاً اعدادی که برای هر چیز به من میده اعدادی که برای هر کانال به من میده از بین صفر تا ۲۵5۵ اند و نماد شدت دخالت عرض به حضور شما اون چیز شدت دخالت رنگهای تاثیر قرمز و آبی و سبزن توش که از صفر تا ۲۵۵ میتونه تغییر بکنه همزمان صفر بودن هر سه تا نماد اینکه اون پیکسل سیاه رنگه و همزمان ۲۵۵ بودنش اونی که دیگه سفید رنگه و تمام نور توش حداکثر شدت خودش قرار داره اونجا و طبیعتاً رنگ مثلاً قرمز خالص اینجوری میشه که دوتاش صفره یکیش ۲۵۵ خب شما احتمالاً اصطلاح آر جیبی رو شنیدید که مخفف بلو باشه اما توی اوپن سی با این فرم فعلیش اینتنسیتی ها به صورت بی جی آر داده میشه یعنی اولی آبیه بعدی سبزه و بعدی قرمزه یعنی رنگ مثلاً ۲۵۵ صفر صفر نماد آبیه حالا این که چجوری میشه آر جیبیش کرد راههایی وجود داره حالا توی کارامون باهاش روبرو هستیم خب خب در این حد الان آشنا شدیم که اوکی در واقع عکس از نظر این پایتون یا از نظر کامپیوتر صرفاً یه ماتریسه یه ماتریس با کلی عدد دیگه که به ازای هر خونش سه تا عدد به من میده و به ازای تک تک پیکسلها این آرایش سه گانه رو داره عرض به حضور شما خب اینم عرض کردم خدمتتون میشه روش کارهای مختلفی کرد من فقط یه دونشو الان خدمتتون بیان میکنم یکی اینکه خب عکسی که داریم یا تغییرات دادیم و چجوری نمایشش بدیم دستور cv2.ir شو ایمیج شو که توش عرض به حضور شما دو تا ورودی میگیره یکی میگه اسم پنجره که باز بکنم بالاش چی بنویسم و چه عکسی رو میخوید براتون عرض به حضور شما چیکار کنم باز بکنم اینکه مثلاً شما مینویسید که من میخوام عکس ایمیج با آی ام جی رو باز بکنم همون چیزی که ما توی آی ام جی ریختیم و داشتیم روش حساب کتابامون انجام میدادیم بعدا ممکنه یه سری تغییراتی داده باشیم و اسم چیز بالا سرش ایمیج ۱ خب این معادل این تیکه سبز رنگه معادل اون جاییه که شما تو مطلب مثلاً برای در واقع فیگراتون اسم میذاشتید و اینجا میگید چیو توش رسم کن خب اینو اگه در واقع اینتر بزنید چیکار میکنه برای شما رسم میکنه بالاش نوشته ایمیج یک و این عکس رو اون چیزی که ازش مونده آخرین بار که حالا ما تغییری هم ندادیم و فقط خودش لوت کردیم چیکار میکنه نشون میده میشه کاری کرد که ابعادش قابل تغییر باشه ولی الان مثلا فیکس شما نمیتونید بکشید در واقع ابعادشو تغییر بدید و این الان تو همون تعداد پیکسل های که داده ثابته که توی اوپن سی دستوراتی وجود داره که این قابلیت ها را بهش میده حالا من یه نمونه میخوام الان یه چیزی رو بگم بعدش بریم توی اون کد مثلا اولین کاری که میخویم بکنیم اینه که مثل همون کاری که شما توی پینت و اینا انجام میدید یا پاورپوینت با موس میاید یه سری خط میکشید دایره میکشید مربع میکشید اینو با کد انجام بدید به صورت کاملاً اصولی و بعدا حالا اینا میتونه کاربرد داشته باشه مثلاً رسم مستطیل رو اینجا بدونید بعداً بهش میگید برو نگاه کن هرجا مثلاً عرض به حضور شما مستطیلهای آبی رنگ با حداقل مساحت مثلاً ۱۰ تا ۲۰ تا پیکسل دیدی رو بیا برای من چیکار کن دورش یه مربع بیار یه مستطیل بیار چون من لازمش دارم این احتمالاً نماد مثلاً فلان چیزه خب یا مثلاً برو من یه عکس مرد یعنی چشم و مردمک چشم و فلان اینا رو با هم بهت میدم شما برو نگاه کن که چی مردمککش کجاست اون دور اونجا برام یه مستطیل قرمز رنگ بیار اون اتفاقی که میفته مثلا شما موبایلتون رو میگیرید از یکی عکس بگیرید میبینید دور چهره ها چی کادرهای قرمز رنگ میکشه خب اینا همون چیزی که شما دارید روی عکس در واقع یه مستطیل رسم میکنید دیگه عرض به حضور شما مثلاً فرض کنید من میخوام یه خط رسم کنم روی خطم میگم که بیا سی وی دو نقطه لاینو خب اجرا بکن این نقطه لاین یعنی که بیا یه خط برام بکش روی چی برام بکش باید یه سری ورودی بهش میگه روی در واقع عکس img همون چیزی که حالا در قالب لودش کردیم و در قالب یه سری مجموعه ماتریسهای و فلان و اینایی بود که توی img ریختیمش که همین عکسه بود بیا این تغییر رو بده عرض به حضور شما لاین دو تا نقطه شروع و پایان میخواد میگه از کجا شروع کنم از پیکسل چند و چند و به چه پیکسلی ختمش کنم میگه از پیکسل صفر و صفر شروع کن از گوشه بالا سمت چپ میشه و این شمارنده های پایتون از صفر شروع میشن دیگه خب برخف مطلب که از یک شروع میشه و مثلا به چند ختمش کن عرض به حضور شما به مثلاً پیکسل ۵۰ و مثلاً ۷۰ ختمش کن خب این تا اینجا میگید این عکس این چیز رو برام بکش عرض به حضور شما بعدیش باید یه رنگ رو بهش بدید با چه رنگی براتون بکشه عرض کردیم در حالت دیفالت بی جی آر از شما میگیره اینتنسیتی بلو گرین و رد رو مثلا من اگه بنویسم ۲۵۵ صفر و صفر یعنی چی خط آبی برام و بعدی ورودی بعدی که ازتون میگیره ضخامت خطه مثلاً من ۵ میزارم یا ۴ میزارم خب و بعضی از این چیزا نگاه میکنید ننویسید دیفالت هایی دارند یعنی ارور نمیدن خب ولی بعضی چیزا نه ارور میدن اگه ننویسید که برید تو اون هلپ اوپن سی که خدمتتون نشون دادم تو مجموعه سایتش میتونید بعدا نگاه کنید حالا میگه اینو اینو انجام دادی کجا بریز مثلاً من میگم دوباره بریز توی چی آی ام جی یعنی رو همون عکسه این تغییرات که دیدی باز تو آی ام جی بریز خب و یه سری درایههای اون ماتریساش اصلاح میشن عددای دیگه میشن که من بع میخوام چیکار کنم اینو پلات کنم ببینم آیا تغییری کرده یا نه من اینو اینتر بزنم اروری نداد عرض به حضور شما یه بار دیگه چیکار میکنم سی وی دوت دات فلان رو اینو میبندم و عرض به حضور شما اینو یه بار دیگه اجرا میکنم حالا میبینید چه اتفاقی افتاد حالا یه خط آبی با یه ضخامتی چی شده برای من کشیده شده از گوشه بالا سمت چپ اومده پایین شروع شده و اومده پایین تا یه جایی به اتمام رسیده خب با این توضیحات در واقع توضیحات عمومی دیگه بریم بقیهشو از روی نمونه کدهای حالا دوستمون آقای کریمی بگیم خدمتتون که زحمت زیادی کشیدن من این لینکو براتون اینجا کپی میکنم توی چت باکس چیز اینجا نگه دارید برای خودتون بعداً استفاده بکنید عرض به حضور شما از گوگل کلب استفاده شده خود اینجا در واقع نیازی نبود شما حتی پایتون هم نصب بکنید از خود پردازنده های گوگل استفاده میکنه روش چیزا لایبری های لازم نصب شده و میتونید همینجا خودتون ران هم بگیرید هر باکسی برای خودش علامت پلی داره و برای اینکه در واقع ران انجام بشه باید شما چیکار کنید اون پلی رو بزنید خب پلی اول که بزنید عرض به حضور شما یه سری فقط لایبراری اوپن کرده یکی ایمپورت سی ویدیو بوده که خیلی خیلی برای ما مهمه یکی نامپای بوده که ما خیلی جاها مجبوریم برای عکس خالی مثلاً سفید یا سیاه طراحی کنیم بعداً روش کار کنیم یا کلاً فیلتر طراحی کنیم یا ماسک طراحی کنیم مجبوریم که خب از نامپای استفاده بکنیم گفته که نامپای رو من با نام ام پی از این به بعد صدا میزنم عرض به حضور شما مت پلادلیبو استفاده کرده که برای رسمهاش بوده اگرچه من دیدید مثلاً توی پایتون خودم از این استفاده نکردم و بعدا گفته من هر جا پی ال تی زدم چیز کن دیگه برام یه گونه از پلاتو رسم کنه معادل همون آی ام شو ما یه جورایی حالا با امکانات بیشتری بعضا و الی آخر گفته پرینت بکن که چه اوپن سیv داری استفاده میکنه گفته ورژن چهار یک دو رو دارم که حالا شما میتونید برید استفاده کنید خب باکس بعدی که ران بکنید عرض به حضور شما رفته چیکار کرده رفته که یه فایل عکسی که در واقع در مورد عکس لیونل مسی بوده رو از اینترنت دانلود کرده گرفته و عرض به حضور شما ریخته توی چی ظرفی به نام مسی مسی الان یه آرایه است ابعادش ۳۴۲ در ۵۴۸ در سه است یعنی ۳۴۲ تا ردیف پیکسل افقی داره ۵۴۸ تا عمودی داره و سه کانال داره که مخفف همون رنگهای آبی و سبز و قرمزش هستند که این شبیه همون لود مان خب پس تا اینجا از الان یعنی عکسی داریم که به نام مسی سیو شده و ما میتونیم تغییراتمون روی مسی بدیم عرض به حضور شما بعدیش که ران کنم چیکار میکنه دستور استفاده کرده که جز کتابخانه متلیپ بوده و در کل تونسته برای شما عکس رو رسم کنه فقط اتفاقی که افتاده اینه که برای اینکه این کار را انجام بده با یه در واقع دستوری که تو خودش آماده هست میگه در واقع چیکار کن یک کانورت انجام بده عکس رو از کانال بی جی آر دیفالت ببر به آر جیبی یعنی دیگه نیازی نیست شما یه کد بزنید که فور آی از یک تا فورجهای از یک تا فلان بیا جای نمیدونم درایههای rogo b و جاشو عوض بکن و اینا ستون اول و دوم سوم همین دستورات آماده شما باید با یه خط کد بتونید این کارا رو بکنید کسی قرار نیست اینجا دیگه خودش کد بزنه و تا حد امکان چیکار میکنه از دستورات آماده استفاده میکنه این دستور این دستور میاد عکس مسیو در واقع کانورت میکنه از کانال بی جی آر به آر جیبی یعنی باز یه ماتریسی بهمون میده که با همون ابعاد و سایز فقط چی شده جای ستون های جای درایه های مربوط به جی آر یه جوری عوض شدن که دیگه اولی شده آر بعدی شده جی بعدی شده بی و این عکس رو به شما نشون داده گفته این عکس حالا گفته چیکار میتونید بکنید اولا دستوری هست به نام آی ام رایت ام رایت عکس رو برای شما سیو میکنه یعنی اینکه بعد از اینکه تمام تغییراتتون رو روش انجام دادید میخوید یه عکس رو برای خودتون داشته باشید دیگه آی ام رایت میگه سیوش کن با نام مسی دات پی ان جی و چی رو و اون چیزی که توی مسی بوده رو برای من بیا چیکار کن در واقع رایتش بکن ترو داده که بدون مشکل این اتفاق انجام شده و شمام تو کامپیوترتون تو پایتون خودتون اگه انجام بدید تو اون فولدر مربوطه عکس ساخته میشه و عرض به حضور شما اینجام نوشته که اگه ال اس بگیرید حالا دستورات لینوکس نمیدونم چقدر آشنایت دارید لیست بگیرید یا معادل اونایی که توی داس کار کردن معادل دی آی آر اونجاست دیگه میخواد فقط ببینه که فایل مسی دات p جی هم ساخته شده خب همین نوشته که اینم ساخته شده و فلان فاز بعدی که در موردش صحبت میکنم همون چیزی که ما در مورد رسم خط و اینا گفتیم نوشته که دراینگ فانکشن و توش چیکارها میتونه بکنه عرض به حضور شما از رسم مستطیل و دایره و بیضیگون و خط و اینا میخواد صحبت کنه این دو تا کد رو در واقع ران بکنم حالا میاد برای من یه سری خروجی بهم میده که میتونم برم ببینم اینجا مثلاً گفته چیکار کن گفته عکس با ابعاد ۵۱۲ در ۵۱۲ پیکسل با سه تا کانال برام بساز و همشو زیرو بزار ها یعنی چی یعنی یک صفحه کاملا مشکی اینو اگه سیوش کنید بعداً imriteش کنید یه صفحه کاملا مشکی ۵۱۲ در ۵۱۲ پیکسلی به شما میده بعد گفته که چیکار کنید یه بلولاین میخوام رسم بکنم این علامت هشتگ یا علامت شارپ که میذارن توی زبان برنامه نویسی مثل پایتون سی شپ و اینا چیزن دیگه نماد کامنتن میگه چیکار کن میگه این آی ام جی بود که من ساخته بودم اول بیا همونی که عرض کردم خدمتتون از پیکسل صفر و صفر شروع کن تا پیکسل ۵۱۵۱۱ یعنی از بالا سمت چپ تا پایین سمت راست رنگ ۲۵۵ صفر صفر رو بزار عرض به حضور شما بی آر جی پس بی جی آر پس بلو خواهد بود با ضخامت پنج و اینو بریز توی آی ام جی یعنی چی یعنی اون صفحه سیاهه الان به چی تغییر پیدا کرد در دیگه الان یه خط آبی هم توش قرار داره علاوه بر اون بیا یه کارای دیگه بکن باز بریز تو img بیا رکتنگل یا مستطیل بکش چه جوری مینویسی چه ورودی هایی میگیره میگه رو چه عکسی اجرا کنم روی i ام جی خب رکتنگلو باید گوشه بالا سمت عرض به حضور شما چپش و گوشه پایین سمت راستشو بدید مختصاتشو که ایکس و وای پیکسل ایکس و وای سمت چپ و راستشو بالا و پایینشو داده چه رنگی براتون بکشم 0255 صفر با ضخامت سه اینم اگه باز اینتر کنیم چی این تغییر رو توش میده که میره تو اون بوم مشکی رنگتون چیز میکنه عرض به حضور شما در واقع یه مستطیل هم رسم میکنه همین کار برای کشیدن دایره و بیضی داریم برای دایره میگه تو رو چه عکسی بکشم مرکز دایره کجا باشه شعاع دایره ام چند باشه با چه رنگی بکشمش و عرض به حضور شما یه چیز دیگه اینجا جلوش نوشته که منفی یک اینا توپش نگاه میکنید حالا حالت های داره که دایره رو تو پر بکشه توخالی براتون بکشه که این تنظیماتش با یه عدد در واقع با یه چیز گذاشتن یه عدد مشخصی گذاشتن انجام میشه که دایره توپر باشه توخالی باشه همینجور برای در واقع الیپس یا بیضی دارید که علاوه بر شعاع در واقع حالا ما تو دایره یه دونه شعاع داریم اینجا یه دونه عرض به حضور شما شعاع چیز نصف قطر کوچک داریم نصف قطر بزرگ اینا رسم میکنید و یه ویژگی که دیگه هم داره میگه تا چند درجه براتون رسم کنم فکر کنم بشه ۱۸۰ تا ۱۸۰ درجه خب صفر تا ۱۸۰ درجه فکر میکنم معادل چیزه دیگه نیم بیضی الان برامون میکشه عرض به حضور شما حالا این باید ببینیم هر کدوم از تنظیماتش چیه مثلاً این صفره آیا زاویه اش با محور ایکس هاست اینو مطمئن نیستم الان خب و یه همچین چیزی پلیگان میشه که کشید باهاش چند وجهی چند وجهی اینه که خب یه سری نقاط بهش میدید مثلاً نقطه اول ده و پنج بعدی بیست و۳ اینا همه بر حسب پیکسل پیکسل در راستای ایکس پیکسل در راستای و الی آخر و یه دونه با نامپای یه دونه آرایه ساخته به نام پوینت که این پوینت رو داره بعد میگه چیکار کن با دستور پلی لاینز بیا چیکار کن برای ما بهترین پلیگانو ازش بکش عرض به حضور شما باز دوباره اینجا میتونید تعیین کنید که نقطه اول و آخر رو به هم وصل بکنه یا نکنه با این حالا ترو و فالسی که نوشتید اینم فکر میکنم رنگش باشه که با چه رنگی براتون بکشدتش خب اینم پلی کردیم اینم ران شده الان هنوز ولی جایی نگفتیم نمایشش بده بعد میگه نوشته بهش اضافه کن چجوری نوشته بشه اضافه کنم دستور سی وی دو پوت تکست میتونه نوشته اضافه بکنه توی مطلب ممکنه آشنا باشید چجوری مثلاً ما به پلاتمون تکست اضافه میکردیم اینجا مشابه همونه اول شما باید تعیین کنید که فونت نوشتتون چیه بلکه فونت تعیین کنید دستور سی وی2 دات فونت که بزنید خودش تمام فونت های که براش تعریف یکیشو انتخاب میکنید اینو میریزید توی متغیری مثلاً به نام فونت یا هر چیز دیگهای ممد هرچی دلتون میخواست میتونید بریزید بعد میگه چیکار کن سی وی ۲ تکست کن یه نوشته برام اضافه کن به چی به عکس ایمیج خب چون همیشه باید بهش بگید که رو چی برام اضافه بکن خب نوشتشو گفته open cv برام بنویس عرض به حضور شما میتونستید یه چیز دیگه بنویسید بعد توی مختصات ۱۰ و ۵۰۰ این کارو انجام بده با فونت فونت بنویس با سایز چهار بنویس با رنگ ۲۵۵ ۲۵۵ که سفید باشه بنویس و حالا تنظیمات دیگه هم میتونه داشته باشه میتونم نداشته باشه و همینجا تمام بشه این هم اگه ران بکنید عرض به حضور شما چون نریختیم تو چیزی حالا اینجا هم بهتون نشون داده گفته که آرایه نهایی که دادم یه همچین چیزی خواهد بود که خب نمیذاره البته همه رو ببینید سه نقطه خیلی جاهاش میذاره اگه پایتون آشنا باشید میدونید که حالا بعداً دلتون بخواد ببینید چیکار بکنید و در نهایت میگه چیکارش کن پی ال تی ام شو بکن برام عرض به حضور شما سی وی ۲.convert کالرش بکن اون img رو کالرشو به چی تغییر بده از استاندارد بی جی آر به آر جی بی تغییرش بده بی جی آر تو rgb بزن و اینجوری چیکار میکنه براتون پلات میکنه حالا اون بوم سیاه رنگ اول که بود اون خطه رو کشید گردالی دایره توپر قرمز رنگو کشید یه مستطیل کشید نیم بیضی براتون کشید اوپن سیv هم اینجاش نوشت و چی در نهایت ختم بخیر شد و تمام شد و شما میتونید عکس رو سیو بکنید یا عرض به حضور شما چیز بکنید دیگه هر کاری دلتون میخواد باز انجام بدید روش مثلا چه اضافه کردن نوشته میتونه برای این باشه که فرض کنید توی عکس شما این قابلیت رو میخوید به نرم افزارتون بدید به صورت هوشمند که براتون بنویسه چه میدونم از این خط تولید داره هندونه رد میشه یا خربزه خب مثلاً دورش مستطیل بیاره و بالاش هی بنویسه که این کدومه حالا رفته پردازش کرده متوجه شده این کدومه و بعد از اینکه متوجه شد اینو اضافه بکنه خب این ساده ترین کاری که میشه کرد دیگه چی در واقع بیسیک و ابتدایی روی کارهایی که میشه انجام داد خب یکی از کارهایی که میشه کرد اینه که میگه بیام یه پیکسلو بخونم چیزش چنده این حالا من این اشتباه رو کردیم پرانتز گذاشته بودم پرانتز نمیخواست یعنی در واقع مثلاً اینجا i ام جی اگه یادتون باشه مثلا میزنید آی ام جی ۱۰۰ و ۱۰۰ به من بده چنده خب آی ام جی ۱۰۰ و صد بهتون میگه چی بهتون میگه که پیکسل صد و صد حالا البته چون از صفر داره شروع میشه 11می و 11می مقدار اینتنسیتی هاش توی بی جی آرش ۱۹ ۳۷ و ۵۴ خب حالا شما اگه جایی دیدید مثلاً سه تا شد ۲۵۵ یعنی رنگ داره به سمت سفید میره اگه سه تاش نزدیک صفره داره رنگ به سمت سیاه میره و این تک پیکسل رو به شما میده که خب چه مقداری داره اوکی این شبیه خوندن یه درایه از یه ماتریس که تو مطلب هم باهاش آشنا دارید میگه پرینت کن پیx رو که بهمون نشون بده ۱۵۷ چیکار کن میگه مسی ۱۰۰ و صد رو بزار ۲۵۵ ۲۵۵ ۲۵۵ میگه آقا من دلم میخواد پیکسل شماره ۱۳ رو من کاری ندارم چه رنگی بوده تو بزار رنگ سفید خب دلتون میخواد این تک پیکسل سفیدش کنید بعد میگه پرینت کن مثل صد و صدو که بهتون گفته اول این بوده پی ایکس رو براتون پرینت کردم بعدش شده این حالا اگه تک پیکسل رو عوض بکنید ممکنه خیلی متوجه نشید که عکستون چه تغییری کرده اما تو مثال ادامهش میگه که یه محدوده از پیکسل ها رو عوض کنید میگه آقا به ازای آی از یک تا فلان به ازای جی از یک تا فلان مسی ۵۰ به علاوه آی و ۲۳۵ به علاوه جی رو چیکار کن بکن صفر ۲۵۵ صفر که گفتیم اگه این bgr باشه یعنی رنگ چیز بهش بده سبز بهش بده تو چه محدوده چون محدوده که بهتون گفته و اگه بیاید در واقع پلات کنید باز این شماره ۲۰ و آی ام شو فلان کنید این مسی جدید |