در این مطلب، ویدئو 32 – تجزیه و تحلیل اندازه دانه در پایتون با استفاده از تصویر میکروسکوپ با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:41:09
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,120 –> 00:00:02,250
سلام بچه ها این Trini است و شما در حال
2
00:00:02,250 –> 00:00:04,170
تماشای فیلم های آموزشی پایتون در
3
00:00:04,170 –> 00:00:06,839
کانال یوتیوب من Python برای میکروسکوپ در
4
00:00:06,839 –> 00:00:08,700
آموزش امروز هستید، بیایید روی یک برنامه واقعی کار کنیم
5
00:00:08,700 –> 00:00:10,710
که
6
00:00:10,710 –> 00:00:13,259
تجزیه و تحلیل اندازه دانه است و همانطور که از نام آن پیداست
7
00:00:13,259 –> 00:00:16,350
این چیزی نیست جز بارگذاری یک تصویر که
8
00:00:16,350 –> 00:00:20,400
دارای یک دسته کامل از دانه ها و گرفتن
9
00:00:20,400 –> 00:00:21,689
برخی از آمارها از
10
00:00:21,689 –> 00:00:23,400
آن چگونه توزیع اندازه دانه به نظر می
11
00:00:23,400 –> 00:00:25,439
رسد اگر شما یک دانشمند علم مواد یا
12
00:00:25,439 –> 00:00:27,300
زمین شناس هستید، احتمالاً می دانید که من
13
00:00:27,300 –> 00:00:30,090
در مورد چه صحبت می کنم اگر شما یک دانشمند زندگی هستید به
14
00:00:30,090 –> 00:00:32,640
این فکر کنید که عکس گرفتن است.
15
00:00:32,640 –> 00:00:34,200
با کل سلول ها و
16
00:00:34,200 –> 00:00:36,510
تلاش برای درک توزیع اندازه
17
00:00:36,510 –> 00:00:39,629
این سلول ها، پس
18
00:00:39,629 –> 00:00:42,450
بیایید جلو برویم و به داخل بپریم و تصویری
19
00:00:42,450 –> 00:00:45,750
که امروز از آن استفاده خواهم کرد تقریباً این
20
00:00:45,750 –> 00:00:48,469
تصویر است و من در گوگل جستجو کردم
21
00:00:48,469 –> 00:00:51,780
که دانه ها یا میکروسکوپ را می شناسید. و دانه
22
00:00:51,780 –> 00:00:53,730
یا ریزساختار دانه و من
23
00:00:53,730 –> 00:00:56,010
یکی را پیدا کردم که فکر می کنم
24
00:00:56,010 –> 00:00:59,550
بهترین هدف را در اینجا نشان می دهد، بنابراین
25
00:00:59,550 –> 00:01:02,309
به نظر می رسد این یک تصویر میکروسکوپ نوری است
26
00:01:02,309 –> 00:01:05,369
و در تصویر RGB است، بنابراین بیایید
27
00:01:05,369 –> 00:01:07,409
تبدیل کنیم برای شروع به مقیاس خاکستری،
28
00:01:07,409 –> 00:01:09,299
اما اگر روی یک میکروسکوپ الکترونی
29
00:01:09,299 –> 00:01:12,900
روبشی کار می کنید، احتمالاً ریزساختار شما
30
00:01:12,900 –> 00:01:14,549
31
00:01:14,549 –> 00:01:16,460
تقریباً همان چیزی است که از نمونه خود می دانید،
32
00:01:16,460 –> 00:01:19,229
با این تفاوت که مقیاس ممکن است متفاوت باشد و
33
00:01:19,229 –> 00:01:22,590
وقتی در مورد مقیاس اشاره می کنم،
34
00:01:22,590 –> 00:01:24,540
برای ما نیز مهم است. برای تعریف مقیاس در
35
00:01:24,540 –> 00:01:26,700
این مورد درست است اگر از من بپرسید
36
00:01:26,700 –> 00:01:29,280
که اندازه دانه متوسط دانه ها در اینجا چقدر است اگ
37
00:01:29,280 –> 00:01:32,159
بگویم بله 200 پیکسل است به
38
00:01:32,159 –> 00:01:32,700
ه
39
00:01:32,700 –> 00:01:34,590
عنی است اما اگر بگویم ان
40
00:01:34,590 –> 00:01:38,520
ازه دانه متوسط 0.85 میکرو
41
00:01:38,520 –> 00:01:40,710
است. برای شما معنی درستی دارد، به
42
00:01:40,710 –> 00:01:42,990
همین دلیل است که ما باید
43
00:01:42,990 –> 00:01:44,600
اندازه پیکسل را هم در هنگام کار با
44
00:01:44,600 –> 00:01:48,979
تصاویر میکروسکوپ دنبال کنیم، بنابراین بیایید وارد شویم و
45
00:01:48,979 –> 00:01:51,270
یک چیز دیگری که باید به آن اشاره
46
00:01:51,270 –> 00:01:53,159
کنم این است که وقتی من به
47
00:01:53,159 –> 00:01:55,380
این سمت می چرخم و سپس به تصویر خود نگاه می کنم باید مرا ببخشید.
48
00:01:55,380 –> 00:01:58,350
در اینجا یادداشت کنید زیرا این یک
49
00:01:58,350 –> 00:02:00,960
تمرین نسبتا طولانی خواهد بود، بنابراین من فقط می
50
00:02:00,960 –> 00:02:03,299
خواهم مطمئن شوم که موضوعات مناسب را وارد کرده
51
00:02:03,299 –> 00:02:05,850
ام و می خواهم مطمئن شوم که
52
00:02:05,850 –> 00:02:08,220
برخی از اطلاعات کلیدی را به
53
00:02:08,220 –> 00:02:10,050
عنوان مثال نادیده نمی گیرم. پارامتر ساختار
54
00:02:10,050 –> 00:02:12,030
هنوز در مورد آن نگران نباشید، اما من واقعاً می
55
00:02:12,030 –> 00:02:13,830
خواهم حداقل
56
00:02:13,830 –> 00:02:15,840
پنج ثانیه در مورد آن صحبت کنم، بنابراین من
57
00:02:15,840 –> 00:02:19,740
به این صفحه نگاه می کنم، اما امیدوارم که
58
00:02:19,740 –> 00:02:22,680
نباید شما را آزار دهد و امیدوارم
59
00:02:22,680 –> 00:02:24,990
بیشتر روی کد تمرکز کنید. که
60
00:02:24,990 –> 00:02:29,580
به هر حال دارم تایپ می کنم، پس بیایید ادامه دهیم و
61
00:02:29,580 –> 00:02:31,770
این مراحل را طی کنیم مرحله اول خواندن
62
00:02:31,770 –> 00:02:34,350
تصویر و تعیین اندازه پیکسل است و
63
00:02:34,350 –> 00:02:36,630
من همیشه دوست دارم
64
00:02:36,630 –> 00:02:38,910
هر سناریویی را به مراحل مختلف تقسیم کنم تا
65
00:02:38,910 –> 00:02:40,950
بدانم می توانم روی چیزهای خاصی تمرکز کنم
66
00:02:40,950 –> 00:02:42,990
و دقیقاً به همین دلیل است که من این را در اینجا تقسیم کردم
67
00:02:42,990 –> 00:02:45,420
مرحله اول این است که بدیهی است که باید تصویر را بخوانیم
68
00:02:45,420 –> 00:02:46,140
69
00:02:46,140 –> 00:02:48,330
مرحله دوم پاک کردن تصویر در صورت نیاز
70
00:02:48,330 –> 00:02:51,660
مرحله سوم نیز تمیز کردن مانند
71
00:02:51,660 –> 00:02:54,209
اتساع فرسایشی در برخی از این مرحله چهار است
72
00:02:54,209 –> 00:02:56,400
که باید دانه ها را یک بار برچسب گذاری کنیم. ما
73
00:02:56,400 –> 00:02:58,350
آنها را شناسایی می کنیم و سپس آن را اندازه می گیریم و
74
00:02:58,350 –> 00:03:00,420
سپس نتایج را در فایل CSV خروجی
75
00:03:00,420 –> 00:03:02,580
می دهیم، بنابراین اکنون می توانیم مواردی را که می دانید
76
00:03:02,580 –> 00:03:05,580
بر اساس آن مرحله صفر که احتمالاً همیشه می دانید
77
00:03:05,580 –> 00:03:12,300
Tim port CV را برای وارد کردن numpy به عنوان NP
78
00:03:12,300 –> 00:03:15,360
و وارد کردن در هر صورت لطفاً ببخشید که
79
00:03:15,360 –> 00:03:16,980
به پایین نگاه می کنم من هرگز
80
00:03:16,980 –> 00:03:19,709
تسلط نداشتم تسلط کامل تسلط کامل من
81
00:03:19,709 –> 00:03:23,160
هرگز با نگاه نکردن به صفحه کلید بر هنر تایپ کردن مسلط نشدم،
82
00:03:23,160 –> 00:03:26,250
بنابراین فقط
83
00:03:26,250 –> 00:03:30,510
یک چیز کوچک دیگر که
84
00:03:30,510 –> 00:03:31,620
باید در مورد من بدانید.
85
00:03:31,620 –> 00:03:36,510
86
00:03:36,510 –> 00:03:39,720
ما باید وارد کنیم می
87
00:03:39,720 –> 00:03:44,090
دانم که در تصویر نیاز دارم بنابراین از s K
88
00:03:44,090 –> 00:03:51,630
ایمپورت تصویر و تصویر و همچنین از
89
00:03:51,630 –> 00:03:56,660
SK scifi متاسفم
90
00:03:56,660 –> 00:03:59,989
Sify import در تصویر و از SK
91
00:03:59,989 –> 00:04:01,590
psychic image
92
00:04:01,590 –> 00:04:04,050
من می خواهم وارد کنم. اوه من می خواهم
93
00:04:04,050 –> 00:04:06,989
رنگ را وارد کنم زیرا می خواهم نشان می دهد می خواهم
94
00:04:06,989 –> 00:04:10,560
تصاویر را رنگی نمایش دهم تا بتوانیم منظورم
95
00:04:10,560 –> 00:04:12,989
این است که بتوانیم رنگ های مختلفی را به
96
00:04:12,989 –> 00:04:15,630
دانه ها اختصاص دهیم بله و چه چیز دیگری را می خواهم
97
00:04:15,630 –> 00:04:17,850
اندازه گیری وارد کنم زیرا در نهایت
98
00:04:17,850 –> 00:04:19,620
می خواهیم اندازه گیری کنیم برخی از اندازه گیری ها را انجام دهیم
99
00:04:19,620 –> 00:04:22,289
بنابراین این یکی می گوید
100
00:04:22,289 –> 00:04:25,380
یک خطا نامعتبر است نحوی که من انجام دادم
101
00:04:25,380 –> 00:04:26,970
بله، بنابراین اجازه
102
00:04:26,970 –> 00:04:31,680
دهید از matplotlib متوجه شوم خوب، بنابراین این
103
00:04:31,680 –> 00:04:34,380
مرحله ما صفر است، حالا بیایید یا مرحله شماره
104
00:04:34,380 –> 00:04:36,930
یک را انجام دهیم که تصویر ما را بارگذاری می کند و ما می دانیم که
105
00:04:36,930 –> 00:04:40,260
چگونه آن تصویر را انجام دهیم که برابر با C v2 نقطه
106
00:04:40,260 –> 00:04:45,750
M خوانده شده است و تصویر ما در تصاویر اسلش
107
00:04:45,750 –> 00:04:51,540
و چه چیزی به آن Grains to Art jpg گفته می شود
108
00:04:51,540 –> 00:04:54,300
و ما نیز ممکن است این را بخوانیم، منظورم این است که
109
00:04:54,300 –> 00:04:57,030
اجازه دهید این را به عنوان یک تصویر سطح خاکستری بخوانیم
110
00:04:57,030 –> 00:05:01,470
و نه به عنوان یک تصویر رنگی، تصویر رنگی
111
00:05:01,470 –> 00:05:03,870
در آنجا شماره یک خواهد بود، بنابراین وقتی
112
00:05:03,870 –> 00:05:06,060
تصویر خود را می خوانیم، من نیز
113
00:05:06,060 –> 00:05:11,760
پیکسل به میکرون را یک پارامتر تعریف
114
00:05:11,760 –> 00:05:15,090
میکنم و من فقط این را میخواهم نقطه پنج را انجام دهیم،
115
00:05:15,090 –> 00:05:21,330
بنابراین معنی آن این است که من فقط
116
00:05:21,330 –> 00:05:26,060
این چیزی نیست جز 1 پیکسل برابر با 0.5
117
00:05:26,060 –> 00:05:29,640
میکرومتر یا 500 نانومتر، بله
118
00:05:29,640 –> 00:05:31,770
، در نهایت وقتی این کار را انجام میدهیم، دقیقاً همینطور است.
119
00:05:31,770 –> 00:05:32,460
اندازهگیریهای ما
120
00:05:32,460 –> 00:05:34,530
من فقط میخواهم هر پیکسل را در
121
00:05:34,530 –> 00:05:37,169
500 ضرب کنم که تقریباً آن یا 0.5 است، به
122
00:05:37,169 –> 00:05:39,240
همین دلیل است که آن را در حال حاضر تعریف میکنم، بنابراین
123
00:05:39,240 –> 00:05:43,380
بیایید ادامه دهیم و اکنون ادامه دهیم اگر
124
00:05:43,380 –> 00:05:46,350
تصویر شما واقعاً یک نوار مقیاس دارد، این تصویر دارای یک نوار مقیاس
125
00:05:46,350 –> 00:05:48,030
نیست. نوار مقیاس در اینجا پایین است،
126
00:05:48,030 –> 00:05:50,310
اما من از اکثر تصاویر میکروسکوپ متنفرم که
127
00:05:50,310 –> 00:05:53,100
دانستن میکرون مهم است، می
128
00:05:53,100 –> 00:05:54,930
دانید اندازه پیکسل چقدر است، اما
129
00:05:54,930 –> 00:05:57,300
جاسازی یک نوار مقیاس به غیر از
130
00:05:57,300 –> 00:05:59,040
اهداف انتشار،
131
00:05:59,040 –> 00:06:00,570
به هر حال اگر با تصاویر کار می کنید دلیل واقعی نمی بینم.
132
00:06:00,570 –> 00:06:02,430
که به وضوح نوار مقیاس شما را دارد
133
00:06:02,430 –> 00:06:04,950
باید تصویر خود را برش دهید و احتمالاً
134
00:06:04,950 –> 00:06:06,450
می دانید که چگونه این برش را انجام دهید،
135
00:06:06,450 –> 00:06:09,660
ادامه دهید و نشان دهید که
136
00:06:09,660 –> 00:06:12,210
تصویر برش خورده برابر با 2 است.
137
00:06:12,210 –> 00:06:16,590
138
00:06:16,590 –> 00:06:20,370
139
00:06:20,370 –> 00:06:21,419
140
00:06:21,419 –> 00:06:25,169
بدانید که برخی از پیکسل ها را برش دهید،
141
00:06:25,169 –> 00:06:28,410
سپس فقط 0 تا 300 را انجام دهید، فرض
142
00:06:28,410 –> 00:06:30,960
کنید می خواهید 300 پیکسل اول را
143
00:06:30,960 –> 00:06:34,080
از بالا و سپس تمام پیکسل هایی را
144
00:06:34,080 –> 00:06:36,720
که در جهت x می شناسید در جهت های عرض بردارید،
145
00:06:36,720 –> 00:06:39,300
بنابراین از ارتفاع 0 تا 300 و
146
00:06:39,300 –> 00:06:40,820
از وزن آن
147
00:06:40,820 –> 00:06:43,040
سه پیکسل است، خوشبختانه ما مجبور نیستیم
148
00:06:43,040 –> 00:06:45,410
این کار را برای تصویری که
149
00:06:45,410 –> 00:06:48,140
با آن کار می کنیم انجام دهیم، بنابراین بیایید
150
00:06:48,140 –> 00:06:54,170
به مرحله شماره دو خود ادامه دهیم، بنابراین اکنون که
151
00:06:54,170 –> 00:06:57,080
یک پیکسل داریم، بیایید حذف نویز انجام دهیم، اما این
152
00:06:57,080 –> 00:06:59,090
تصویر بسیار تمیز به نظر می رسد. پس بیایید
153
00:06:59,090 –> 00:07:02,090
نگران حذف نویز نباشیم اگر نویز زیادی وجود دارد،
154
00:07:02,090 –> 00:07:03,500
خواهید دید که وقتی
155
00:07:03,500 –> 00:07:05,870
آن را در آستانه قرار می دهید، یعنی زمانی که می
156
00:07:05,870 –> 00:07:07,430
توانیم برگردیم و سپس مقداری نویز زدایی را انجام دهیم،
157
00:07:07,430 –> 00:07:09,800
خوب، بیایید نویز زدایی را به آنجا بدهیم
158
00:07:09,800 –> 00:07:13,880
و مرحله بعدی اینجا و توسط
159
00:07:13,880 –> 00:07:15,980
راه دوباره من به من نگاه می کنم به
160
00:07:15,980 –> 00:07:18,050
هر حال، اگر در پایان کار حذف نویز را انجام دهید،
161
00:07:18,050 –> 00:07:20,480
همانطور که چندین بار
162
00:07:20,480 –> 00:07:23,300
در آموزش های قبلی خود به این موضوع اشاره کردم، بهترین
163
00:07:23,300 –> 00:07:26,720
آنها یک فیلتر میانه یا بهتر است
164
00:07:26,720 –> 00:07:28,640
برای تصاویر میکروسکوپی باشد و
165
00:07:28,640 –> 00:07:31,460
فیلتر معنی غیر محلی بهترین انتخاب برای
166
00:07:31,460 –> 00:07:34,490
حذف نویز است. وقتی آن را داشتید
167
00:07:34,490 –> 00:07:36,920
، همه ما آماده شدیم، میدانید، بنابراین
168
00:07:36,920 –> 00:07:38,990
مرحله بعدی مرحله دوم حذف نویز در صورت
169
00:07:38,990 –> 00:07:41,060
نیاز و تصویر آستانه برای جدا کردن
170
00:07:41,060 –> 00:07:42,920
دانهها از مرزها است، بنابراین بیایید جلوتر برویم
171
00:07:42,920 –> 00:07:45,230
و آستانهگذاری را انجام دهیم و
172
00:07:45,230 –> 00:07:46,970
در آموزشهای قبلی خود
173
00:07:46,970 –> 00:07:51,650
دوباره آستانهگذاری را بررسی کردیم، مرحله یک مرحله اول. مرحله اول بخشی
174
00:07:51,650 –> 00:07:54,290
از کار این است که در واقع به
175
00:07:54,290 –> 00:07:56,660
خود هیستوگرام نگاه کنیم، بنابراین هیستوگرام P از نقطه T
176
00:07:56,660 –> 00:07:59,060
بله، بنابراین به هیستوگرام نگاه کنید
177
00:07:59,060 –> 00:08:02,480
و هیستوگرام در اینجا مربوط به تصویر
178
00:08:02,480 –> 00:08:05,780
ما است و تصویر ما یک آرایه 2 بعدی برای انجام
179
00:08:05,780 –> 00:08:07,880
هیستوگرام است، شما به یک آرایه D نیاز دارید. بنابراین من میخواهم
180
00:08:07,880 –> 00:08:10,820
این تصویر خوب را مسطح کنم، نه مسطح
181
00:08:10,820 –> 00:08:12,920
، تنها کاری که انجام میدهد این است که فقط آن را به D میبرد و
182
00:08:12,920 –> 00:08:15,530
سپس آن را به آرایه 1 بعدی مسطح میکند و
183
00:08:15,530 –> 00:08:19,190
سپس اجازه دهید این تصویر را به 100 bin رسم کنیم و
184
00:08:19,190 –> 00:08:21,470
سپس انجام دهیم یا محدوده برابر با این
185
00:08:21,470 –> 00:08:25,610
است n تصویر 8 بیتی بنابراین 0 تا 255 من فقط می خواهم
186
00:08:25,610 –> 00:08:28,610
به کل محدوده نگاه کنم خوب است، بنابراین اکنون
187
00:08:28,610 –> 00:08:30,620
وقتی این را اجرا می کنم باید یک
188
00:08:30,620 –> 00:08:34,219
هیستوگرام در آنجا ببینیم که بسیار زیبا به نظر می رسد
189
00:08:34,219 –> 00:08:37,789
تصاویر ما 8 بیت و آن هیستوگرام یک
190
00:08:37,789 –> 00:08:40,880
دسته پیکسل در حدود 220 یا بنابراین تا
191
00:08:40,880 –> 00:08:44,179
10 و من مانند یک دره درست
192
00:08:44,179 –> 00:08:49,220
در حدود 150 تا 160 می بینم، بنابراین ما می توانیم دو کار را انجام
193
00:08:49,220 –> 00:08:50,630
دهیم یکی از دو کاری که می توانیم
194
00:08:50,630 –> 00:08:52,880
آستانه دستی انجام دهیم یا می توانیم
195
00:08:52,880 –> 00:08:53,760
نوعی پاییز انجام دهیم
196
00:08:53,760 –> 00:08:56,880
– نگه داشتن با استفاده از Otsu و من این را در توضیح داده ام
197
00:08:56,880 –> 00:09:00,270
. به هر حال آموزش قبلی را که میدانید،
198
00:09:00,270 –> 00:09:04,830
پس بیایید ادامه دهیم و برگردیم
199
00:09:04,830 –> 00:09:08,630
و و به هر حال،
200
00:09:08,630 –> 00:09:11,910
وقتی این رزومه را روی non threshold اعمال
201
00:09:11,910 –> 00:09:14,610
میکنم، باز میکنم، دو چیز را بیرون میآورم، یکی
202
00:09:14,610 –> 00:09:17,400
مقدار نرخ آستانه و همچنین تصویر
203
00:09:17,400 –> 00:09:19,980
خودش یا خود آرایه بعد از
204
00:09:19,980 –> 00:09:21,690
آستانه گذاری، پس می بینیم که در عرض یک
205
00:09:21,690 –> 00:09:23,730
ثانیه، روشی که شما انجام می دهید این است که v2
206
00:09:23,730 –> 00:09:27,120
dot Thresh را ببینید و کدام تصویر
207
00:09:27,120 –> 00:09:29,580
را آستانه یا IMG قرار دهیم، چیزی است که می
208
00:09:29,580 –> 00:09:32,790
خواهیم آستانه گذاری کنیم و از مقدار پیکسل صفر شروع می
209
00:09:32,790 –> 00:09:36,350
شود. و به محض اینکه به دست ما رسید
210
00:09:36,350 –> 00:09:39,270
، مقدار 255 را به همه
211
00:09:39,270 –> 00:09:41,520
thres ها اختصاص دهید پیکسلهای قرمز را نگه دارید و با استفاده از
212
00:09:41,520 –> 00:09:44,580
چه الگوریتمی میخواهید آن را به آستانه تبدیل کند، بنابراین
213
00:09:44,580 –> 00:09:48,690
من از روش آستانه باینری زیرخط th یا Esh
214
00:09:48,690 –> 00:09:53,670
بهعلاوه CV okay CV
215
00:09:53,670 –> 00:10:00,300
برای نقطه T H یا H زیرخط Otsu Oh TSU استفاده میکنم،
216
00:10:00,300 –> 00:10:04,590
پس این است و دوباره بیایید کد را اجرا کنیم
217
00:10:04,590 –> 00:10:06,330
مطمئن شوید که همه چیز درست است، بنابراین
218
00:10:06,330 –> 00:10:09,150
واضح است که اینجا چیزی درست نیست، بنابراین
219
00:10:09,150 –> 00:10:10,410
من چه کار کردم
220
00:10:10,410 –> 00:10:13,650
cv two بدون ویژگی نویسنده threshed است،
221
00:10:13,650 –> 00:10:18,530
متأسفم، بنابراین به همین دلیل است که بسیار
222
00:10:18,530 –> 00:10:21,750
مهم است که کد را تقریباً
223
00:10:21,750 –> 00:10:24,000
بعد از هر خط اجرا کنید تا این بار خوب اجرا شود
224
00:10:24,000 –> 00:10:27,330
و اکنون می بینید که مقدار ET ما
225
00:10:27,330 –> 00:10:32,190
که مقدار پیشنهادی seuss فرد یا
226
00:10:32,190 –> 00:10:35,030
مقدار آستانه انتخابی Otsu برای این تصویر است
227
00:10:35,030 –> 00:10:38,130
157 است، بنابراین ما با مهمان خود
228
00:10:38,130 –> 00:10:41,520
بین 150 تا 160 مشکلی نداشتیم، بنابراین این 157 است
229
00:10:41,520 –> 00:10:43,980
و اگر به آستانه نگاه کنید
230
00:10:43,980 –> 00:10:48,810
نیز 8 است. تصویر بیتی این یک
231
00:10:48,810 –> 00:10:52,310
تصویر باینری نیست یک تصویر 8 بیتی با مقادیر
232
00:10:52,310 –> 00:10:55,500
255 است زیرا ما گفتیم که تمام آستانه در
233
00:10:55,500 –> 00:10:57,810
پیکسل باید 255 باشد بنابراین تمام پیکسل های
234
00:10:57,810 –> 00:10:59,910
مربوط به دانه ما دارای
235
00:10:59,910 –> 00:11:02,220
مقدار
236
00:11:02,220 –> 00:11:03,720
255 خواهند بود.
237
00:11:03,720 –> 00:11:06,330
e مقدار 0 است، بنابراین این فقط یک
238
00:11:06,330 –> 00:11:07,560
تصویر آستانه ای است،
239
00:11:07,560 –> 00:11:12,840
این یک تصویر نیست، این یک تصویر باینری نیست،
240
00:11:12,840 –> 00:11:14,820
خوب است، بنابراین ما باید این
241
00:11:14,820 –> 00:11:17,730
تصویر آستانه را به یک تصویر باینری تبدیل کنیم،
242
00:11:17,730 –> 00:11:19,170
اما قبل از حرکت می توانید در واقع
243
00:11:19,170 –> 00:11:22,830
به این تصویر از این تصویر آستانه نگاه
244
00:11:22,830 –> 00:11:25,410
کنید. یکی از راههایی که میدانید
245
00:11:25,410 –> 00:11:34,560
در show v2 dot باید عنوان و
246
00:11:34,560 –> 00:11:37,650
سپس منبع را ذکر کنید و فراموش نکنید که
247
00:11:37,650 –> 00:11:42,000
کلید وزن را انجام دهید این است که
248
00:11:42,000 –> 00:11:43,830
اگر 0 را بگذارم سیستم چقدر منتظر میماند تا پنجره بسته شود
249
00:11:43,830 –> 00:11:45,510
، یعنی میخواهم آن را ببندم.
250
00:11:45,510 –> 00:11:47,670
اگر این را به صورت دستی قرار ندهید، ممکن است
251
00:11:47,670 –> 00:11:50,430
خراب شود، میدانید که هسته
252
00:11:50,430 –> 00:11:54,839
مجدداً راهاندازی میشود و او آزاد میشود، پس بیایید ادامه دهیم
253
00:11:54,839 –> 00:11:56,610
و این را اجرا کنیم و این
254
00:11:56,610 –> 00:11:59,130
تصویر آستانهای من است که در واقع عالی به نظر میرسد
255
00:11:59,130 –> 00:12:03,120
به جز چند مورد از این مناطق که من
256
00:12:03,120 –> 00:12:06,930
برخی را میبینم. از دست دادن چند پیکسل از دست رفته، بنابراین
257
00:12:06,930 –> 00:12:08,730
نمیدانم که آیا میتوانیم برخی از این
258
00:12:08,730 –> 00:12:12,900
مناطق را با فرسایش و گشاد شدن ببندیم وقتی فرسایش میکنم،
259
00:12:12,900 –> 00:12:16,200
میگرن یک پیکسل کوچک میشود
260
00:12:16,200 –> 00:12:18,690
و وقتی آنها را باز میکنم
261
00:12:18,690 –> 00:12:21,330
پیکسل به بالا برمیگردند و در این فرآیند وقتی
262
00:12:21,330 –> 00:12:23,580
کوچک میشوم، من به امید اینکه برخی از این
263
00:12:23,580 –> 00:12:25,500
مناطق تاریک که مرزهای دانه به
264
00:12:25,500 –> 00:12:28,110
هم متصل میشوند و سپس
265
00:12:28,110 –> 00:12:29,970
تعریف کمی بهتر از این
266
00:12:29,970 –> 00:12:34,530
دانهها به ما میدهند، پس بیایید جلوتر برویم و تصویر را تمیز کنیم
267
00:12:34,530 –> 00:12:36,839
و حدس میزنم وارد
268
00:12:36,839 –> 00:12:40,170
مرحله سه میشویم و اکنون مرحله شماره سه
269
00:12:40,170 –> 00:12:42,180
، اگر نیاز بود، تصویر را پاک کنید، خوب این کار نباید انجام شود.
270
00:12:42,180 –> 00:12:45,060
بگو پاک کردن این اساساً خوب است،
271
00:12:45,060 –> 00:12:50,100
شاید پاک کردن درست باشد، بنابراین قبل از اینکه
272
00:12:50,100 –> 00:12:52,110
منظورم بخشی از عملیات فرسایش و گشاد شدن
273
00:12:52,110 –> 00:12:53,040
274
00:12:53,040 –> 00:12:54,720
ما باشد، به اندازه هسته نیاز دارد، بنابراین اجازه دهید ادامه دهم
275
00:12:54,720 –> 00:12:57,150
و دوباره کرنل را تعریف کنم، من
276
00:12:57,150 –> 00:12:59,220
این تمرین را در آموزش قبلی خود انجام داده ام،
277
00:12:59,220 –> 00:13:01,080
بنابراین من ”
278
00:13:01,080 –> 00:13:06,810
در حال حاضر کمی سریع پیش می روم، بنابراین وقتی
279
00:13:06,810 –> 00:13:10,560
بدانید که این هسته من 3×3 است و از
280
00:13:10,560 –> 00:13:18,450
نوع NP dot است، شما در 8، بله، بنابراین
281
00:13:18,450 –> 00:13:20,910
این هسته من است و اکنون می توانم بگویم
282
00:13:20,910 –> 00:13:21,450
که
283
00:13:21,450 –> 00:13:25,340
تصویر بارگذاری شده من برابر است، NP dot ایجاد می کنم. به C v2 dot
284
00:13:25,340 –> 00:13:28,800
erode خوب است و کدام تصویر را نه
285
00:13:28,800 –> 00:13:30,630
تصویر اصلی، بلکه تصویر آستانه
286
00:13:30,630 –> 00:13:33,150
را میچرخانیم، بله و سپس پارامتر دیگر
287
00:13:33,150 –> 00:13:35,910
هسته است و چند بار تکرار
288
00:13:35,910 –> 00:13:39,830
برابر با یک است، بنابراین اکنون اجازه دهید به آوودات خود نگاه کنیم،
289
00:13:39,830 –> 00:13:42,240
در واقع
290
00:13:42,240 –> 00:13:45,870
تصویر اصلی را به عنوان رها میکنیم. است و سپس یک خط دیگر
291
00:13:45,870 –> 00:13:48,800
برای تصویر فرسوده شده اضافه کنید تا بتوانیم هر دو
292
00:13:48,800 –> 00:13:55,920
تصویر را برابر با یا از این مقایسه کنیم،
293
00:13:55,920 –> 00:13:58,290
بنابراین شما می روید تا تصویر اصلی من تصویر فرسوده شود،
294
00:13:58,290 –> 00:14:01,320
تنها کاری که من انجام دادم این است که می دانید پیکسل های پایین
295
00:14:01,320 –> 00:14:04,190
را می توانستم با dilate شروع کنم تا
296
00:14:04,190 –> 00:14:06,660
در واقع برخی از آنها را پر کنم. اینها
297
00:14:06,660 –> 00:14:08,640
عملیاتی به نام پر کردن سوراخ وجود دارد
298
00:14:08,640 –> 00:14:11,280
چند چیز وجود دارد که می توانید آنها را امتحان کنید بله، اما من
299
00:14:11,280 –> 00:14:12,630
نمی خواهم فعلاً با آن آزمایش کنم،
300
00:14:12,630 –> 00:14:15,210
اما من این را فرسایش دادم، بیایید ادامه دهیم
301
00:14:15,210 –> 00:14:19,350
و آن را گشاد کنیم تا در
302
00:14:19,350 –> 00:14:24,240
اینجا چیزی را تغییر ندهیم.
303
00:14:24,240 –> 00:14:27,210
بدون تغییر زیاد تصویر به عقب برگردید، بنابراین
304
00:14:27,210 –> 00:14:30,450
اکنون میخواهم این را گشاد کنم و
305
00:14:30,450 –> 00:14:34,050
عمل CV برای اتساع است و ما میخواهیم
306
00:14:34,050 –> 00:14:36,450
تصویر فرسوده شده را گشاد کنیم بنابراین
307
00:14:36,450 –> 00:14:38,850
تصویر ورودی من فرسوده میشود، بنابراین اجازه دهید در واقع
308
00:14:38,850 –> 00:14:44,160
به تصویر گشاد شده نگاه کنیم.
309
00:14:44,160 –> 00:14:47,430
وقتی من این را اجرا می کنم باید در سمت چپ ببینیم که
310
00:14:47,430 –> 00:14:49,650
311
00:14:49,650 –> 00:14:51,840
تصویر آستانه واقعی در سمت راست است
312
00:14:51,840 –> 00:14:55,410
که یک بار فرسایش می یابد و برخی از مناطق گشاد می
313
00:14:55,410 –> 00:14:57,510
شوند، مانند اگر به این منطقه نگاه کنید
314
00:14:57,510 –> 00:14:59,700
من واقعا خوشحال نیستم که من
315
00:14:59,700 –> 00:15:03,450
تغییر اطلاعات در این منطقه، بنابراین
316
00:15:03,450 –> 00:15:06,360
فعلاً آن را همانطور که هست نگه میدارم، بیایید
317
00:15:06,360 –> 00:15:08,310
ببینیم بیایید تجزیه و تحلیل خود را انجام دهیم و
318
00:15:08,310 –> 00:15:10,770
در واقع میتوانیم از تصویر آستانه خود بهعنوان
319
00:15:10,770 –> 00:15:13,770
ورودی مرحله بعدی خود به جای
320
00:15:13,770 –> 00:15:15,930
گشاد شده استفاده کنیم، بنابراین به هر حال انجام این تمرین ضرری ندارد،
321
00:15:15,930 –> 00:15:19,850
بنابراین اکنون که ما
322
00:15:19,850 –> 00:15:22,980
مقداری فرسایش و اتساع
323
00:15:22,980 –> 00:15:25,410
324
00:15:25,410 –> 00:15:25,910
325
00:15:25,910 –> 00:15:30,750
326
00:15:30,750 –> 00:15:34,110
انجام داده ایم، بنابراین بیایید به مرحله بعدی
327
00:15:34,110 –> 00:15:35,130
برویم که
328
00:15:35,130 –> 00:15:38,220
مرحله بعدی من است. یک
329
00:15:38,220 –> 00:15:42,240
عدد صحیح 8 بیتی با تمام مقادیر 255 و صفر
330
00:15:42,240 –> 00:15:45,360
، یک تصویر باینری 255 و صفر است،
331
00:15:45,360 –> 00:15:46,860
اما سیستم نمی داند که این
332
00:15:46,860 –> 00:15:48,660
تصویر باینری است، سیستم می داند که
333
00:15:48,660 –> 00:15:51,180
یک تصویر عدد صحیح 8 بیتی است، بنابراین بیایید
334
00:15:51,180 –> 00:15:52,830
این تصویر آستانه ای را به باینری شما،
335
00:15:52,830 –> 00:15:55,440
بنابراین من می خواهم این را ماسک من برابر با 2 صدا کنم
336
00:15:55,440 –> 00:15:57,090
و شما احتمالاً می دانید که چگونه این کار را انجام دهید،
337
00:15:57,090 –> 00:15:59,760
بله، بنابراین من می خواهم تصویر گشاد شده خود را بگیرم
338
00:15:59,760 –> 00:16:04,740
و اگر مساوی با 255 باشد، بنابراین کاری که
339
00:16:04,740 –> 00:16:09,180
انجام می دهد این است که هر مکان پیکسل اگر یا
340
00:16:09,180 –> 00:16:12,720
هر نقطه در این آرایه اگر
341
00:16:12,720 –> 00:16:16,190
مقدار برابر با 255 باشد، m پرسیدن
342
00:16:16,190 –> 00:16:19,440
در آن موقعیت درست خواهد بود، درست است
343
00:16:19,440 –> 00:16:21,780
که این عملیات منطقی را میدانید هر زمان که
344
00:16:21,780 –> 00:16:23,970
بیشتر از کمتر یا دو
345
00:16:23,970 –> 00:16:26,430
برابر مساوی انجام دهید، این یعنی مقایسه چیزی با
346
00:16:26,430 –> 00:16:27,990
چیز دیگری درست است، بنابراین میگوییم
347
00:16:27,990 –> 00:16:30,360
که در حالت گشاد شده اگر مقدار برابر با
348
00:16:30,360 –> 00:16:32,850
255 باشد، آنگاه این کار را انجام میدهید. اگر 255 نباشد یک true برگردانید، به این
349
00:16:32,850 –> 00:16:35,430
معنی که اگر 0 باشد، مقدار false را برمیگرداند،
350
00:16:35,430 –> 00:16:40,230
بنابراین وقتی دوباره این را اجرا میکنیم،
351
00:16:40,230 –> 00:16:42,900
اکنون باید یک بولی با
352
00:16:42,900 –> 00:16:45,690
اندازه آرایه مشابه تصویر ورودی ما را ببینیم که در آن
353
00:16:45,690 –> 00:16:49,290
هر مقدار درست یا نادرست است، بنابراین
354
00:16:49,290 –> 00:16:51,270
این تصویر باینری که ما در
355
00:16:51,270 –> 00:16:55,320
واقع ایجاد کردهایم و IO dot M نشان میدهد،
356
00:16:55,320 –> 00:16:58,320
بیایید جلو برویم و به ماسک خود نگاه کنیم، بنابراین
357
00:16:58,320 –> 00:17:00,410
وقتی این را اجرا میکنم، ماسک
358
00:17:00,410 –> 00:17:05,010
را همانجا ببینید خوب است و چرا وقتی این را امتحان کردم از I M
359
00:17:05,010 –> 00:17:07,319
show و نه cv2 استفاده
360
00:17:07,319 –> 00:17:10,640
کردم. در حین اجرای تمرینی
361
00:17:10,640 –> 00:17:13,650
cv2، در واقع مجبور شدم این ویدئو را تا این مرحله دوباره ضبط کنم،
362
00:17:13,650 –> 00:17:16,079
زیرا CV به نقطه M
363
00:17:16,079 –> 00:17:18,449
تصویر بولی را نشان
364
00:17:18,449 –> 00:17:21,900
نمیدهد و نمیخواستم دلیل آن را بررسی کنم،
365
00:17:21,900 –> 00:17:23,579
اما واقعاً کار کرد، بنابراین من از آن استفاده خواهم کرد.
366
00:17:23,579 –> 00:17:28,050
به هر حال اگر در این مرحله
367
00:17:28,050 –> 00:17:30,810
بیایید جلوتر برویم و بزرگنمایی کنیم و
368
00:17:30,810 –> 00:17:34,020
ببینیم که چگونه به نظر می رسد بیایید انجام دهیم اندازه تصویر ما
369
00:17:34,020 –> 00:17:38,490
354 در 410 است، بنابراین اگر به 250 در
370
00:17:38,490 –> 00:17:42,720
250 یا 2 برویم، فقط به 280، بله 250
371
00:17:42,720 –> 00:17:48,809
در 280 در X و سپس 2 50 در است. 280 پس بیایید
372
00:17:48,809 –> 00:17:51,539
فقط این یک روش بزرگنمایی است، بنابراین ما
373
00:17:51,539 –> 00:17:54,480
فقط آن جعبه کوچک را می بینیم و شما می توانید ببینید که
374
00:17:54,480 –> 00:17:56,639
این مرز دانه من است و این
375
00:17:56,639 –> 00:18:00,090
دانه من در اینجا خوب است، بنابراین ما با آن خوب
376
00:18:00,090 –> 00:18:03,269
هستیم، بنابراین ما با ماسک خود و آنچه که هست تمام شده است.
377
00:18:03,269 –> 00:18:07,980
مرحله بعدی ما، بنابراین ما ماسک را ایجاد کردیم، بنابراین
378
00:18:07,980 –> 00:18:09,570
مرحله سه را تمام کردیم، مرحله چهارم،
379
00:18:09,570 –> 00:18:11,669
برچسب زدن دانه ها در تصویر اصلی است، بنابراین
380
00:18:11,669 –> 00:18:14,669
اکنون باید دانه ها را به
381
00:18:14,669 –> 00:18:17,970
درستی برچسب گذاری کنیم، بنابراین چگونه دانه ها را برچسب گذاری کنیم،
382
00:18:17,970 –> 00:18:21,600
اجازه دهید به من نگاه کنم یادداشت ها را انجام نمی دهم پس
383
00:18:21,600 –> 00:18:24,539
فراموش نکنم قبل از توضیح در مورد این یک
384
00:18:24,539 –> 00:18:28,259
چیز به نام ساختار صحبت کنم
385
00:18:28,259 –> 00:18:30,360
که اجازه دهید ادامه دهم و و فقط
386
00:18:30,360 –> 00:18:33,950
این را بنویسید این خط را بنویسید
387
00:18:33,950 –> 00:18:38,460
تا دقیقاً منظور من را بدانید 1 1 1
388
00:18:38,460 –> 00:18:51,330
و 1 من این را به عنوان فاکتور ساختار خود تعریف
389
00:18:51,330 –> 00:18:53,460
میکنم که در یک ثانیه توضیح میدهم
390
00:18:53,460 –> 00:18:58,710
و سپس ماسک برچسب را در
391
00:18:58,710 –> 00:19:01,289
تصویری از دلایل توضیح میدهم. در مورد اینکه چرا تصویر nd را در اینجا در تصویر دوم وارد کردم
392
00:19:01,289 –> 00:19:04,679
، تابعی
393
00:19:04,679 –> 00:19:07,409
به نام label وجود دارد که در واقع هر یک
394
00:19:07,409 –> 00:19:11,789
از این دانههای غیرمرتبط را برچسبگذاری میکند، اگر این
395
00:19:11,789 –> 00:19:14,700
دانهها حتی با یک پیکسل به هم متصل شوند،
396
00:19:14,700 –> 00:19:17,700
به این معنی است که در کل یک شی است،
397
00:19:17,700 –> 00:19:18,720
398
00:19:18,720 –> 00:19:20,970
بنابراین تمام کاری که این برچسب انجام میدهد این است که در واقع
399
00:19:20,970 –> 00:19:25,559
میرود. از طریق این و آن،
400
00:19:25,559 –> 00:19:28,440
به خوبی متوجه می شود که در واقع یک برچسب به
401
00:19:28,440 –> 00:19:32,879
همه اشیاء غیر متصل اختصاص می دهد، اکنون این
402
00:19:32,879 –> 00:19:35,789
روشی است برای تعیین اینکه آن اتصال چیست،
403
00:19:35,789 –> 00:19:37,019
آیا آنها متصل هستند یا
404
00:19:37,019 –> 00:19:39,269
غیر متصل، خوب است، بنابراین تقریباً همین است،
405
00:19:39,269 –> 00:19:42,240
بنابراین ماسک برچسب و تعداد برچسب ها این است.
406
00:19:42,240 –> 00:19:43,889
آیا مقادیری هستند که
407
00:19:43,889 –> 00:19:46,080
قرار است برچسب نقطه تصویر را
408
00:19:46,080 –> 00:19:51,389
برگرداند، بله، بنابراین در برچسب نقطه تصویر،
409
00:19:51,389 –> 00:19:53,549
برچسبهای
410
00:19:53,549 –> 00:19:57,600
زیرخط و برچسبهای عددی را برمیگرداند تا اینجا خوب است و روی
411
00:19:57,600 –> 00:19:59,490
چه تصویری قرار است اعمال
412
00:19:59,490 –> 00:20:02,580
کنیم، بدیهی است که ما به یک ماسک نیاز دارید،
413
00:20:02,580 –> 00:20:08,520
سپس ساختار برابر با s است و s ما 1
4