در این مطلب، ویدئو 23 – تقسیم بندی تصویر مبتنی بر هیستوگرام در پایتون با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:24:12
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,120 –> 00:00:02,340
سلام بچه ها اینجا Trinity است و شما در حال
2
00:00:02,340 –> 00:00:04,380
تماشای ویدیوهای آموزشی پایتون در
3
00:00:04,380 –> 00:00:07,710
کانال من Python برای میکروسکوپ در یوتیوب
4
00:00:07,710 –> 00:00:10,440
هستید.
5
00:00:10,440 –> 00:00:12,540
6
00:00:12,540 –> 00:00:16,289
7
00:00:16,289 –> 00:00:19,740
8
00:00:19,740 –> 00:00:22,380
مناطق مختلف که دارای
9
00:00:22,380 –> 00:00:26,070
سطوح خاکستری متفاوتی هستند، بنابراین مطمئناً این
10
00:00:26,070 –> 00:00:27,900
تکنیک تنها در صورتی کار میکند که
11
00:00:27,900 –> 00:00:30,330
بتوانید مناطق مختلف را
12
00:00:30,330 –> 00:00:33,510
بر اساس هیستوگرام فقط بر اساس
13
00:00:33,510 –> 00:00:37,050
سطح خاکستری شناسایی یا تشخیص دهید، فقط اگر مناطق مختلفی دارید
14
00:00:37,050 –> 00:00:39,960
، مثلاً با بافت متفاوت،
15
00:00:39,960 –> 00:00:42,120
اما سطح خاکستری. تقریباً
16
00:00:42,120 –> 00:00:44,340
میانگین شن و سطح خاکستری یکسان است، پس
17
00:00:44,340 –> 00:00:46,770
هیچ راهی وجود ندارد که بتوانید این کار را انجام دهید، در
18
00:00:46,770 –> 00:00:48,379
واقع باید از نوعی
19
00:00:48,379 –> 00:00:51,270
پیش پردازش استفاده کنید.
20
00:00:51,270 –> 00:00:53,670
21
00:00:53,670 –> 00:00:55,949
22
00:00:55,949 –> 00:00:57,870
مناطق قبل از اینکه بتوانید
23
00:00:57,870 –> 00:00:59,840
تقسیم بندی مبتنی بر هیستوگرام را انجام دهید،
24
00:00:59,840 –> 00:01:01,949
گاهی اوقات حتی ممکن است مجبور شوید از
25
00:01:01,949 –> 00:01:05,099
یادگیری ماشینی برای بخش بندی تصاویر خود استفاده کنید،
26
00:01:05,099 –> 00:01:07,560
اما اکثر تصاویر شما میدانید که با
27
00:01:07,560 –> 00:01:09,240
کمی پیش پردازش میتوانید
28
00:01:09,240 –> 00:01:12,390
از تقسیمبندی مبتنی بر هیستوگرام برای
29
00:01:12,390 –> 00:01:14,790
جدا کردن آنها به ویژه تصاویر از
30
00:01:14,790 –> 00:01:17,159
میکروسکوپ الکترونی روبشی برای مثال استفاده کنید،
31
00:01:17,159 –> 00:01:19,470
بنابراین به همین دلیل است که من در واقع
32
00:01:19,470 –> 00:01:22,020
یک تصویر الکترون پراکنده را از
33
00:01:22,020 –> 00:01:24,990
جستجوی گوگل دانلود کردهام و این چیزی است که ما امروز دوباره
34
00:01:24,990 –> 00:01:27,600
برای نشان دادن تقسیمبندی هیستوگرام استفاده میشود،
35
00:01:27,600 –> 00:01:30,930
بنابراین بیایید به این
36
00:01:30,930 –> 00:01:32,640
ایده بپردازیم که من از این
37
00:01:32,640 –> 00:01:35,070
ایده جنگنده که بخشی از توزیع آناکوندا است استفاده میکنم
38
00:01:35,070 –> 00:01:37,770
و باز هم این به این دلیل است که
39
00:01:37,770 –> 00:01:41,189
اکثر کتابخانههای از پیش بستهبندی شده و
40
00:01:41,189 –> 00:01:43,380
تصویری که قرار است استفاده کنم ارائه میشود. در واقع این همان چیزی است که
41
00:01:43,380 –> 00:01:46,560
من از جستجوی گوگل خود دانلود کرده ام و
42
00:01:46,560 –> 00:01:48,750
کمی نویز مصنوعی به آن اضافه کرده ام
43
00:01:48,750 –> 00:01:51,930
بنابراین
44
00:01:51,930 –> 00:01:54,450
کمی چالش برانگیز است و همچنین می خواهم
45
00:01:54,450 –> 00:01:58,369
46
00:01:58,369 –> 00:02:01,860
بحث آموزش های قبلی خود را در مورد حذف نویز با
47
00:02:01,860 –> 00:02:04,950
استفاده واقعی گسترش دهم. آن را در اینجا و سپس و سپس اضافه کردن
48
00:02:04,950 –> 00:02:08,970
بخش بندی مرحله بعدی است، بنابراین
49
00:02:08,970 –> 00:02:11,610
من صفحه را برای تصویر چرخه باز می کنم غیر محلی
50
00:02:11,610 –> 00:02:12,960
به معنای حذف نویز است،
51
00:02:12,960 –> 00:02:15,330
بنابراین تا زمانی که من این را باز کرده ام، اجازه دهید من
52
00:02:15,330 –> 00:02:17,630
بنویسم. d و
53
00:02:17,630 –> 00:02:21,960
کتابخانه ها و توابع مناسبی را کپی و جایگذاری کنید
54
00:02:21,960 –> 00:02:24,570
تا واقعاً معنی غیر محلی را انجام دهم
55
00:02:24,570 –> 00:02:26,970
، u noising اول از همه این
56
00:02:26,970 –> 00:02:28,350
خطی است که در واقع حذف نویز را انجام می دهد،
57
00:02:28,350 –> 00:02:30,390
بنابراین اجازه دهید ادامه دهم و
58
00:02:30,390 –> 00:02:33,930
با آن Okay و Denoise NL شروع کنم. به این معنی
59
00:02:33,930 –> 00:02:37,950
است که بخشی از بازسازی تصویر روانی من کجاست،
60
00:02:37,950 –> 00:02:40,020
بنابراین اجازه دهید ادامه دهم و
61
00:02:40,020 –> 00:02:43,020
کپی کنم و من تخمین سیگما را نیز کپی می کنم
62
00:02:43,020 –> 00:02:48,570
زیرا به نظر می رسد این بخشی
63
00:02:48,570 –> 00:02:50,280
از یکی از پارامترهای ورودی من است که
64
00:02:50,280 –> 00:02:52,800
باید با استفاده از این به دست بیاورم. اختلال عملکرد، بنابراین
65
00:02:52,800 –> 00:02:56,040
اجازه دهید من ادامه دهم و این را کپی کنم و همچنین
66
00:02:56,040 –> 00:03:00,150
این خط را کپی کنیم، جایی که ما تخمین می زنیم Sigma
67
00:03:00,150 –> 00:03:05,760
خوب است و در حالی که در واقع
68
00:03:05,760 –> 00:03:07,830
این را پایین می آوریم در حالی که ما در حال کپی کردن چیزها هستیم،
69
00:03:07,830 –> 00:03:10,020
بیایید ادامه دهیم و این خط دیگری را کپی کنیم
70
00:03:10,020 –> 00:03:13,200
که تصاویر را به شناور تبدیل می کند
71
00:03:13,200 –> 00:03:15,570
زیرا غیر محلی است. یعنی در واقع
72
00:03:15,570 –> 00:03:18,030
روی تصاویر شناور کار می کند در غیر این صورت شما
73
00:03:18,030 –> 00:03:19,920
تمام ریاضیات را
74
00:03:19,920 –> 00:03:21,720
انجام می دهید و اگر با
75
00:03:21,720 –> 00:03:25,650
اعداد صحیحی که می دانید در این مورد کار کنید منطقی نیست، بنابراین اجازه دهید من
76
00:03:25,650 –> 00:03:28,050
ادامه دهم و وارد کنم ما به داده نیاز
77
00:03:28,050 –> 00:03:29,910
نداریم زیرا ما g برای استفاده از
78
00:03:29,910 –> 00:03:33,480
تصاویر خودمان و وارد کردن تصاویر شناور، من همچنین
79
00:03:33,480 –> 00:03:36,270
میخواهم تصویر را هنگام گاز گرفتن وارد کنم،
80
00:03:36,270 –> 00:03:39,240
زیرا پس از انجام همه کارها، میخواهم
81
00:03:39,240 –> 00:03:40,680
تصاویر خود را به
82
00:03:40,680 –> 00:03:43,050
8 بیتی تبدیل کنم و میتوانیم آن را روی رایانههایی باز کنیم که در
83
00:03:43,050 –> 00:03:45,150
واقع میتوانیم نگاه کنیم. در آن و همچنین
84
00:03:45,150 –> 00:03:47,970
محدوده تصاویر 8 بیتی از 0 تا 255 می رود،
85
00:03:47,970 –> 00:03:51,420
بنابراین وقتی آن را بر روی هیستوگرام رسم می کنیم،
86
00:03:51,420 –> 00:03:54,300
محدوده منطقی به نظر می رسد، می دانید که 255
87
00:03:54,300 –> 00:03:56,700
سفید به نظر می رسد صفر سیاه به نظر می رسد بنابراین
88
00:03:56,700 –> 00:03:58,970
با انتظارات ما مطابقت دارد محدوده تصویر آب
89
00:03:58,970 –> 00:04:02,850
باید به شکل زیر باشد. یک هیستوگرام پس
90
00:04:02,850 –> 00:04:04,620
بیایید وارد شویم و یک چیز دیگر که
91
00:04:04,620 –> 00:04:06,840
NP را که numpy است از دست می دهیم، پس بیایید
92
00:04:06,840 –> 00:04:11,370
جلو برویم و import numpy را به عنوان NP اضافه کنیم و
93
00:04:11,370 –> 00:04:13,970
همچنین می خواهیم این را رسم کنیم، بنابراین از
94
00:04:13,970 –> 00:04:20,040
matplotlib import، من به عنوان PMT رسم می کنم، ما
95
00:04:20,040 –> 00:04:22,260
این کار را بارها انجام داده ایم. اکنون می دانیم که چرا
96
00:04:22,260 –> 00:04:24,180
مانند چند کتابخانه می شناسیم که می خواهیم
97
00:04:24,180 –> 00:04:26,280
98
00:04:26,280 –> 00:04:29,490
از همان ابتدا وارد کنیم، بنابراین مرحله اول بیایید ادامه دهیم
99
00:04:29,490 –> 00:04:33,780
و بخوانیم یا تصاویر تا تصویر برابر است
100
00:04:33,780 –> 00:04:36,210
من می خواهم آن را به عنوان شناورهای تصویر بخوانم به
101
00:04:36,210 –> 00:04:41,580
عنوان شناور با Oh dot M خوانده شده و
102
00:04:41,580 –> 00:04:45,030
تصویر ما در تصاویر اسلش است و چیست
103
00:04:45,030 –> 00:04:45,470
104
00:04:45,470 –> 00:04:50,030
BSC Google Noisy نامیده می شود، بنابراین چون زیر خط
105
00:04:50,030 –> 00:04:55,500
گوگل اکنون یا JPEG است و
106
00:04:55,500 –> 00:04:58,980
این تصویری است که ما اکنون از آن استفاده می کنیم،
107
00:04:58,980 –> 00:05:01,770
همانطور که اشاره کردم، بیایید ادامه دهیم و
108
00:05:01,770 –> 00:05:04,290
این تصویر را حذف کنیم و سپس به هیستوگرام نگاه کنیم، در
109
00:05:04,290 –> 00:05:05,610
غیر این صورت
110
00:05:05,610 –> 00:05:07,710
منطقی نیست از
111
00:05:07,710 –> 00:05:10,770
همان ابتدا به هیستوگرام نگاه کنید من از I oh استفاده کردم و می
112
00:05:10,770 –> 00:05:13,080
گوید نام تعریف نشده به این دلیل است که من
113
00:05:13,080 –> 00:05:17,910
IO IO را به تصویر RSK وارد نکرده ام که
114
00:05:17,910 –> 00:05:21,330
باید خوب باشد و نام تصویر ما
115
00:05:21,330 –> 00:05:24,540
نویز نیست، به آن می گویند IMG همان چیزی که
116
00:05:24,540 –> 00:05:28,200
در اینجا نام تصویر ما است. IMG و پچ
117
00:05:28,200 –> 00:05:30,870
kW دو ستاره درست قبل از پچ
118
00:05:30,870 –> 00:05:34,140
kW به این معنی است که ما در حال باز کردن یک فرهنگ لغت
119
00:05:34,140 –> 00:05:37,800
به نام patch underscore kW هستیم و
120
00:05:37,800 –> 00:05:40,140
آن دیکشنری را در اینجا ایجاد نکردهایم،
121
00:05:40,140 –> 00:05:41,520
فکر میکنم آنها این کار را انجام دادند،
122
00:05:41,520 –> 00:05:46,289
بله، این مثال در واقع من
123
00:05:46,289 –> 00:05:47,610
نمیدانم چرا اما آنها این
124
00:05:47,610 –> 00:05:49,320
پچ سایز پچ فاصله و
125
00:05:49,320 –> 00:05:51,450
چند کانال را برابر true به عنوان یک
126
00:05:51,450 –> 00:05:53,760
دیکشنری تعریف کرده اند و سپس در اینجا بسته بندی را باز کرده بیایید
127
00:05:53,760 –> 00:05:56,070
جلوتر برویم و آن را باز کنیم منظورم این است که آن
128
00:05:56,070 –> 00:06:03,240
را در سایز 5 به درستی تعریف کنیم و فاصله برابر با
129
00:06:03,240 –> 00:06:09,680
3 و چند کانال برابر است. 2 بسیار خوب،
130
00:06:09,680 –> 00:06:13,560
مانند زمانی که داشتیم، اکنون فقط باید
131
00:06:13,560 –> 00:06:16,050
به تصویر نگاه کنیم، من معتقدم که
132
00:06:16,050 –> 00:06:18,860
تقریباً همه چیزهایی را که نیاز داریم به جز
133
00:06:18,860 –> 00:06:23,400
نویز نمایش D بازی داریم و بیایید جلوتر برویم
134
00:06:23,400 –> 00:06:26,419
و آن را به رنگ خاکستری ترسیم کنیم تا تصویر
135
00:06:26,419 –> 00:06:27,900
136
00:06:27,900 –> 00:06:35,430
بسیار آشنا به نظر برسد، بنابراین به نظر می رسد. مثل اینکه ما در
137
00:06:35,430 –> 00:06:37,470
اینجا یک اشتباه کردیم که چند کاناله
138
00:06:37,470 –> 00:06:40,120
برابر با درست است، من
139
00:06:40,120 –> 00:06:43,060
حداقل یک اشتباه در هر ویدیو انجام
140
00:06:43,060 –> 00:06:45,610
می دهم، بنابراین این اولین اشتباه من است و بیایید جلوتر برویم و
141
00:06:45,610 –> 00:06:50,500
تصویر را نشان دهیم و باید هر
142
00:06:50,500 –> 00:06:52,930
ثانیه را در حال حاضر و زمانی که تصویر را داریم ببینیم.
143
00:06:52,930 –> 00:06:54,280
بیایید ادامه دهیم و به هیستوگرام نگاه کنیم
144
00:06:54,280 –> 00:06:57,100
و سپس محدوده هایی را برای
145
00:06:57,100 –> 00:07:07,540
تقسیم بندی مبتنی بر هیستوگرام و پوسته نقطه PLT انتخاب
146
00:07:07,540 –> 00:07:17,039
147
00:07:17,900 –> 00:07:20,930
کنیم، بنابراین ما تصویر خود را در اینجا داریم اما یک
148
00:07:20,930 –> 00:07:23,360
کاری که فراموش کردم انجام دهم این است که اگر به این ساعت نگاه کنید،
149
00:07:23,360 –> 00:07:24,710
150
00:07:24,710 –> 00:07:28,280
تصویر زیبا float64 است. شاید بتوانیم
151
00:07:28,280 –> 00:07:30,320
بلافاصله تصویر خود را تبدیل کنیم تا
152
00:07:30,320 –> 00:07:33,050
مجبور نباشیم این کار را انجام دهیم، منظورم این است که مرحله بعدی
153
00:07:33,050 –> 00:07:34,460
نگاه کردن به هیستوگرام و
154
00:07:34,460 –> 00:07:36,500
بخش بندی آن است، بنابراین بیایید ادامه دهیم و
155
00:07:36,500 –> 00:07:38,780
این تصویر را تبدیل کنیم و دوباره آن را
156
00:07:38,780 –> 00:07:44,660
زیر خط نویز می نامم. 8 یا شما
157
00:07:44,660 –> 00:07:46,640
آن را می خرید، بیایید جلو برویم و ج همه این
158
00:07:46,640 –> 00:07:52,700
شما بایت برابر است با تصویر در حالی که گاز می گیرید خوب
159
00:07:52,700 –> 00:07:57,320
و کدام تصویر D نویز خوب است، بنابراین این
160
00:07:57,320 –> 00:08:01,970
در واقع تصویر ما را به بایت شما تبدیل می کند
161
00:08:01,970 –> 00:08:04,610
و اجازه دهید این را یک بار دیگر اجرا
162
00:08:04,610 –> 00:08:06,980
کنیم تا دوبار بررسی کنیم که آیا تصویر ما
163
00:08:06,980 –> 00:08:11,180
واقعاً یک تصویر 8 بیتی با 0 است. تا
164
00:08:11,180 –> 00:08:14,180
محدوده 255 و قدم بعدی همانطور که
165
00:08:14,180 –> 00:08:17,540
ذکر کردم این است که نگاهی به هیستوگرام
166
00:08:17,540 –> 00:08:20,060
برای این کار بیندازید و سپس فقط
167
00:08:20,060 –> 00:08:23,440
محدوده ها را برای هر بخش
168
00:08:34,960 –> 00:08:39,219
ah تعریف کنید، بنابراین دلیل اینکه
169
00:08:39,219 –> 00:08:41,260
احتمالاً این مدت طول می کشد من فکر می کردم
170
00:08:41,260 –> 00:08:43,750
که در رایانه من چه خبر است. حالت سریع
171
00:08:43,750 –> 00:08:45,820
برابر با نادرست است،
172
00:08:45,820 –> 00:08:47,950
اجازه دهید آن را به درست تبدیل کنیم و ببینیم چه
173
00:08:47,950 –> 00:08:50,140
اتفاقی میافتد، بنابراین من فقط آن را به true تغییر دادم
174
00:08:50,140 –> 00:08:51,850
و امیدوارم اکنون باید سریعتر
175
00:08:51,850 –> 00:08:54,430
باشد و کیفیت تصویر
176
00:08:54,430 –> 00:08:56,800
بسیار سریعتر است، شما میدانید که تقریباً
177
00:08:56,800 –> 00:08:59,200
آنی است، بنابراین این چرا و
178
00:08:59,200 –> 00:09:00,670
کیفیت M تفاوت در
179
00:09:00,670 –> 00:09:04,120
کیفیت تصویر است، من آن را زیاد نمی بینم، بنابراین
180
00:09:04,120 –> 00:09:05,680
من فقط می خواهم حالت سریع را به واقعی تغییر دهم با عرض
181
00:09:05,680 –> 00:09:06,399
182
00:09:06,399 –> 00:09:08,290
پوزش بابت تاخیر در آنجا که
183
00:09:08,290 –> 00:09:10,990
به معنای واقعی کلمه دو دقیقه بود که از دست دادیم،
184
00:09:10,990 –> 00:09:14,830
اما حداقل ما لی چیزی در آنجا
185
00:09:14,830 –> 00:09:17,410
به دست آوردیم بنابراین به هر حال ما تصویر نویز D خود را داریم حالا
186
00:09:17,410 –> 00:09:18,880
بیایید جلو برویم و به هیستوگرام نگاه
187
00:09:18,880 –> 00:09:21,550
کنیم و اتفاقاً تصویر زیبای D که گاز
188
00:09:21,550 –> 00:09:26,860
میگیرید 8 بیتی است، بنابراین ما همه چیز درست هستیم،
189
00:09:26,860 –> 00:09:29,230
بنابراین هیستوگرام از 0 به 255 میرود.
190
00:09:29,230 –> 00:09:31,540
بنابراین وقتی می خواهم PLT را انجام دهم،
191
00:09:31,540 –> 00:09:37,050
نقطه H T است که چیزی جز هیستوگرام ما نیست،
192
00:09:37,050 –> 00:09:41,350
من فقط می توانم نویز D را انجام دهم، می دانید
193
00:09:41,350 –> 00:09:46,450
که زیر خط شما گاز می خورید و این
194
00:09:46,450 –> 00:09:49,240
تصویری است که ما به آن نگاه می کنیم، اما بعد
195
00:09:49,240 –> 00:09:53,230
نقطه مسطح و نقطه مسطح در واقع
196
00:09:53,230 –> 00:09:56,140
آرایه 2 بعدی را به یک بعد مسطح می کند زیرا
197
00:09:56,140 –> 00:09:58,360
برای هیستوگرام من فقط به یک
198
00:09:58,360 –> 00:10:00,700
لیست فقط یک بعدی از اعداد نیاز دارم، بله، بنابراین
199
00:10:00,700 –> 00:10:02,589
این همان کاری است که نقطه مسطح در اینجا انجام می دهد
200
00:10:02,589 –> 00:10:05,709
و زمانی که ما این را داشته باشیم، می
201
00:10:05,709 –> 00:10:08,110
توانیم تعداد سطل ها را تعریف کنیم. ما این دوباره است من فکر می
202
00:10:08,110 –> 00:10:10,360
کنم اختیاری است و همچنین می
203
00:10:10,360 –> 00:10:13,360
توانیم محدوده را برابر تعریف کنیم که از 0 تا
204
00:10:13,360 –> 00:10:20,920
255 برویم و بیایید این تصویر را رسم کنیم و
205
00:10:20,920 –> 00:10:22,420
باید خوب ببینیم باید یک
206
00:10:22,420 –> 00:10:26,230
هیستوگرام ببینیم خوب که بد نیست یک قله
207
00:10:26,230 –> 00:10:29,560
به این دو قله بسیار است سه
208
00:10:29,560 –> 00:10:32,260
و چهار را ببندید، بنابراین اجازه دهید من در واقع این از آن خارج می شود
209
00:10:32,260 –> 00:10:35,020
از صفر به پس اجازه دهید در واقع
210
00:10:35,020 –> 00:10:40,570
این محدوده را به 75 تغییر دهم یا 80 را انجام دهیم،
211
00:10:40,570 –> 00:10:43,480
بنابراین می توانیم فقط در این منطقه بزرگنمایی
212
00:10:43,480 –> 00:10:47,320
کنیم و مقدار دره را برای
213
00:10:47,320 –> 00:10:47,870
آن
214
00:10:47,870 –> 00:10:50,690
دره در آنجا شناسایی کنیم تا بتوانیم از آن استفاده کنیم،
215
00:10:50,690 –> 00:10:54,170
بنابراین چیزی نیست جز فرض کنید 55 زنبور
216
00:10:54,170 –> 00:10:56,390
در آنجا جداسازی اتفاق میافتد، بنابراین
217
00:10:56,390 –> 00:10:59,120
بیایید ادامه دهیم و بخشهای مختلف خود را تعریف کنیم،
218
00:10:59,120 –> 00:11:00,830
این است که شما بسیار
219
00:11:00,830 –> 00:11:04,570
به بخشبندی نزدیک میشوید، بخش 1 مساوی است،
220
00:11:04,570 –> 00:11:08,380
ما باید نویز D خود را مشخص کنیم
221
00:11:08,380 –> 00:11:14,300
که شما بایت خوب است و کمتر از
222
00:11:14,300 –> 00:11:19,550
یا مساوی مقدار 55 است. بخش
223
00:11:19,550 –> 00:11:21,500
1 چیز