در این مطلب، ویدئو نکات ترفند 14 – EasyOCR برای تشخیص متن در تصاویر (با استفاده از پایتون) با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:11:58
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,719 –> 00:00:03,280
سلام بچه ها من فقط با یک کتابخانه بسیار زیبا
2
00:00:03,280 –> 00:00:05,600
برای ocr برخورد کردم، بنابراین اگر
3
00:00:05,600 –> 00:00:07,520
به استخراج متن
4
00:00:07,520 –> 00:00:10,080
از تصاویر علاقه مند هستید، ممکن است بخواهید
5
00:00:10,080 –> 00:00:10,880
این
6
00:00:10,880 –> 00:00:13,599
کتابخانه آسان ocr را امتحان کنید، نصب بسیار
7
00:00:13,599 –> 00:00:15,519
آسان است، من به شما نشان خواهم داد که دستور pip
8
00:00:15,519 –> 00:00:16,480
در یک دقیقه
9
00:00:16,480 –> 00:00:19,039
و ظاهراً از صفحه git آنها
10
00:00:19,039 –> 00:00:21,920
می تواند با 80 زبان بعلاوه کار کند و من
11
00:00:21,920 –> 00:00:22,400
فقط
12
00:00:22,400 –> 00:00:24,880
سه زبان را می خوانم و می نویسم شاید چهار زبان
13
00:00:24,880 –> 00:00:25,519
14
00:00:25,519 –> 00:00:27,039
اما این را روی سه زبان مختلف تست کرده ام
15
00:00:27,039 –> 00:00:28,960
و به نظر می رسد که
16
00:00:28,960 –> 00:00:30,960
بسیار خوب کار می کند به خصوص در مقایسه با سایر
17
00:00:30,960 –> 00:00:32,238
ocr که در آن
18
00:00:32,238 –> 00:00:34,160
تست کرده ام. گذشته پس بیایید
19
00:00:34,160 –> 00:00:35,840
وارد کد شویم تا بتوانم به شما نشان دهم
20
00:00:35,840 –> 00:00:37,920
چگونه می توانید به سرعت چند
21
00:00:37,920 –> 00:00:38,879
خط کد را
22
00:00:38,879 –> 00:00:42,000
برای استخراج متن و همچنین نمایش
23
00:00:42,000 –> 00:00:42,879
متن روی
24
00:00:42,879 –> 00:00:46,239
تصاویر کنار هم قرار دهید.
25
00:00:46,239 –> 00:00:49,280
26
00:00:49,280 –> 00:00:52,320
easy ocr و به نظر من خیلی خوب کار می کرد،
27
00:00:52,320 –> 00:00:53,280
28
00:00:53,280 –> 00:00:56,320
ظاهراً اگر می خواهید
29
00:00:56,320 –> 00:00:58,559
از gpu استفاده کنید از آن استفاده می کند، البته این می تواند
30
00:00:58,559 –> 00:01:01,199
با cpu کار کند و اگر می
31
00:01:01,199 –> 00:01:02,239
خواهید از
32
00:01:02,239 –> 00:01:05,680
یک gpu استفاده کنید، باید
33
00:01:05,680 –> 00:01:07,840
مشعل pi را در قسمت پشتی نصب کنید
34
00:01:07,840 –> 00:01:09,200
زیرا ظاهر می شود این همان چیزی است که در
35
00:01:09,200 –> 00:01:10,320
واقع از آن استفاده می کند
36
00:01:10,320 –> 00:01:13,600
و اگر مشعل pi شما
37
00:01:13,600 –> 00:01:15,759
برای استفاده از gpu تنظیم شده است، از آن
38
00:01:15,759 –> 00:01:16,640
استفاده
39
00:01:16,640 –> 00:01:18,640
می کند و
40
00:01:18,640 –> 00:01:20,320
اگر جزئیات بیشتری می خواهید به مستندات اینجا نگاه کنید، اما من
41
00:01:20,320 –> 00:01:21,439
فقط عملکرد اصلی را به شما نشان خواهم داد.
42
00:01:21,439 –> 00:01:23,759
و اگر واقعاً
43
00:01:23,759 –> 00:01:26,000
آن را دوست دارید ادامه دهید و آن را بیشتر حفاری کنید،
44
00:01:26,000 –> 00:01:28,080
بنابراین اول از همه پس از نصب
45
00:01:28,080 –> 00:01:29,360
این روش می توانید
46
00:01:29,360 –> 00:01:31,759
این را وارد کنید، بیایید جلوتر برویم و
47
00:01:31,759 –> 00:01:33,920
کمی بزرگنمایی کنیم تا بتوانید
48
00:01:33,920 –> 00:01:36,560
در حین تماشای ویدیو به آسانی این کار را بخوانید.
49
00:01:36,560 –> 00:01:37,360
50
00:01:37,360 –> 00:01:40,799
به عنوان import easy
51
00:01:40,799 –> 00:01:43,360
ocr و سپس اجازه دهید opencv را وارد کنیم تا
52
00:01:43,360 –> 00:01:44,240
53
00:01:44,240 –> 00:01:46,159
بتوانیم تصاویر خود را بخوانیم و متن را روی این
54
00:01:46,159 –> 00:01:47,360
تصاویر نمایش دهیم، بنابراین من
55
00:01:47,360 –> 00:01:49,439
کتابخانه opencv را دوست دارم برای این
56
00:01:49,439 –> 00:01:50,479
منظور
57
00:01:50,479 –> 00:01:52,320
من متن زیادی اضافه می کنم در صورتی که
58
00:01:52,320 –> 00:01:53,600
می خواهید
59
00:01:53,600 –> 00:01:55,119
بروید از طریق این، من این کد را
60
00:01:55,119 –> 00:01:57,360
با شما به اشتراک میگذارم.
61
00:01:57,360 –> 00:01:59,200
نکته مهمی که در اینجا میخواهم به آن اشاره کنم
62
00:01:59,200 –> 00:02:01,360
این است که میتوانید زبانهای مختلف را با هم ترکیب
63
00:02:01,360 –> 00:02:02,960
کنید و در واقع میتوانید
64
00:02:02,960 –> 00:02:06,159
با تعریف زبانهایی که میخواهید شامل آنها شود، یک شی خواننده تنظیم
65
00:02:06,159 –> 00:02:08,160
کنید، اما
66
00:02:08,160 –> 00:02:10,318
برخی از زبانها سازگار نیستند.
67
00:02:10,318 –> 00:02:12,319
ظاهرا en گلیش با
68
00:02:12,319 –> 00:02:13,760
چند زبان دیگر سازگار است
69
00:02:13,760 –> 00:02:15,440
اما در این مثال من سعی می کنم
70
00:02:15,440 –> 00:02:17,120
71
00:02:17,120 –> 00:02:18,640
تلوگو هندی را که زبان مادری من است و
72
00:02:18,640 –> 00:02:20,800
انگلیسی همه اینها را با هم ترکیب کنم
73
00:02:20,800 –> 00:02:23,040
و اگر سعی کنید این کار را انجام دهید به شما خطایی می دهد و می
74
00:02:23,040 –> 00:02:24,879
گوید هی
75
00:02:24,879 –> 00:02:27,200
اوه تلوگو فقط سازگار است. با
76
00:02:27,200 –> 00:02:29,120
زبان انگلیسی با هندی سازگار نیست
77
00:02:29,120 –> 00:02:31,360
ظاهراً وجود ندارد نمی دانم چرا
78
00:02:31,360 –> 00:02:32,640
اما به هر
79
00:02:32,640 –> 00:02:34,319
حال فقط با انگلیسی سازگار است بنابراین می
80
00:02:34,319 –> 00:02:36,080
توانید انگلیسی تلوگو یا انگلیسی هندی را قرار دهید
81
00:02:36,080 –> 00:02:37,760
اما نمی توانید این سه مورد را کنار
82
00:02:37,760 –> 00:02:38,959
هم قرار دهید این تنها
83
00:02:38,959 –> 00:02:41,680
چیزی است که حداقل یک چیز است که من با
84
00:02:41,680 –> 00:02:42,720
تلاش برای اجرای این
85
00:02:42,720 –> 00:02:45,599
روی چند تصویر به خصوص
86
00:02:45,599 –> 00:02:47,360
بیلبوردهای حیدرآباد پیدا شده است، جایی که شما
87
00:02:47,360 –> 00:02:49,840
مانند تلوگوی هندی و انگلیسی را
88
00:02:49,840 –> 00:02:52,640
به عنوان زبان های اصلی دارید، به
89
00:02:52,640 –> 00:02:53,920
همین دلیل است که این را آزمایش
90
00:02:53,920 –> 00:02:57,519
کردم، اما روی بسیاری از موارد دیگر مانند
91
00:02:57,519 –> 00:02:59,440
چینی به علاوه انگلیسی کار می
92
00:02:59,440 –> 00:03:00,159
کند.
93
00:03:00,159 –> 00:03:01,920
در وب سایت آنها فکر می کنم در صفحه github
94
00:03:01,920 –> 00:03:04,319
آنها برخی از این نمونه ها را دارند.
95
00:03:04,319 –> 00:03:07,040
اجازه دهید به شما نشان دهم چگونه می توانید از
96
00:03:07,040 –> 00:03:07,440
آن
97
00:03:07,440 –> 00:03:10,000
برای برخی از بیلبوردهایی که
98
00:03:10,000 –> 00:03:10,640
دانلود
99
00:03:10,640 –> 00:03:13,280
کردم استفاده کنید. جستجوی گوگل مانند
100
00:03:13,280 –> 00:03:14,000
101
00:03:14,000 –> 00:03:16,080
ایستگاه راه آهن پون که هندی و
102
00:03:16,080 –> 00:03:17,200
انگلیسی دارد دانلود شده است،
103
00:03:17,200 –> 00:03:19,040
من متوجه نشدم که
104
00:03:19,040 –> 00:03:21,920
پیدا کردن بیلبوردها یا تصاویری که
105
00:03:21,920 –> 00:03:24,400
در پایان انگلیسی دارای متن به هر دو زبان هستند چقدر دشوار است،
106
00:03:24,400 –> 00:03:26,000
اما به هر حال من تعدادی از
107
00:03:26,000 –> 00:03:26,480
اینها را پیدا کردم،
108
00:03:26,480 –> 00:03:28,959
پس بیایید ادامه دهیم و آن را تست کنید، بنابراین قبل
109
00:03:28,959 –> 00:03:30,879
از هر چیز باید خواننده خود را
110
00:03:30,879 –> 00:03:34,319
با استفاده از چه easyocr.reader راه اندازی کنید و این
111
00:03:34,319 –> 00:03:36,239
تعریف می کند که در اینجا می توانید تعریف کنید چه
112
00:03:36,239 –> 00:03:39,360
زبان هایی و دوباره gpu برابر با true است
113
00:03:39,360 –> 00:03:42,239
فقط در صورتی کار می کند که شما gpu داشته
114
00:03:42,239 –> 00:03:42,959
115
00:03:42,959 –> 00:03:45,599
باشید. با gpu نصب شده است که اشکالی
116
00:03:45,599 –> 00:03:46,480
ندارد حالا بیایید
117
00:03:46,480 –> 00:03:49,760
118
00:03:49,760 –> 00:03:51,440
هندی را به انگلیسی تعریف کنیم و اگر
119
00:03:51,440 –> 00:03:54,080
برای اولین بار این را اجرا کنید
120
00:03:54,080 –> 00:03:56,879
این خوانندگان را می شناسید اما اگر
121
00:03:56,879 –> 00:03:57,920
122
00:03:57,920 –> 00:03:59,519
دفعات بعدی باشد پس بدیهی است که شما
123
00:03:59,519 –> 00:04:01,280
قبلاً آن را دارید بله، بنابراین من فقط در حال استفاده از آن هستم.
124
00:04:01,280 –> 00:04:03,120
خواننده همانجاست و
125
00:04:03,120 –> 00:04:04,080
تنها کاری که اکنون باید انجام دهم این
126
00:04:04,080 –> 00:04:06,480
است که آن خواننده را روی یک تصویر خاص اعمال کنم، به
127
00:04:06,480 –> 00:04:08,480
این معنی که باید تصویر خود را بارگذاری کنیم،
128
00:04:08,480 –> 00:04:08,959
129
00:04:08,959 –> 00:04:11,360
پس بیایید جلو برویم و تصویر خود را بارگذاری کنیم اوه
130
00:04:11,360 –> 00:04:12,400
131
00:04:12,400 –> 00:04:14,400
بیایید بارگذاری کنیم، این را بارگذاری نکنیم، در واقع
132
00:04:14,400 –> 00:04:15,680
بارگذاری کنیم چیزی که هم
133
00:04:15,680 –> 00:04:18,238
انگلیسی و هم هندی دارد، پس بیایید
134
00:04:18,238 –> 00:04:19,918
از بیلبورد بانک دولتی هند استفاده کنیم
135
00:04:19,918 –> 00:04:22,400
معمولاً منظورم این است که هم متن هندی و هم
136
00:04:22,400 –> 00:04:23,280
انگلیسی دارد،
137
00:04:23,280 –> 00:04:25,919
پس بیایید ادامه دهیم و آن را بخوانیم و
138
00:04:25,919 –> 00:04:27,280
اتفاقاً من تصویری را انتخاب کردم که به
139
00:04:27,280 –> 00:04:31,120
نوعی ناموفق است، زیرا چیزهای عجیبی دارد.
140
00:04:31,120 –> 00:04:31,840
فونت
141
00:04:31,840 –> 00:04:34,000
را می بینیم که در یک ثانیه خوب است، بنابراین
142
00:04:34,000 –> 00:04:35,600
ما آن تصویر را دریافت کردیم و چگونه می
143
00:04:35,600 –> 00:04:38,080
توانید ocr خود را اعمال کنید. چگونه می توانید
144
00:04:38,080 –> 00:04:39,840
متنی
145
00:04:39,840 –> 00:04:43,280
را که خواننده آن است استخراج کنید، وقتی شیء خواننده خود را تعریف کردیم،
146
00:04:43,280 –> 00:04:45,280
نقطه خواننده آن متن را درست می خواند، بنابراین
147
00:04:45,280 –> 00:04:46,800
این چیزی است که ما در تلاشیم
148
00:04:46,800 –> 00:04:49,520
روی چیزی که روی تصویر و جزئیات ما برابر است
149
00:04:49,520 –> 00:04:50,080
با یک انجام دهیم،
150
00:04:50,080 –> 00:04:53,280
یعنی قرار است جزئیات را برگرداند.
151
00:04:53,280 –> 00:04:55,680
منظور ما از جزئیات چیست، همچنین
152
00:04:55,680 –> 00:04:57,600
مکان کادرهای محدود کننده
153
00:04:57,600 –> 00:04:59,840
یک جزئیات است، بنابراین آن را برمی گرداند
154
00:04:59,840 –> 00:05:01,919
و پاراگراف برابر با false
155
00:05:01,919 –> 00:05:03,360
به معنای بازگشت است. هر
156
00:05:03,360 –> 00:05:05,600
حرف جداگانه آن کلمه متأسفانه که
157
00:05:05,600 –> 00:05:06,639
به طور جداگانه شناسایی شده است
158
00:05:06,639 –> 00:05:09,360
،
159
00:05:09,360 –> 00:05:11,120
نمونه ای از پاراگراف برابر با true را به
160
00:05:11,120 –> 00:05:12,000
161
00:05:12,000 –> 00:05:14,240
شما نشان می دهیم که می تواند بسیار مفید باشد اگر می خواهید
162
00:05:14,240 –> 00:05:16,240
یک جمله طولانی بزرگ را
163
00:05:16,240 –> 00:05:19,440
در یک لیست واحد ثبت کنید.
164
00:05:19,440 –> 00:05:20,880
اول از همه بیایید ادامه دهیم و
165
00:05:20,880 –> 00:05:23,199
این را اجرا کنیم و ببینیم که چه چیزی
166
00:05:23,199 –> 00:05:25,280
به عنوان یک خروجی به دست می آوریم خوب است و دوباره این در
167
00:05:25,280 –> 00:05:27,440
حال حاضر از cpu استفاده می کند بنابراین کمی کند است
168
00:05:27,440 –> 00:05:28,160
اما اگر
169
00:05:28,160 –> 00:05:30,720
همانطور که می توانید تصور کنید از gpu استفاده می کنید می تواند
170
00:05:30,720 –> 00:05:31,440
171
00:05:31,440 –> 00:05:33,919
بسیار سریع باشد خیلی خوب است. در اینجا نتایج است،
172
00:05:33,919 –> 00:05:34,880
اجازه دهید
173
00:05:34,880 –> 00:05:38,080
نتایج را همانجا باز کنیم و ما چهار
174
00:05:38,080 –> 00:05:39,360
نتیجه داریم که
175
00:05:39,360 –> 00:05:41,280
چهار عنصر متنی مختلف از این پیدا کرده است،
176
00:05:41,280 –> 00:05:43,039
بنابراین بیایید این تصویر را باز کنیم،
177
00:05:43,039 –> 00:05:44,960
بنابراین فقط برای درک سریع،
178
00:05:44,960 –> 00:05:47,600
بنابراین احتمالاً
179
00:05:47,600 –> 00:05:50,479
این و این را به عنوان چهار چیز مختلف تشخیص داده
180
00:05:50,479 –> 00:05:52,080
است. این حدس من است که ما
181
00:05:52,080 –> 00:05:54,400
آن را در یک ثانیه نمایش خواهیم داد و سپس متوجه
182
00:05:54,400 –> 00:05:57,120
می شویم که آیا این درست است، بنابراین این چهار مورد
183
00:05:57,120 –> 00:05:57,840
دقیقاً در آنجا
184
00:05:57,840 –> 00:06:01,840
چیست، بنابراین یکی شناسایی می شود، اینجا می بینید
185
00:06:01,840 –> 00:06:04,560
که بیایید تاپل را باز کنیم و حاوی
186
00:06:04,560 –> 00:06:06,560
همان چیزی است که گفتم زیرا ما جزئیات را برابر
187
00:06:06,560 –> 00:06:0