در این مطلب، ویدئو گورخرها و لیزرها – دوره خرابی بارکد با پایتون | Jonas Neubert @ PyBay2018 با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:32:29
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:02,530 –> 00:00:10,160
[موسیقی]
2
00:00:10,160 –> 00:00:14,490
بسیار خوب از مقدمه تشکر می کنم، بنابراین این
3
00:00:14,490 –> 00:00:16,260
سخنرانی به عنوان سرگرم کننده شناخته می شود و افراد حاضر در
4
00:00:16,260 –> 00:00:20,330
برنامه در مورد آن خواهیم دید که
5
00:00:20,449 –> 00:00:23,250
فقط به طور خلاصه تدارکات
6
00:00:23,250 –> 00:00:25,920
را می بینیم نام من جوناس
7
00:00:25,920 –> 00:00:27,420
8
00:00:27,420 –> 00:00:29,070
است. قبلاً او همکار من است و
9
00:00:29,070 –> 00:00:30,330
در مورد کالاهای SCI به شما توضیح داد.
10
00:00:30,330 –> 00:00:32,189
من در تیم اتوماسیون آنجا هستم.
11
00:00:32,189 –> 00:00:35,100
نرم افزاری را برای ربات می نویسم که
12
00:00:35,100 –> 00:00:36,840
برخی از آنها اسلایدها فوق العاده پر می شوند و
13
00:00:36,840 –> 00:00:38,129
این به این دلیل است که می خواهم آنها به
14
00:00:38,129 –> 00:00:40,620
عنوان ماده مرجع نیز مفید باشند.
15
00:00:40,620 –> 00:00:42,750
نشانی اینترنتی است که اگر تایپ کردن آن زیاد است، می توانید آنها را پیدا کنید،
16
00:00:42,750 –> 00:00:44,789
فقط به توییتر من بروید
17
00:00:44,789 –> 00:00:47,760
و توییت پین تویید a است، همچنین یک
18
00:00:47,760 –> 00:00:50,760
پیوند است و برای
19
00:00:50,760 –> 00:00:52,680
دنبال کردن یا بررسی آن بعدا مفید است،
20
00:00:52,680 –> 00:00:56,100
اما در این بحث چهار بخش است. اولین مورد،
21
00:00:56,100 –> 00:00:58,140
اگر در آن مهمانی تعطیلات بودهاید،
22
00:00:58,140 –> 00:00:59,820
قبلاً مشاهده کردهاید که
23
00:00:59,820 –> 00:01:02,149
دوباره صحبتهای رعد و برق را انجام دادهاید، این یک بارکد نمایشی سریع
24
00:01:02,149 –> 00:01:05,519
از اصول اول است، اگر
25
00:01:05,519 –> 00:01:07,590
این دومین بار است که آن را میبینید، میدانید که
26
00:01:07,590 –> 00:01:09,180
خبر خوب این است که این یک بحث رعد و برق است.
27
00:01:09,180 –> 00:01:10,650
یک n سریع ap من شما را برای بخش دوم از خواب بیدار خواهم کرد،
28
00:01:10,650 –> 00:01:13,740
بخش دوم نظریه بارکد است، بنابراین
29
00:01:13,740 –> 00:01:16,110
فقط کمی شبیه به اصول اولیه
30
00:01:16,110 –> 00:01:17,759
نحوه کارکرد بارکدها در واقع تمام
31
00:01:17,759 –> 00:01:19,920
اصطلاحات و مواردی است که باید در
32
00:01:19,920 –> 00:01:21,810
مورد استفاده از بارکد و پایتون صحبت کنیم و سپس
33
00:01:21,810 –> 00:01:23,939
در نهایت من امیدوارم زمان کافی برای
34
00:01:23,939 –> 00:01:25,650
آن باقی مانده باشد، میخواهم به شما چند ترفند
35
00:01:25,650 –> 00:01:27,210
و نوعی شبیه
36
00:01:27,210 –> 00:01:29,579
به هک استفاده از بارکد در دنیای واقعی
37
00:01:29,579 –> 00:01:31,890
و همچنین نحوه استفاده نکردن از بارکد
38
00:01:31,890 –> 00:01:34,500
در دنیای واقعی را به شما نشان دهم، اما اجازه دهید با
39
00:01:34,500 –> 00:01:38,159
این شروع کنیم. بخش اول این است که آن
40
00:01:38,159 –> 00:01:40,950
سخنرانی برق آسا که در مقدمه ذکر شد،
41
00:01:40,950 –> 00:01:44,430
نه آن یکی، اساساً
42
00:01:44,430 –> 00:01:47,369
آخرین بار این کار را با گفتن
43
00:01:47,369 –> 00:01:49,350
آه، من از پایتون برای نوشتن نرمافزار برای ماشینهایی استفاده میکنم
44
00:01:49,350 –> 00:01:50,549
که با دنیای واقعی تعامل دارند
45
00:01:50,549 –> 00:01:52,920
و بدیهی است که وقتی این کار را انجام میدهید، شروع کردم.
46
00:01:52,920 –> 00:01:55,409
خیلی سریع متوجه میشوید که نرمافزار شما
47
00:01:55,409 –> 00:01:57,030
در سرور گیر کرده است، مانند این
48
00:01:57,030 –> 00:01:59,759
جعبه است و واقعاً نمیتواند در مورد
49
00:01:59,759 –> 00:02:01,649
اشیا و مکانها در دنیای واقعی
50
00:02:01,649 –> 00:02:03,689
استدلال کند و این مشکل جدیدی نیست مهندسان
51
00:02:03,689 –> 00:02:04,920
من مدت زیادی است
52
00:02:04,920 –> 00:02:06,420
که با آن روبرو بودهام، بنابراین ما بررسی کردیم. دنیای واقعی را با همه
53
00:02:06,420 –> 00:02:09,090
این تگهای کوچک میچرخانید
54
00:02:09,090 –> 00:02:10,800
تا شناسایی شی برای نرمافزار آسانتر شود، بنابراین شما
55
00:02:10,800 –> 00:02:12,540
یک کارت اعتباری حمل
56
00:02:12,540 –> 00:02:13,710
میکنید. وقتی آن را تند بکشید،
57
00:02:13,710 –> 00:02:15,990
از یک جسم فیزیکی به ولتاژ
58
00:02:15,990 –> 00:02:18,120
به بیتها میروید تا ببینید چه کسی هستید.
59
00:02:18,120 –> 00:02:20,550
پایگاه داده در یک بانک به طور مشابه ماشین شما
60
00:02:20,550 –> 00:02:22,590
دارای یک چیز سریع است، یک فرکانس رادیویی است
61
00:02:22,590 –> 00:02:24,150
که شما را از طریق
62
00:02:24,150 –> 00:02:26,880
Tollbooth شناسایی می کند و به بیت هایی تبدیل می شود که می
63
00:02:26,880 –> 00:02:28,170
توانند شما را در پایگاه داده جستجو کنند و از شما شارژ کنند
64
00:02:28,170 –> 00:02:31,290
گربه شما دارای ریزتراشه است تا
65
00:02:31,290 –> 00:02:33,060
دامپزشک بتواند آنها را اسکن کنید و یک شناسه دریافت کنید و
66
00:02:33,060 –> 00:02:34,770
دوباره شما را جستجو کنند و آنها
67
00:02:34,770 –> 00:02:36,630
را در پایگاه داده جستجو کنند که می توانند آنها را
68
00:02:36,630 –> 00:02:37,140
به خانه برگردانند.
69
00:02:37,140 –> 00:02:41,450
ابزار انتخابی
70
00:02:41,450 –> 00:02:43,770
برای شناسایی اشیاء و
71
00:02:43,770 –> 00:02:46,110
قابل ردیابی کردن آنها بارکدی
72
00:02:46,110 –> 00:02:47,760
است این کار را اینجا انجام دهید، جایی که من
73
00:02:47,760 –> 00:02:49,110
می گویم این گورخر است و این یک
74
00:02:49,110 –> 00:02:51,210
لیزر است و این نوع ترفند این است که من
75
00:02:51,210 –> 00:02:53,070
تایپ می کنم در حالی که دارم انجام می دهم این کار به نوعی
76
00:02:53,070 –> 00:02:57,060
دشوار است، پس فقط تصور کنید
77
00:02:57,060 –> 00:02:58,290
بارکد خوان در حال انجام این کار است.
78
00:02:58,290 –> 00:03:00,120
می بینید خطوط لیزر را کاهش دهید و اگر
79
00:03:00,120 –> 00:03:02,100
زمان را کاهش دهید، فقط یک
80
00:03:02,100 –> 00:03:03,990
نقطه از حرکت لیزر را می بینید و
81
00:03:03,990 –> 00:03:06,750
هر جا که لیزر را سفید می کند، در
82
00:03:06,750 –> 00:03:08,610
حال جمع آوری داده های خود هستید و
83
00:03:08,610 –> 00:03:11,070
پیکسل های سفید را ضبط می کند و
84
00:03:11,070 –> 00:03:13,740
البته مهم است که به راه خود ادامه دهیم
85
00:03:13,740 –> 00:03:15,560
. سیاه است و سپس
86
00:03:15,560 –> 00:03:18,600
پیکسلهای سیاه را ضبط میکنیم و سپس به شکلی
87
00:03:18,600 –> 00:03:21,030
جادویی ادامه مییابد همانطور که
88
00:03:21,030 –> 00:03:23,340
بقیه بارکد را به درستی اسکن میکنید، این مرحله اول
89
00:03:23,340 –> 00:03:27,980
خواندن اطلاعات بارکد است، اکنون
90
00:03:27,980 –> 00:03:29,940
آن را وارد میکنیم و میبینیم که
91
00:03:29,940 –> 00:03:31,410
دادههایمان را داریم جالب است اما
92
00:03:31,410 –> 00:03:32,850
مقداری نویز وجود دارد و
93
00:03:32,850 –> 00:03:34,590
چیزی شبیه به این صفر در اینجا وجود دارد که احتمالاً یک
94
00:03:34,590 –> 00:03:36,030
مصنوع عجیب از خواندن دادههایی است
95
00:03:36,030 –> 00:03:37,770
که واقعاً وجود ندارند، بنابراین ما باید
96
00:03:37,770 –> 00:03:39,750
کمی پردازش تصویر انجام دهیم تا اکثر مردم
97
00:03:39,750 –> 00:03:41,400
وقتی پردازش تصویر را میشنوند
98
00:03:41,400 –> 00:03:44,310
مانند OpenCV هستند که من تصویر را میشنوم. پردازش من
99
00:03:44,310 –> 00:03:48,270
می گویم درک لیست را به این دلیل که
100
00:03:48,270 –> 00:03:50,670
اساساً پردازش تصویر این است که
101
00:03:50,670 –> 00:03:53,210
شما این توابع به نام کرنل
102
00:03:53,210 –> 00:03:55,890
را می نویسید که تعداد کمی از پیکسل ها را
103
00:03:55,890 –> 00:03:58,290
می گیرد که در مورد ما ممکن است مانند سه پیکسل باشد.
104
00:03:58,290 –> 00:04:00,690
الگوریتم بسیار ساده ای را در
105
00:04:00,690 –> 00:04:03,030
مورد ما ایجاد کنیم، ما می خواهیم بررسی کنیم که آیا دو
106
00:04:03,030 –> 00:04:04,520
پیکسل بیرونی مجموعه سه
107
00:04:04,520 –> 00:04:06,540
یکسان هستند یا خیر و می دانید که یکی نیست و اگر
108
00:04:06,540 –> 00:04:08,130
اینطور است آن را صاف کنیم، بنابراین ما
109
00:04:08,130 –> 00:04:09,840
تابع هسته را نوشتیم اکنون به آن پنجره هایی نیاز داریم
110
00:04:09,840 –> 00:04:11,310
که هستههایی که
111
00:04:11,310 –> 00:04:12,810
در واقع روی دادههایمان اجرا میشوند، مانند یک پنجره کشویی
112
00:04:12,810 –> 00:04:15,870
روی دادههایمان میخواهیم، روشی که ما انجام میدهیم این است که
113
00:04:15,870 –> 00:04:17,970
شکارا دوباره سه پی
114
00:04:17,970 –> 00:04:19,350
سل در پنجره خود میخواهیم، زیرا این همان چیزی است که هسته م
115
00:04:19,350 –> 00:04:22,770
انتظار دارد و شما آن را از سه
116
00:04:22,770 –> 00:04:25,500
سخه مجزا از دادههای ما دریافت میکن
117
00:04:25,500 –> 00:04:27,250
118
00:04:27,250 –> 00:04:31,390
د. هر بار دقیقاً با یک پیکسل جابهجا میشویم و به این
119
00:04:31,390 –> 00:04:33,130
ترتیب پنجره کشویی را دریافت میکنیم و به
120
00:04:33,130 –> 00:04:35,830
نظر میرسد که
121
00:04:35,830 –> 00:04:37,900
من چه اشتباهی انجام دادهام.
122
00:04:37,900 –> 00:04:41,950
123
00:04:41,950 –> 00:04:43,480
124
00:04:43,480 –> 00:04:45,370
پنجره اول پنجره دوم دارای
125
00:04:45,370 –> 00:04:47,710
پیکسل دوم سوم و چهارم و غیره است، بنابراین
126
00:04:47,710 –> 00:04:50,410
ما هسته خود را به هر یک از آن
127
00:04:50,410 –> 00:04:51,790
پنجره ها اعمال می کنیم، بنابراین آنها را کوچک می کنیم،
128
00:04:51,790 –> 00:04:53,470
قبلاً مشابه آن را اعمال کرده
129
00:04:53,470 –> 00:04:55,300
ایم و اکنون فقط می خواهیم
130
00:04:55,300 –> 00:04:57,190
دوباره زیبا به نظر برسد. پشت ضامن در یک رشته اتر کنید
131
00:04:57,190 –> 00:04:59,380
و آن را داده صاف بنامید،
132
00:04:59,380 –> 00:05:03,550
زیرا دادههای صاف یا تار ما هستند، میدانید که
133
00:05:03,550 –> 00:05:05,290
این دادههای تمیز هستند، اما دادههای مفیدی نیستند،
134
00:05:05,290 –> 00:05:07,570
چیزی که ما واقعاً به آن اهمیت میدهیم این است که چند
135
00:05:07,570 –> 00:05:09,490
پیکسل مشابه در کنار یکدیگر قرار دارند،
136
00:05:09,490 –> 00:05:11,740
چند پیکسل سیاه در مجاورت هر کدام هستند.
137
00:05:11,740 –> 00:05:13,420
دیگر چند عدد سفید است، پس کاری که
138
00:05:13,420 –> 00:05:15,160
میخواهیم انجام دهیم این است که آنها را گروه بندی کنیم، البته
139
00:05:15,160 –> 00:05:17,950
این پایتون است و
140
00:05:17,950 –> 00:05:20,410
همانطور که همه میدانید پایتون دارای باتریهایی است و یکی از
141
00:05:20,410 –> 00:05:22,870
این باتریها کتابخانه گل بیحرکت
142
00:05:22,870 –> 00:05:24,280
است و این عملکرد را دارد که به آن
143
00:05:24,280 –> 00:05:26,470
گروه میگویند. دقیقاً همان
144
00:05:26,470 –> 00:05:30,340
چیزی را انجام می دهد که می گوید، بنابراین بیایید بررسی کنیم که چه چیزی در
145
00:05:30,340 –> 00:05:32,800
داخل این تکرارگرها وجود دارد، اوه
146
00:05:32,800 –> 00:05:34,270
بله، این گروه پیکسل های
147
00:05:34,270 –> 00:05:36,430
ما دقیقاً همان چیزی هستند که بعد از ما
148
00:05:36,430 –> 00:05:38,770
واقعاً به خود پیکسل ها اهمیت
149
00:05:38,770 –> 00:05:40,600
نمی دهیم، می توانیم به تعداد
150
00:05:40,600 –> 00:05:42,340
آنها اهمیت دهیم که ما انجام می دهیم. به
151
00:05:42,340 –> 00:05:44,169
برچسبی که ممکن است بارکد معکوس شده باشد اهمیتی
152
00:05:44,169 –> 00:05:46,090
نمیدهد، به هر حال آنها میخواهند
153
00:05:46,090 –> 00:05:47,410
اولین و آخرین مورد را حذف کنند، زیرا این
154
00:05:47,410 –> 00:05:48,940
فقط یک فضای سفید اطراف است
155
00:05:48,940 –> 00:05:52,419
، ما اکنون گروههای یک و صفر خود را داریم.
156
00:05:52,419 –> 00:05:55,660
من آماده
157
00:05:55,660 –> 00:05:57,640
آمدم قبل از اینکه به اینجا بیایم صفحه ویکی پدیا را برای بارکد نگاه کردم
158
00:05:57,640 –> 00:06:00,100
تا بدانم که شروع
159
00:06:00,100 –> 00:06:01,750
نوع بارکد مورد نظر ما به
160
00:06:01,750 –> 00:06:04,030
دنبال یک نوار با دو عنصر
161
00:06:04,030 –> 00:06:05,770
و سپس یک فضای سفید با یک
162
00:06:05,770 –> 00:06:08,830
عنصر هستیم. بنابراین، اگر شناسه هدف را دوباره بررسی کنید و به
163
00:06:08,830 –> 00:06:10,960
دادههای ما در اینجا نگاه کنید، متوجه میشوید که ما احتمالاً
164
00:06:10,960 –> 00:06:13,780
چهار پیکسل در هر عنصر بارکد ثبت کردهایم،
165
00:06:13,780 –> 00:06:15,370
بنابراین کاری که میخواهیم انجام دهیم این است
166
00:06:15,370 –> 00:06:18,580
که آن را بر چهار نقطه صفر تقسیم میکنیم تا به
167
00:06:18,580 –> 00:06:20,260
این دست یابیم، برخی از مصنوعات عجیب و غریب
168
00:06:20,260 –> 00:06:22,180
در آنجا هستند. این فقط دنیای واقعی است
169
00:06:22,180 –> 00:06:27,340
که می گوید سلام، بنابراین ما فرار می کنیم و
170
00:06:27,340 –> 00:06:28,810
چیزی داریم که خیلی زیبا به نظر می رسد،
171
00:06:28,810 –> 00:06:31,000
بنابراین فکر می کنم این ها میله های ما هستند، من
172
00:06:31,000 –> 00:06:33,580
آن را دوباره به یک رشته تبدیل می کنم و خیلی
173
00:06:33,580 –> 00:06:36,760
سریع و وقتی این را تمرین می کنم همیشه به آن برخورد می کنم
174
00:06:36,760 –> 00:06:38,500
این یکی هم که
175
00:06:38,500 –> 00:06:39,849
باید یک رونق رشته ای باشد
176
00:06:39,849 –> 00:06:43,179
حالا 2-1-1 می بینید اگر
177
00:06:43,179 –> 00:06:44,889
به بارکد نگاه کنید این یک نوار با غذا
178
00:06:44,889 –> 00:06:48,309
و فاصله یک نوار از یک فاصله از دو
179
00:06:48,309 –> 00:06:50,439
نوار از یک است که دقیقا داده های ما
180
00:06:50,439 –> 00:06:52,659
نیز همین است. اگر برای همان کد 122 به صفحه ویکی پدیا بروید
181
00:06:52,659 –> 00:06:55,689
و به ta نگاه کنید
182
00:06:55,689 –> 00:06:57,309
میدانید
183
00:06:57,309 –> 00:06:59,679
ستون آخر دقیقاً شبیه چیزهایی است که
184
00:06:59,679 –> 00:07:01,990
ما ایجاد کردهایم، بنابراین ما واقعاً
185
00:07:01,990 –> 00:07:04,149
تکههای شش تایی را میخواهیم که بتوانیم در
186
00:07:04,149 –> 00:07:05,259
این جدول جستجو کنیم و باید بتوانیم معنی
187
00:07:05,259 –> 00:07:06,999
بارکد ما را بفهمیم،
188
00:07:06,999 –> 00:07:10,209
بنابراین دوباره پایتون است. باتریها
189
00:07:10,209 –> 00:07:11,999
شامل تعداد زیادی نحو واقعاً ساده
190
00:07:11,999 –> 00:07:16,629
در کتابخانه استاندارد میشوند، بنابراین برای انجام
191
00:07:16,629 –> 00:07:18,699
یک کار کوچک مهم مانند این قطعه
192
00:07:18,699 –> 00:07:21,069
قطعهسازی، بنابراین ما
193
00:07:21,069 –> 00:07:22,869
تکههای شش تایی از این تابع نامگذاری شده
194
00:07:22,869 –> 00:07:25,360
را داریم و سپس آن را دوباره
195
00:07:25,360 –> 00:07:26,979
کنار هم قرار میدهیم و رشته را دریل میکنیم.
196
00:07:26,979 –> 00:07:29,580
میتوانم آنها را ببینیم، بیایید ببینیم آنها چیستند،
197
00:07:29,580 –> 00:07:32,769
این شروع یک کد است بله،
198
00:07:32,769 –> 00:07:34,569
میتوانم ببینم که در ابتدا است، بیایید
199
00:07:34,569 –> 00:07:35,349
ببینیم این یکی
200
00:07:35,349 –> 00:07:38,709
چیست، این پایان است، من آن را دوست دارم، بنابراین
201
00:07:38,709 –> 00:07:39,309
از این یکی
202
00:07:39,309 –> 00:07:40,990
که یک جمعبندی است میگذریم. می توانم به شما بگویم که
203
00:07:40,990 –> 00:07:43,240
بیایید ببینیم بار واقعی
204
00:07:43,240 –> 00:07:45,759
چقدر است، یک P بزرگ است، ما در یک کنفرانس پایتون هستیم،
205
00:07:45,759 –> 00:07:46,899
می توانید ببینید به کجا می
206
00:07:46,899 –> 00:07:53,529
رود، این یک H است و این یکی متاسفم که
207
00:07:53,529 –> 00:07:57,069
این کپی وجود دارد و اوه دوباره یک P است،
208
00:07:57,069 –> 00:08:04,509
بارکد ما می خواند PHP alri
209
00:08:04,509 –> 00:08:06,039
چرا من این کار مزخرف را انجام دادم درست است که هیچ کس
210
00:08:06,039 –> 00:08:08,800
بارکدهای آنچنانی را نمی خواند، دلیلی
211
00:08:08,800 –> 00:08:10,869
که می خواستم واقعاً این بارکد را در اینجا نگه دارم این
212
00:08:10,869 –> 00:08:13,269
است که من واقعاً دوست
213
00:08:13,269 –> 00:08:14,860
دارم با کتابخانه استاندارد
214
00:08:14,860 –> 00:08:17,379
مسخره کنم و کارهای احمقانه ای مانند این تکرار
215
00:08:17,379 –> 00:08:20,349
یا انجام بدهم. و مورد دوم این است که من
216
00:08:20,349 –> 00:08:23,740
دوست دارم موضوعات جدید را از
217
00:08:23,740 –> 00:08:25,869
اصول اولیه بررسی کنم و چون پایتون
218
00:08:25,869 –> 00:08:27,759
زبانی است که کاملاً شهودی است و
219
00:08:27,759 –> 00:08:29,409
هنگامی که اصول اولیه را یاد گرفتید می توانید
220
00:08:29,409 –> 00:08:31,689
کارهای بسیار جالبی را با آن انجام دهید،
221
00:08:31,689 –> 00:08:33,789
همیشه متوجه می شوم که به عنوان یک
222
00:08:33,789 –> 00:08:36,099
زبان برای مرتب کردن افکار من مفید است، بنابراین در
223
00:08:36,099 –> 00:08:38,469
این مورد ما بسیار آسان بود
224
00:08:38,469 –> 00:08:40,360
که متوجه شویم که ما جمع آوری داده ها را انجام می دهیم،
225
00:08:40,360 –> 00:08:42,818
پردازش تصویر را روی ورودی نویز انجام می
226
00:08:42,818 –> 00:08:46,389
دهیم و بیت ها را به داده های واقعی تبدیل می کنیم که
227
00:08:46,389 –> 00:08:48,040
می توانیم در جدول جستجو کنیم و سپس از میان
228
00:08:48,040 –> 00:08:49,510
دادهها، اطلاعات را با
229
00:08:49,510 –> 00:08:51,180
رمزگشایی و استفاده و
230
00:08:51,180 –> 00:08:52,589
کدگذاری جداول به دست میآوریم، بنابراین این چیزی است که در حال انجام است
231
00:08:52,589 –> 00:08:54,390
و این اصل خواندن
232
00:08:54,390 –> 00:08:57,690
بارکدها است، اکنون یک بخش مختصر از تئوری
233
00:08:57,690 –> 00:09:00,149
چند چیز وجود دارد که من فقط
234
00:09:00,149 –> 00:09:01,950
میخواستم قبل از اینکه به پایتون شیرجه بزنیم
235
00:09:01,950 –> 00:09:04,860
، یکی از آنها عبارت
236
00:09:04,860 –> 00:09:06,899
نمادشناسی است.
237
00:09:06,899 –> 00:09:09,750
238
00:09:09,750 –> 00:09:12,270
239
00:09:12,270 –> 00:09:14,250
240
00:09:14,250 –> 00:09:16,500
241
00:09:16,500 –> 00:09:20,040
و
242
00:09:20,040 –> 00:09:21,779
نحوه چیدمان آنها در فضا
243
00:09:21,779 –> 00:09:24,029
بسیار شبیه به زبان انسانی مشخص می کند که چگونه
244
00:09:24,029 –> 00:09:25,709
زنگ ها را می توان به هم زنجیر کرد تا
245
00:09:25,709 –> 00:09:27,270
کلمات و جملات و غیره را تشکیل دهند و
246
00:09:27,270 –> 00:09:29,339
247
00:09:29,339 –> 00:09:31,230
نمادها نیز از انواع جداول جدول نمادها هستند مانند همان چیزی
248
00:09:31,230 –> 00:09:32,399
که اکنون به جایی که رفتیم نگاه کردیم. از
249
00:09:32,399 –> 00:09:34,980
پیکسلها به بیتها و nd8
250
00:09:34,980 –> 00:09:36,510
که به آن رمزگذاری میگویند که چگونه
251
00:09:36,510 –> 00:09:38,220
از بیتها به اطلاعات میروید و در نهایت
252
00:09:38,220 –> 00:09:40,279
برخی از آن نمادها برخی از آن
253
00:09:40,279 –> 00:09:42,120
اسناد مشخصات حاوی
254
00:09:42,120 –> 00:09:43,440
اطلاعاتی در مورد تصحیح خطای جمعهای کنترلی هستند
255
00:09:43,440 –> 00:09:46,440
و به طور مشابه مفهومی متمایز
256
00:09:46,440 –> 00:09:49,020
به نام کد را انجام میدهد که به
257
00:09:49,020 –> 00:09:50,040
آنچه در آن است مربوط میشود.
258
00:09:50,040 –> 00:09:52,350
اطلاعاتی که شبیه کدپستی
259
00:09:52,350 –> 00:09:53,970
به نظر می رسد این است که شماره قطعه یک
260
00:09:53,970 –> 00:09:55,620
کد محصول است و ما واقعاً در مورد آن صحبت نمی
261
00:09:55,620 –> 00:10:00,029
کنیم صحبت های روز به اندازه این است که
262
00:10:00,029 –> 00:10:01,830
دوباره این PHP از مثال قبلی است
263
00:10:01,830 –> 00:10:04,650
فقط به عنوان یادآوری آنچه انجام
264
00:10:04,650 –> 00:10:07,080
دادیم. ما به شخصیت های جداگانه نگاه
265
00:10:07,080 –> 00:10:09,930
کردیم و متوجه شدیم که هر کاراکتر
266
00:10:09,930 –> 00:10:12,540
توسط 11 اسلات رمزگذاری شده است که شامل سه نوار
267
00:10:12,540 –> 00:10:13,980
و سه شکاف در هر کاراکتر و
268
00:10:13,980 –> 00:10:16,020
حداکثر نوار است. اندازه چهار اسلات است
269
00:10:16,020 –> 00:10:17,670
چند چیز که بلافاصله می توانید
270
00:10:17,670 –> 00:10:19,440
در مورد نمادشناسی بگویید که با یک
271
00:10:19,440 –> 00:10:21,420
خط سیاه شروع می شود و با یک خط سفید به پایان می رسد،
272
00:10:21,420 –> 00:10:23,190
بنابراین
273
00:10:23,190 –> 00:10:24,779
بلافاصله پس از آن به کاراکتر بعدی تکیه کنید تا بدانید
274
00:10:24,779 –> 00:10:27,029
آخرین شکاف سفید چقدر بزرگ
275
00:10:27,029 –> 00:10:28,650
است. چرا به آن نمادشناسی پیوسته
276
00:10:28,650 –> 00:10:30,600
میگویند، میتوانید
277
00:10:30,600 –> 00:10:31,920
آنها را تا زمانی که میخواهید به زنجیر بکشید، بنابراین این یک
278
00:10:31,920 –> 00:10:33,270
طول متغیر است که شما محدود به آن نیستید،
279
00:10:33,270 –> 00:10:36,180
بلکه به مقدار دادهای است که
280
00:10:36,180 –> 00:10:38,550
میتوانید در آن قرار دهید، اگر حسابی را که میدانید
281
00:10:38,550 –> 00:10:40,170
انجام دهید. شما می توانید 106
282
00:10:40,170 –> 00:10:42,690
کاراکتر مختلف را با این نماد شناسی انجام دهید اما آنها
283
00:10:42,690 –> 00:10:45,270
آن را با کد 128 تبلیغ می کنند و ادعا
284
00:10:45,270 –> 00:10:46,709
می کنند که می توانند ASCII کامل انجام دهند بنابراین آنها
285
00:10:46,709 –> 00:10:48,270
با سه جدول رمزگذاری جادویی
286
00:10:48,270 –> 00:10:49,470
داشتند که می توانند با آنها به عقب و جلو حرکت کنند.
287
00:10:49,470 –> 00:10:51,390
آنها چیزهای بسیار احمقانه ای هستند، اما به این ترتیب
288
00:10:51,390 –> 00:10:54,600
متوجه شدیم که PHP کل محموله به جمع
289
00:10:54,600 –> 00:10:56,910
چک احاطه شده با کدهای توقف و
290
00:10:56,910 –> 00:10:58,230
سپس فضای خالی اطراف آن به طوری که
291
00:10:58,230 –> 00:11:00,420
اسکنر بارکد بداند بارکد از کجا
292
00:11:00,420 –> 00:11:03,120
شروع می شود و به کجا ختم می شود در اینجا بارکد دیگری است که به
293
00:11:03,120 –> 00:11:04,410
طور تصادفی انتخاب شده است. کد
294
00:11:04,410 –> 00:11:05,670
39 3
295
00:11:05,670 –> 00:11:08,790
39 به دو دلیل یکی این است که می تواند
296
00:11:08,790 –> 00:11:10,890
39 کاراکتر را در بر گیرد، دومی این است
297
00:11:10,890 –> 00:11:12,990
که بر اساس این واقعیت که شما 12
298
00:11:12,990 –> 00:11:14,970
اسلات برای هر کاراکتر دارید و هر
299
00:11:14,970 –> 00:11:16,710
کدام شامل پنج نوار سیاه و
300
00:11:16,710 –> 00:11:18,570
چهار شکاف است که فقط می تواند از دو
301
00:11:18,570 –> 00:11:21,060
متمایز باشد. عرض ها همیشه سه
302
00:11:21,060 –> 00:11:24,060
پهن وجود دارد یا سه مجموع
303
00:11:24,060 –> 00:11:26,670
میله های سیاه پهن و شکاف های سفید سیاه گسترده
304
00:11:26,670 –> 00:11:29,340
همیشه سه است، بنابراین در این مورد
305
00:11:29,340 –> 00:11:32,700
ما سفید سیاه
306
00:11:32,700 –> 00:11:34,680
یکی سفید سیاه دیگری سفید سیاه و در انتها یک
307
00:11:34,680 –> 00:11:38,850
شکاف سفید سفید داریم و می دانید
308
00:11:38,850 –> 00:11:40,350
چه چیزی در این مورد خاص است هیچ چیز
309
00:11:40,350 –> 00:11:41,580
واقعاً خاصی در مورد آن نیست، این است که شخص دیگری
310
00:11:41,580 –> 00:11:42,990
آن را اختراع و منتشر کرد و به خوبی مورد
311
00:11:42,990 –> 00:11:45,270
توجه قرار گرفت، مانند یک
312
00:11:45,270 –> 00:11:46,410
چیز خاص در مورد این یکی این است که
313
00:11:46,410 –> 00:11:47,850
شما می تواند بین کاراکترهای فردی فاصله داشته
314
00:11:47,850 –> 00:11:51,180
باشد و این همان چیزی است که PHP
315
00:11:51,180 –> 00:11:52,470
در اینجا به نظر می رسد آنها در واقع فراموش کرده بودند
316
00:11:52,470 –> 00:11:53,910
که یک checksum تعریف کنند و مانند
317
00:11:53,910 –> 00:11:55,740
یک کد شروع و مرد کد
318
00:11:55,740 –> 00:11:58,800
319
00:11:58,800 –> 00:12:00,810
بودند. من فقط
320
00:12:00,810 –> 00:12:02,160
آن را به شما نشان می دهم تا
321
00:12:02,160 –> 00:12:04,020
ایده هایی در مورد مفاهیمی که ممکن است در صورت خواندن نمادها با آن مواجه شوید به
322
00:12:04,020 –> 00:12:06,060
شما
323
00:12:06,060 –> 00:12:08,400
324
00:12:08,400 –> 00:12:10,770
بدهم.
325
00:12:10,770 –> 00:12:12,540
326
00:12:12,540 –> 00:12:15,270
و صفر
327
00:12:15,270 –> 00:12:17,580
در بیتهای سیاه نیمه اول
328
00:12:17,580 –> 00:12:19,710
کدگذاری میشود، سپس 8 در واقع در شکافهای
329
00:12:19,710 –> 00:12:22,230
بین میلهها کدگذاری میشود که صفر را رمزگذاری میکند
330
00:12:22,230 –> 00:12:25,080
و سپس به صورت دوتایی ادامه میدهید، جایی
331
00:12:25,080 –> 00:12:26,700
که دومی جفت شده و در
332
00:12:26,700 –> 00:12:28,290
بیتهای سیاه کدگذاری میکند.
333
00:12:28,290 –> 00:12:30,090
شکاف های سفید بین هشت تای دیگر را رمزگذاری می کند
334
00:12:30,090 –> 00:12:32,970
و به این ترتیب است که برخی
335
00:12:32,970 –> 00:12:34,410
صنایع دیگر با مشکل
336
00:12:34,410 –> 00:12:36,300
چاپ و سنجش عرض
337
00:12:36,300 –> 00:12:38,670
میله ها در مراکز مرتب سازی پستی مشکل دارند.
338
00:12:38,670 –> 00:12:41,280
نویسندگان هنگام چاپ آن
339
00:12:41,280 –> 00:12:43,290
خطوط و همچنین هنگام خواندن آنها عبور می کنند، بنابراین
340
00:12:43,290 –> 00:12:44,760
کاری که انجام می دهند این است که به هیچ وجه به
341
00:12:44,760 –> 00:12:46,920
عرض تکیه نمی کنند، آنها یک مسیر ساعت
342
00:12:46,920 –> 00:12:48,090
در پایین دارند و وجود یا
343
00:12:48,090 –> 00:12:50,610
عدم وجود نوار در بالای صفحه دوم، بنابراین
344
00:12:50,610 –> 00:12:52,080
طبقه دوم بارکد مشخص می کند
345
00:12:52,080 –> 00:12:54,030
که بارکد چیست و این در واقع
346
00:12:54,030 –> 00:12:55,650
کد پستی مکانی است که ما در
347
00:12:55,650 –> 00:12:58,500
حال حاضر در آن از رمزگذاری استفاده می کنیم که
348
00:12:58,500 –> 00:13:01,110
USPS تا سال 2009 استفاده می کرد و نه بارکد
349
00:13:01,110 –> 00:13:03,270
متفاوت است، این در هر مکانی وجود دارد.
350
00:13:03,270 –> 00:13:04,740
کشوری که آلمانیها
351
00:13:04,740 –> 00:13:06,240
همان مفهوم را در همان زمان اختراع کردند
352
00:13:06,240 –> 00:13:08,400
مانند تکههای نارنجی در پایین
353
00:13:08,400 –> 00:13:10,290
، بارکدی وجود دارد که کسی
354
00:13:10,290 –> 00:13:12,120
مانند یک چیز کوچک روی آن گیر کرده است تا انسانها
355
00:13:12,120 –> 00:13:14,070
واقعاً بتوانند آن را رمزگشایی کنند و به دلایلی به آهنگ ساعت نیازی نداشتند.
356
00:13:14,070 –> 00:13:15,450
357
00:13:15,450 –> 00:13:16,950
به طور موازی اختراع شد، معلوم شد که
358
00:13:16,950 –> 00:13:18,720
رمزگذاری به معنای واقعی کلمه معکوس است و
359
00:13:18,720 –> 00:13:19,209
360
00:13:19,209 –> 00:13:21,670
بارکد قدیمی PostNet در ایالات متحده را می خواند
361
00:13:21,670 –> 00:13:23,949
. آیا انگلستان که ملاقات کردهاند،
362
00:13:23,949 –> 00:13:25,929
نامههایی در کدپستی خود دارند ناگهان
363
00:13:25,929 –> 00:13:27,970
رمزگذاری کاملاً متفاوتی دارند. استرالیاییها
364
00:13:27,970 –> 00:13:29,589
از کد پستی بریتانیا کپی کردهاند، کاناداییها
365
00:13:29,589 –> 00:13:30,910
میتوانستند این کار را انجام دهند، اما آیا این موضوع
366
00:13:30,910 –> 00:13:32,290
به ذهن خود خطور نکرده است که
367
00:13:32,290 –> 00:13:34,420
هلندیها همان چیزی هستند که حدود 20
368
00:13:34,420 –> 00:13:36,429
بارکد پستی مختلف وجود دارد. نماد شناسی
369
00:13:36,429 –> 00:13:37,990
در جهان است و هیچ کس نمی داند چرا
370
00:13:37,990 –> 00:13:40,059
وکلا نیز می توانند مبتکر باشند.
371
00:13:40,059 –> 00:13:42,339
372
00:13:42,339 –> 00:13:43,809
373
00:13:43,809 –> 00:13:46,329
374
00:13:46,329 –> 00:13:48,129
375
00:13:48,129 –> 00:13:50,199
آنها مجبور شدند
376
00:13:50,199 –> 00:13:51,730
رمزگذاری را به هم بزنند تا اگر از نماد شناسی استفاده می کنید،
377
00:13:51,730 –> 00:13:53,439
شما را با نقض
378
00:13:53,439 –> 00:13:55,110
قانون حق چاپ هزاره دیجیتال
379
00:13:55,110 –> 00:13:57,369
مورد انتقاد قرار دهند، اما در مورد اینکه
380
00:13:57,369 –> 00:14:00,369
وکلا به نوآوری فنی کمک می کنند،
381
00:14:00,369 –> 00:14:02,559
البته، شما شروع به نوشتن بیکن می کنید و
382
00:14:02,559 –> 00:14:04,420
به ارتفاع مشخصی از بارکد نیاز دارید
383
00:14:04,420 –> 00:14:06,009
تا وقتی لیزر خود را به سراسر آن بکشید،
384
00:14:06,009 –> 00:14:07,749
در واقع تمام
385
00:14:07,749 –> 00:14:09,429
چیزهایی را که مینویسید بیکن و تخممرغ میبینید، باید
386
00:14:09,429 –> 00:14:11,079
آن را کمی بلندتر بنویسید و
387
00:14:11,079 –> 00:14:12,819
مینویسید بیکن e ggs با نان تست شما مانند مردی هستید
388
00:14:12,819 –> 00:14:14,769
که تمام اسلاید من را اشغال
389
00:14:14,769 –> 00:14:17,589
می کند شما می خواهید کل دستور غذا را رمزگذاری کنید و کل
390
00:14:17,589 –> 00:14:19,509
آیتم منو را رمزگذاری کنید و بارکدهای خود را
391
00:14:19,509 –> 00:14:21,069
روی
392
00:14:21,069 –> 00:14:23,230
393
00:14:23,230 –> 00:14:25,179
هم قرار دهید. اینجوری و در پایان
394
00:14:25,179 –> 00:14:28,379
میدونی که این قبل از صبحانه
395
00:14:28,379 –> 00:14:30,639
دقیقا چهل و نه کاراکتر
396
00:14:30,639 –> 00:14:33,399
یکی دیگه مثل هی من میتونم انجامش بدم 77 و
397
00:14:33,399 –> 00:14:34,509
بعد یکی دیگه اومد مثل
398
00:14:34,509 –> 00:14:35,559
اینکه میدونی کار ما این همه روز چیه
399
00:14:35,559 –> 00:14:37,179
که خیلی منسوخ شده بیایید اینو بسازیم
400
00:14:37,179 –> 00:14:39,189
یکی که میدانید میتوانید
401
00:14:39,189 –> 00:14:41,230
با چیدن این خطوط نازک روی هم تقریباً به اندازه دلخواه متن بنویسید
402
00:14:41,230 –> 00:14:42,939
403
00:14:42,939 –> 00:14:44,470
، این همان چیزی است که برخی از کارتهای سواری
404
00:14:44,470 –> 00:14:46,569
اکنون میگذرند و به عنوان نمادی با ظرفیت بالا در نظر گرفته میشود
405
00:14:46,569 –> 00:14:48,879
و وقتی این کار را انجام
406
00:14:48,879 –> 00:14:50,589
دادید، میتوانید مانند آن را نیز بنویسید.
407
00:14:50,589 –> 00:14:52,839
پیکسلهای یک مربع را که آن را ماتریس داده مینامید و
408
00:14:52,839 –> 00:14:54,459
آن را منبع باز مینامید
409
00:14:54,459 –> 00:14:56,049
که آن را در جهان بسیار محبوب میکند.
410
00:14:56,049 –> 00:14:58,329
411
00:14:58,329 –> 00:14:59,410
412
00:14:59,410 –> 00:15:01,959
قرمز و سپس
413
00:15:01,959 –> 00:15:03,999
تعداد زیادی تصحیح خطا و زرد
414
00:15:03,999 –> 00:15:05,259
زیرا این نوع بارکد
415
00:15:05,259 –> 00:15:06,819
مشخصاً هنگام خواندن آن بیشتر مستعد خطا است
416
00:15:06,819 –> 00:15:09,579
و این یعنی اینکه می توانید آن
417
00:15:09,579 –> 00:15:10,959
را روی هم قرار دهید و حتی می توانید آن را حتی بیشتر روی هم قرار دهید تا زمانی
418
00:15:10,959 –> 00:15:12,519
که مانند کل گناه پایتون را
419
00:15:12,519 –> 00:15:16,470
داشته باشید و در آنجا بتوانید اگر ژاپنی هستید، آن را در مزرعه ذرت خود قرار دهید،
420
00:15:16,470 –> 00:15:18,910
در واقع
421
00:15:18,910 –> 00:15:20,350
ما دوست داریم کمی
422
00:15:20,350 –> 00:15:22,089
حرفه ای تر باشیم، ما سه نکته را در گوشه ای قرار داده ایم
423
00:15:22,089 –> 00:15:23,679
تا مکان یابی آن آسان تر باشد،
424
00:15:23,679 –> 00:15:25,329
همچنین می توانید کاراکترهای کانجی را
425
00:15:25,329 –> 00:15:26,889
با آن رمزگذاری کنید.
426
00:15:26,889 –> 00:15:28,569
اگر در ژاپن هستید و چینیها
427
00:15:28,569 –> 00:15:30,660
مانند هی به ما نگاه کنید، راحت است، ما میتوانیم جنگلی بسازیم
428
00:15:30,660 –> 00:15:33,950
[خنده]
429
00:15:33,950 –> 00:15:35,720
و آنگاه میدانی که افراد
430
00:15:35,720 –> 00:15:37,400
زیادی از نمادهای او بیشتر استفاده میکنند،
431
00:15:37,400 –> 00:15:39,410
من حتی نمیخواهم صحبت کنم. در مورد آنها
432
00:15:39,410 –> 00:15:40,370
فقط می خواهم به شما اطلاع دهم که آنها
433
00:15:40,370 –> 00:15:42,650
وجود دارند ممکن است کسی بپرسد که در مورد
434
00:15:42,650 –> 00:15:44,540
اینها و آنهایی که در سوپرمارکت وجود
435
00:15:44,540 –> 00:15:45,710
دارند که UPC نام دارد چه می شود،
436
00:15:45,710 –> 00:15:49,010
رقابتی در 74 سال IBM تقریباً برنده شد، با
437
00:15:49,010 –> 00:15:50,450
این تفاوت که آنها مانند قسمت بالای
438
00:15:50,450 –> 00:15:52,310
پیشنهاد خود حذف شدند. و
439
00:15:52,310 –> 00:15:53,570
یکی پایین، همان چیزی است که از آن زمان در یک سوپرمارکت دیدهایم
440
00:15:53,570 –> 00:15:56,360
، این لیست
441
00:15:56,360 –> 00:15:57,800
نمادهایی است که من در مورد آن صحبت کردم،
442
00:15:57,800 –> 00:16:01,940
موارد بیشتری وجود دارد که آنها واقعاً در حال استفاده هستند بله
443
00:16:01,940 –> 00:16:03,410
این بسته دو هفته پیش در ساختمان آپارتمان ما ظاهر شد.
444
00:16:03,410 –> 00:16:05,270
445
00:16:05,270 –> 00:16:07,220
دیگران
446
00:16:07,220 –> 00:16:08,720
کاربردهای ویژه و صنایع خاصی دارند
447
00:16:08,720 –> 00:16:10,580
، مثلاً اگر زمانی نیاز به
448
00:16:10,580 –> 00:16:13,070
تزریق خون داشته باشید، کیسهها این باور را دارند که
449
00:16:13,070 –> 00:16:15,380
بارکد کدا روی آن وجود دارد و کتابخانهها باید بارکد کدا
450
00:16:15,380 –> 00:16:17,420
را داشته باشند که در آن صنعت گیر کرده
451
00:16:17,420 –> 00:16:18,620
است و اینگونه
452
00:16:18,620 –> 00:16:20,480
است که چگونه میتوانید انتخاب کنید. یک نمادشناسی
453
00:16:20,480 –> 00:16:22,160
خوب، امیدوارم در
454
00:16:22,160 –> 00:16:23,510
برنامهای کار کنید که نمادشناسی
455
00:16:23,510 –> 00:16:25,280
با استانداردها تعریف میشود، اگر
456
00:16:25,280 –> 00:16:26,350
به من گوش نکنید،
457
00:16:26,350 –> 00:16:28,850
بیایید