در این مطلب، ویدئو تشخیص لبه با OpenCV در پایتون با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:10:51
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,329 –> 00:00:02,159
بچه ها به این
2
00:00:02,159 –> 00:00:03,810
آموزش بینایی کامپیوتر خوش آمدید در
3
00:00:03,810 –> 00:00:05,640
قسمت امروز ما با
4
00:00:05,640 –> 00:00:07,950
تشخیص لبه و فیلتر لبه کار می کنیم بنابراین
5
00:00:07,950 –> 00:00:09,540
از داده های ویدیویی که
6
00:00:09,540 –> 00:00:10,980
در گوشه سمت راست پایین اینجا می بینید
7
00:00:10,980 –> 00:00:13,290
وب کم من به عنوان ورودی استفاده می کنیم برای این کار و
8
00:00:13,290 –> 00:00:15,150
ما برخی از تشخیص لبه و
9
00:00:15,150 –> 00:00:17,100
فیلتر لبه را روی آن اعمال خواهیم کرد که
10
00:00:17,100 –> 00:00:19,800
در اینجا نتایج بسیار چشمگیری خواهیم دید، اما
11
00:00:19,800 –> 00:00:21,720
البته باید هر
12
00:00:21,720 –> 00:00:23,730
از گاهی وب کم را خاموش کنم تا بتوانم
13
00:00:23,730 –> 00:00:25,560
از آن استفاده کنم. در پایتون
14
00:00:25,560 –> 00:00:28,380
زیرا امکان استفاده همزمان از آن برای ضبط
15
00:00:28,380 –> 00:00:29,910
و پایتون برای
16
00:00:29,910 –> 00:00:32,640
من وجود ندارد، زیرا از یک وب کم استفاده می کنم، اما در
17
00:00:32,640 –> 00:00:34,170
اینجا نباید آنقدرها مشکل ایجاد شود
18
00:00:34,170 –> 00:00:36,360
، نتایج کاملاً چشمگیر هستند، بنابراین اجازه
19
00:00:36,360 –> 00:00:38,100
دهید به به آنچه که قرار است به سرانجام برسانیم نگاه کنید،
20
00:00:38,100 –> 00:00:41,610
بنابراین من همین الان دوربینم را خاموش کردم
21
00:00:41,610 –> 00:00:42,960
تا به شما نشان دهم
22
00:00:42,960 –> 00:00:45,239
نتیجه نهایی چگونه خواهد بود، بنابراین بیایید یک
23
00:00:45,239 –> 00:00:48,690
اسکریپت را در اینجا اجرا کنیم و خواهید دید که من از
24
00:00:48,690 –> 00:00:51,149
دو فیلتر در اینجا استفاده میکنم. فیلتر
25
00:00:51,149 –> 00:00:53,190
یا تابع decay اثر
26
00:00:53,190 –> 00:00:55,530
canny و سمت چپ lapl است فیلتر
27
00:00:55,530 –> 00:00:58,800
acian عملکرد laplacian هر چیزی که
28
00:00:58,800 –> 00:01:00,180
میتوانید اینجا در سمت راست ببینید این است که
29
00:01:00,180 –> 00:01:02,820
لبهها واقعاً تنها چیزی هستند
30
00:01:02,820 –> 00:01:04,739
که برجسته میشود، شاید کمی
31
00:01:04,739 –> 00:01:06,750
بیش از حد، شاید لبههای بیش از حد نه تنها
32
00:01:06,750 –> 00:01:09,659
لبههای بیرونی، بلکه جزئیات در
33
00:01:09,659 –> 00:01:12,450
دست من برای مثال، اما ما میتوانیم
34
00:01:12,450 –> 00:01:15,330
آن را با تغییر دادن پارامترها کاهش دهیم، اما
35
00:01:15,330 –> 00:01:16,860
در واقع میتوانید ببینید که تنها چیزی
36
00:01:16,860 –> 00:01:18,810
که در سمت راست میبینید این است که
37
00:01:18,810 –> 00:01:21,299
میتوانید تمام لبههای قفسههای کتابهای من
38
00:01:21,299 –> 00:01:24,360
را ببینید که در اینجا دست هدفونهای من هستند
39
00:01:24,360 –> 00:01:26,280
. صورت من در حالی که در
40
00:01:26,280 –> 00:01:28,140
سمت چپ می توانید جزئیات بیشتری را مشاهده کنید، یک
41
00:01:28,140 –> 00:01:31,470
تصویر بسیار دقیق تر، همچنین با
42
00:01:31,470 –> 00:01:34,890
برخی رنگ ها و در واقع با
43
00:01:34,890 –> 00:01:37,020
نویز پس زمینه زیاد، بنابراین این دو
44
00:01:37,020 –> 00:01:38,610
موردی هستند که ما به آنها پایان خواهیم داد، من
45
00:01:38,610 –> 00:01:40,350
فکر می کنم کاملاً خوب هستند. قابل توجه است زیرا
46
00:01:40,350 –> 00:01:42,329
به نظر می رسند جالب هستند
47
00:01:42,329 –> 00:01:44,189
و ما
48
00:01:44,189 –> 00:01:46,079
برای پیاده سازی آنها به کد زیادی نیاز نداریم، بنابراین اجازه دهید
49
00:01:46,079 –> 00:01:49,380
مستقیما وارد آن شویم، بنابراین اولین کاری که
50
00:01:49,380 –> 00:01:50,790
باید انجام دهیم این است که باید دو کتابخانه را وارد کنیم
51
00:01:50,790 –> 00:01:51,270
52
00:01:51,270 –> 00:01:56,329
و اینها عبارتند از C را باز کنید V بنابراین cb2 به عنوان CV و
53
00:01:56,329 –> 00:02:00,240
numpy به عنوان NP مثل همیشه اگر
54
00:02:00,240 –> 00:02:02,729
آنها را نصب نکرده اید به CMD
55
00:02:02,729 –> 00:02:04,409
بروید اگر از یک محیط Conda استفاده
56
00:02:04,409 –> 00:02:08,429
می کنید آن را فعال کنید و سپس آن را تایپ کنید install OpenCV –
57
00:02:08,429 –> 00:02:12,870
python برای CB یا pip install numpy برای
58
00:02:12,870 –> 00:02:13,440
numpy
59
00:02:13,440 –> 00:02:14,940
خوب این ها دو کتابخانه ای هستند که
60
00:02:14,940 –> 00:02:16,380
ما به آن نیاز خواهیم داشت و اولین کاری که
61
00:02:16,380 –> 00:02:18,690
انجام می دهیم این است که اکنون دوربین را تعریف می کنیم
62
00:02:18,690 –> 00:02:20,370
البته اگر از دوربین استفاده نمی کنید یا
63
00:02:20,370 –> 00:02:21,960
نمی خواهید از دوربین استفاده کنید می توانید
64
00:02:21,960 –> 00:02:24,120
یک ویدیوی کیف من را ارسال کنید. میخواهم بگویم
65
00:02:24,120 –> 00:02:28,590
دوربین برابر است با فیلمبرداری، متأسفم،
66
00:02:28,590 –> 00:02:32,430
فیلمبرداری ویدیویی را ببینید و من از 0 عبور میکنم،
67
00:02:32,430 –> 00:02:34,530
یعنی اولین دوربین اگر
68
00:02:34,530 –> 00:02:37,080
چندین دوربین داشته باشم، میتوانم بگویم 1 2 یا
69
00:02:37,080 –> 00:02:40,170
هر چیز دیگری اگر میخواهید از یک ویدیو استفاده کنید
70
00:02:40,170 –> 00:02:42,720
چه میکنید. آیا شما یک نام فایل را ارسال می
71
00:02:42,720 –> 00:02:46,920
کنید، به عنوان مثال نقطه ویدیوی من mp4 و
72
00:02:46,920 –> 00:02:48,780
همانطور که گفتم ویدیو را بارگذاری می کند، من
73
00:02:48,780 –> 00:02:51,630
از دوربین در اینجا استفاده می کنم بنابراین 0 فیلم برداری کنید
74
00:02:51,630 –> 00:02:54,720
و اکنون یک
75
00:02:54,720 –> 00:02:58,200
حلقه واقعی و یک حلقه بی پایان تعریف می کنیم اساساً
76
00:02:58,200 –> 00:03:00,980
و
77
00:03:00,980 –> 00:03:05,820
زمانی که با هر تکرار به داده های دوربین می رسیم، مقدار بازگشتی و فریم را دریافت می کنیم
78
00:03:05,820 –> 00:03:09,810
n بنابراین، اساساً
79
00:03:09,810 –> 00:03:13,500
همین است، سپس میتوانیم پایانی را در اینجا تعریف کنیم،
80
00:03:13,500 –> 00:03:17,070
بنابراین اگر در واقع بدون این پرانتزها،
81
00:03:17,070 –> 00:03:22,100
اگر کلید انتظار CV dot، 5
82
00:03:22,100 –> 00:03:25,890
میلیثانیه صبر کنیم، فکر میکنم اگر آن
83
00:03:25,890 –> 00:03:29,370
پورت X باشد که اساساً به این معنی است که X را کلیک
84
00:03:29,370 –> 00:03:30,810
یا فشار دهیم. کلید
85
00:03:30,810 –> 00:03:33,150
آنچه اتفاق می افتد این است که ما از حلقه خارج می شویم
86
00:03:33,150 –> 00:03:37,820
و سپس می گوییم که نقطه دوربین آزاد می شود
87
00:03:37,820 –> 00:03:44,400
و نقطه CV همه پنجره ها را از بین می برد و کاری
88
00:03:44,400 –> 00:03:48,570
که می توانیم در اینجا انجام دهیم این است که CV dot M هر فریم را نشان می دهد
89
00:03:48,570 –> 00:03:52,260
که باید بسیار ساده باشد
90
00:03:52,260 –> 00:03:55,920
اصلی را اجرا کنید و ما باید فقط
91
00:03:55,920 –> 00:03:59,220
اصول اولیه را ببینید البته من می توانم آن را لغو کنم چون در
92
00:03:59,220 –> 00:04:00,959
حال ضبط هستم، اما اگر
93
00:04:00,959 –> 00:04:03,390
این را بدون ضبط اجرا کنم، داده های
94
00:04:03,390 –> 00:04:06,480
چهره و دوربینم را در اینجا در CV باز
95
00:04:06,480 –> 00:04:08,700
بدون هیچ گونه فیلتری بدون هیچ افکتی می بینم،
96
00:04:08,700 –> 00:04:11,880
بنابراین شما فریم ها را به این ترتیب خروجی می کنید.
97
00:04:11,880 –> 00:04:13,880
عکس شما یا داده های دوربین شما را خاموش کنید،
98
00:04:13,880 –> 00:04:16,709
در واقع یک چیز را فراموش کردم وقتی
99
00:04:16,709 –> 00:04:18,720
نمایش را انجام دادیم، باید یک شناسه و نام نیز اضافه کنیم،
100
00:04:18,720 –> 00:04:21,450
زیرا در غیر این صورت
101
00:04:21,450 –> 00:04:22,919
کار نمی کند، من فقط
102
00:04:22,919 –> 00:04:24,870
دوربین را از اینجا انتخاب می کنم، شما می توانید هر چیزی را که می خواهید انتخاب کنید.
103
00:04:24,870 –> 00:04:26,310
می خواهید اما به یک شناسه نیاز دارید برای
104
00:04:26,310 –> 00:04:27,060
هر باری
105
00:04:27,060 –> 00:04:29,310
که em show را صدا میزنید، زیرا در غیر این صورت
106
00:04:29,310 –> 00:04:32,160
تصویر بدون عنوان، نامی ندارد و
107
00:04:32,160 –> 00:04:33,570
ممکن است منجر به سردرگمی شود، بنابراین باید
108
00:04:33,570 –> 00:04:35,580
این کار را انجام دهید و سپس باید کار کند و اکنون
109
00:04:35,580 –> 00:04:36,900
ما میخواهیم فیلتر لاپلاسی را
110
00:04:36,900 –> 00:04:38,700
در اینجا تعریف کنیم. میخواهیم بگوییم
111
00:04:38,700 –> 00:04:42,590
laplacian برابر است با CB dodd laplacian و
112
00:04:42,590 –> 00:04:45,870
در اینجا ما فقط میخواهیم فریم را رد
113
00:04:45,870 –> 00:04:48,510
کنیم و اکنون باید قالبی را
114
00:04:48,510 –> 00:04:50,639
که میخواهیم داشته باشیم مشخص کنیم و این CB dodd
115
00:04:50,639 –> 00:04:54,350
cv زیر خط 64 f است که مخفف
116
00:04:54,350 –> 00:04:57,900
نوع داده 64 بیتی و شناور است. و همچنین برای
117
00:04:57,900 –> 00:04:59,490
یک کانال زیرا در غیر این صورت
118
00:04:59,490 –> 00:05:01,889
باید سه یا چیزی شبیه به آن را مشخص کنیم،
119
00:05:01,889 –> 00:05:04,020
بنابراین اکنون با
120
00:05:04,020 –> 00:05:07,229
64 بیتی در نوع داده شناور با سیاه
121
00:05:07,229 –> 00:05:08,520
و سفید سر و کار داریم، زیرا ما فقط