به محتوای اصلی برو
ناوبری ثانویه
در پنج سال گذشته، حوزه هوش مصنوعی (AI) پیشرفت‌های چشمگیری در تقریباً تمام زیرشاخه‌های استاندارد خود، از جمله بینایی، تشخیص و تولید گفتار، پردازش زبان طبیعی (درک و تولید)، تولید تصویر و ویدئو، سیستم‌های چندعاملی، برنامه‌ریزی، تصمیم‌گیری و ادغام بینایی و کنترل حرکتی برای رباتیک داشته است. علاوه بر این، کاربردهای پیشگامانه‌ای در حوزه‌های مختلف از جمله بازی‌ها، تشخیص پزشکی، سیستم‌های لجستیک، رانندگی خودکار، ترجمه زبان و دستیارهای شخصی تعاملی ظهور کرده‌اند. بخش‌های بعدی نمونه‌هایی از بسیاری از تحولات مهم را ارائه می‌دهند.

فناوری‌های زیربنایی
در پنج سال گذشته، حوزه هوش مصنوعی (AI) پیشرفت‌های چشمگیری در تقریباً تمام زیرشاخه‌های استاندارد خود، از جمله بینایی، تشخیص و تولید گفتار، پردازش زبان طبیعی (درک و تولید)، تولید تصویر و ویدئو، سیستم‌های چندعاملی، برنامه‌ریزی، تصمیم‌گیری و ادغام بینایی و کنترل حرکتی برای رباتیک داشته است. علاوه بر این، کاربردهای پیشگامانه‌ای در حوزه‌های مختلف از جمله بازی‌ها، تشخیص پزشکی، سیستم‌های لجستیک، رانندگی خودکار، ترجمه زبان و دستیارهای شخصی تعاملی ظهور کرده‌اند. بخش‌های بعدی نمونه‌هایی از بسیاری از تحولات مهم را ارائه می‌دهند.

امروزه مردم بیشتر از قبل از هوش مصنوعی برای دیکته کردن به تلفن خود، دریافت پیشنهادات برای خرید، اخبار یا سرگرمی، بهبود پس‌زمینه‌های خود در تماس‌های کنفرانسی و بسیاری موارد دیگر استفاده می‌کنند. فناوری اصلی پشت بیشتر پیشرفت‌های قابل مشاهده، یادگیری ماشین است، به‌ویژه یادگیری عمیق (از جمله شبکه‌های مولد تخاصمی یا GANها) و یادگیری تقویتی که توسط داده‌ها و منابع محاسباتی در مقیاس بزرگ تقویت می‌شود. GANها یک پیشرفت بزرگ هستند که شبکه‌های عمیق را با توانایی تولید محتوای مصنوعی مانند تصاویر جعلی که واقعی به نظر می‌رسند، مجهز می‌کنند. GANها از دو جزء درهم‌قفل تشکیل شده‌اند - یک مولد که مسئول ایجاد محتوای واقع‌گرایانه است و یک تمیزدهنده که وظیفه تشخیص خروجی مولد را از محتوای طبیعی دارد. این دو از یکدیگر یاد می‌گیرند و با گذشت زمان در وظایف مربوطه خود بهتر می‌شوند. یکی از کاربردهای عملی را می‌توان در افزایش تصویر پزشکی مبتنی بر GAN مشاهده کرد، که در آن تصاویر مصنوعی به‌طور خودکار تولید می‌شوند تا مجموعه داده مورد استفاده برای آموزش شبکه‌ها برای تولید تشخیص‌ها گسترش یابد. درک از قدرت قابل توجه یادگیری عمیق در طول یک دهه گذشته به طور پیوسته در حال رشد بوده است. مطالعات اخیر شروع به آشکار کردن این موضوع کرده‌اند که چرا و تحت چه شرایطی یادگیری عمیق به خوبی کار می‌کند. در طول ده سال گذشته، فناوری‌های یادگیری ماشین از حوزه دانشگاهی به دنیای واقعی به روش‌های امیدوارکننده و نگران‌کننده متعددی منتقل شده‌اند.

پردازش زبان
فناوری پردازش زبان در پنج سال گذشته جهش بزرگی داشته است که منجر به توسعه معماری‌های شبکه با قابلیت‌های افزایش یافته برای یادگیری از داده‌های پیچیده و حساس به متن شده است. این پیشرفت‌ها با منابع داده و قدرت محاسباتی رو به رشدی پشتیبانی شده‌اند.

مدل‌های زبان شبکه عصبی، از جمله ELMo، GPT، mT5 و BERT، قابل توجه هستند. این مدل‌ها در مورد نحوه استفاده از کلمات در متن - از جمله عناصر گرامر، معنا و حقایق اساسی در مورد جهان - از طریق بررسی الگوها در متن طبیعی یاد می‌گیرند. آنها از میلیاردها پارامتر قابل تنظیم تشکیل شده‌اند و برای پردازش مقادیر بی‌سابقه‌ای از داده‌ها (بیش از یک تریلیون کلمه برای GPT-3، به عنوان مثال) طراحی شده‌اند. با کنار هم قرار دادن دنباله‌های احتمالی کلمات، چندین مدل از این دست می‌توانند متنی را تولید کنند که اغلب از متن تولید شده توسط انسان قابل تشخیص نیست، از جمله اخبار، شعر، داستان و حتی کد کامپیوتر. عملکرد در معیارهای پاسخ به سؤال (آزمون‌های بزرگ با سؤالاتی مانند "بیونسه کجا متولد شد؟") به سطوح فرابشری رسیده است، اگرچه مدل‌هایی که به این سطح از مهارت دست می‌یابند، همبستگی‌های نادرست در معیارها را مورد بهره‌برداری قرار می‌دهند و سطح شایستگی در سؤالات طبیعی را نشان می‌دهند که هنوز به طور قابل توجهی کمتر از انسان است.

توانایی این مدل‌ها در زبان در حال حاضر از برنامه‌هایی مانند ترجمه ماشینی، طبقه‌بندی متن، تشخیص گفتار، ابزارهای نوشتن و ربات‌های گفتگو پشتیبانی می‌کند. برنامه‌های آینده می‌تواند شامل بهبود تعاملات انسان و هوش مصنوعی در زبان‌ها و موقعیت‌های متنوع باشد. چالش‌های فعلی شامل چگونگی به دست آوردن داده‌های با کیفیت برای زبان‌های مورد استفاده توسط جمعیت‌های کوچکتر و چگونگی تشخیص و حذف سوگیری‌ها در رفتار آنها است. علاوه بر این، شایان ذکر است که این مدل‌ها درک عمیقی از متونی که پردازش می‌کنند ندارند و این امر به طور اساسی کاربرد آنها را در بسیاری از برنامه‌های حساس محدود می‌کند. بخشی از هنر استفاده از این مدل‌ها تا به امروز، یافتن سناریوهایی است که در آن تسلط ناقص آنها هنوز ارزش افزوده ایجاد می‌کند.

مرتبط با پردازش زبان، رشد چشمگیر رابط‌های مکالمه‌ای در پنج سال گذشته است. فراگیری تقریباً همه‌جا سیستم‌های کنترل صوتی مانند Google Assistant، Siri و Alexa نتیجه هم بهبود در سمت تشخیص صدا است که توسط پیشرفت‌های هوش مصنوعی مورد بحث در بالا تقویت می‌شود و هم بهبود در نحوه سازماندهی و یکپارچه‌سازی اطلاعات برای ارائه مبتنی بر صدا است. Google Duplex، یک رابط مکالمه‌ای که می‌تواند با مشاغل تماس بگیرد تا رزرو رستوران و قرار ملاقات انجام دهد، در سال 2018 راه‌اندازی شد و به دلیل مهندسی چشمگیر اما طراحی سیستم ناخوشایند خود، نظرات اولیه متفاوتی را دریافت کرد.

بینایی کامپیوتر و پردازش تصویر
فناوری پردازش تصویر اکنون به طور گسترده‌ای رایج شده است و کاربردهایی از پس‌زمینه‌های کنفرانس ویدیویی تا تصاویر واقعی به نام deepfake را شامل می‌شود. بسیاری از رویکردهای پردازش تصویر از یادگیری عمیق برای تشخیص، طبقه‌بندی، تبدیل و سایر وظایف استفاده می‌کنند. زمان آموزش برای پردازش تصویر به طور قابل توجهی کاهش یافته است. برنامه‌هایی که بر روی ImageNet، یک مجموعه استاندارد عظیم از بیش از 14 میلیون عکس مورد استفاده برای آموزش و آزمایش برنامه‌های شناسایی بصری اجرا می‌شوند، کار خود را 100 برابر سریعتر از فقط سه سال پیش به پایان می‌رسانند.

سیستم‌های تشخیص اشیاء در زمان واقعی مانند YOLO (You Only Look Once) که اشیاء مهم را هنگام ظاهر شدن در یک تصویر متوجه می‌شوند، به طور گسترده‌ای برای نظارت تصویری از جمعیت‌ها استفاده می‌شوند و برای ربات‌های سیار از جمله خودروهای خودران مهم هستند. فناوری تشخیص چهره نیز در پنج سال گذشته به طور قابل توجهی بهبود یافته است و اکنون برخی از تلفن‌های هوشمند و حتی ساختمان‌های اداری برای کنترل دسترسی به آن متکی هستند. در چین، فناوری تشخیص چهره به طور گسترده در جامعه استفاده می‌شود، از امنیت تا پرداخت، اگرچه اخیراً اقداماتی برای عقب‌نشینی از استقرار گسترده این فناوری انجام شده است. البته، در حالی که فناوری تشخیص چهره می‌تواند ابزاری قدرتمند برای بهبود کارایی و ایمنی باشد، مسائلی را در مورد سوگیری و حریم خصوصی ایجاد می‌کند. برخی از شرکت‌ها ارائه خدمات تشخیص چهره را به حالت تعلیق درآورده‌اند. و در واقع، سازنده YOLO گفته است که دیگر روی این فناوری کار نمی‌کند زیرا "کاربردهای نظامی و نگرانی‌های مربوط به حریم خصوصی غیرقابل نادیده گرفتن شد."

اکنون می‌توان تصاویر و حتی ویدیوهای واقعی را با استفاده از GANها تولید کرد. سیستم‌های پیشرفته پردازش تصویر که با یادگیری عمیق تقویت شده‌اند به کاربران اجازه می‌دهند تصاویر موجود را به طور یکپارچه با تصاویر جدید جایگزین کنند، مانند قرار دادن کسی در ویدیویی از رویدادی که در آن شرکت نکرده است. در حالی که چنین اصلاحاتی می‌توانست دهه‌ها پیش توسط هنرمندان ماهر انجام شود، اتوماسیون هوش مصنوعی به طور قابل توجهی موانع را کاهش داده است. این deepfakeها به اصطلاح در فعالیت‌های غیرقانونی مانند "انتقام پورنو" استفاده می‌شوند، که در آن یک مهاجم محتوای جنسی مصنوعی با حضور یک قربانی خاص ایجاد می‌کند و سرقت هویت، که در آن یک پروفایل از یک شخص غیرموجود ایجاد می‌شود و برای دسترسی به خدمات استفاده می‌شود، و باعث تحقیقات برای بهبود تشخیص خودکار تصاویر deepfake شده است.

عنوان: فناوری GAN برای تولید تصاویر و فناوری ترانسفورمر برای تولید متن را می‌توان به روش‌های مختلف ادغام کرد. این تصاویر توسط "DALL-E" OpenAI با دستورالعمل "یک پنجره شیشه‌ای رنگی با تصویری از یک توت فرنگی آبی" تولید شده‌اند. یک پرس و جوی مشابه به یک موتور جستجوی تصویر مبتنی بر وب، توت فرنگی‌های آبی، پنجره‌های شیشه‌ای رنگی آبی یا پنجره‌های شیشه‌ای رنگی با توت فرنگی‌های قرمز را تولید می‌کند که نشان می‌دهد سیستم صرفاً تصاویر مرتبط را بازیابی نمی‌کند، بلکه ترکیبات جدیدی از ویژگی‌های بصری تولید می‌کند. از: https://openai.com/blog/dall-e/ (پیوند خارجی)

بازی‌ها
توسعه الگوریتم‌ها برای بازی‌ها و شبیه‌سازی‌ها در موقعیت‌های خصمانه مدت‌هاست که یک زمین تمرینی بارور و ویترین پیشرفت تکنیک‌های هوش مصنوعی بوده است. استفاده DeepMind از شبکه‌های عمیق برای بازی‌های ویدیویی Atari و بازی Go در حدود سال 2015 به گسترش گسترده یادگیری عمیق در بین عموم کمک کرد و پنج سال گذشته شاهد پیشرفت‌های قابل توجه بیشتری بوده است. عوامل هوش مصنوعی اکنون در موقعیت‌های مبارزه و چند نفره از جمله بازی‌های StarCraft II، Quake III و Alpha Dogfight - یک شبیه‌سازی جت جنگنده با حمایت وزارت دفاع ایالات متحده - و همچنین بازی‌های کلاسیک مانند پوکر، از همتایان انسانی خود پیشی گرفته‌اند.

تیم DeepMind که AlphaGo را توسعه داد، به ایجاد AlphaGoZero ادامه داد، که استفاده از راهنمایی مستقیم انسانی به شکل مجموعه بزرگی از داده‌ها از مسابقات Go گذشته را کنار گذاشت. در عوض، این تیم حرکات و تاکتیک‌ها را از ابتدا به تنهایی توسعه داد. این ایده با AlphaZero بیشتر تقویت شد، یک معماری شبکه واحد که می‌توانست Go، Shogi یا Chess را در سطح تخصصی یاد بگیرد.

رباتیک
پنج سال گذشته شاهد پیشرفت‌های مداوم در رباتیک هوشمند ناشی از یادگیری ماشین، قابلیت‌های محاسباتی و ارتباطی قدرتمند و افزایش در دسترس بودن سیستم‌های حسگر پیچیده بوده است. اگرچه این سیستم‌ها نمی‌توانند به طور کامل از تمام پیشرفت‌های هوش مصنوعی بهره ببرند، عمدتاً به دلیل محدودیت‌های فیزیکی محیط‌ها، سیستم‌های رباتیک چابک و پویا اکنون برای استفاده در خانه و صنعت در دسترس هستند. در رباتیک صنعتی، با اجرای سیستم‌های بینایی مبتنی بر یادگیری عمیق، ربات‌های نوع دستکاری کننده - آنهایی که اشیا را می‌گیرند، بر خلاف آنهایی که روی زمین می‌غلتند - می‌توانند اشیاء همپوشانده تصادفی را با سرعتی که برای کاربردهای دنیای واقعی عملی است، بردارند.

ربات‌های دوپا و چهارپا همچنان در چابکی پیشرفت می‌کنند. Atlas، یک ربات انسان‌نمای پیشرفته ساخته شده توسط Boston Dynamics، توانایی پریدن، دویدن، چرخش عقب و مانور در زمین‌های ناهموار - کارهایی که برای ربات‌ها فقط چند سال پیش غیرممکن بود - را نشان داده است. Spot، یک ربات چهارپا نیز از Boston Dynamics، از طریق محیط‌های دشوار مانور می‌دهد و در سایت‌های ساخت و ساز برای تحویل و نظارت بر مواد و ابزارهای سبک استفاده می‌شود. شایان ذکر است که این سیستم‌ها با استفاده از ترکیبی از تکنیک‌های یادگیری که در سال‌های اخیر اصلاح شده‌اند، تئوری کنترل کلاسیک شبیه به آنچه در خلبان‌های خودکار استفاده می‌شود و مهندسی و طراحی دقیق ساخته شده‌اند. Cassie، یک ربات دوپا که توسط Agility Robotics و Oregon State University توسعه یافته است، از یادگیری تقویتی عمیق برای رفتارهای راه رفتن و دویدن خود استفاده می‌کند. در حالی که استقرار هوش مصنوعی در فناوری‌های بینایی و زبان کاربرپسند اکنون رایج است، بیشتر انواع سیستم‌های رباتیک هنوز در آزمایشگاه محدود شده‌اند.

در طول سال 2020، توسعه رباتیک تا حدی توسط نیاز به حمایت از فاصله گذاری اجتماعی در طول همه‌گیری COVID-19 هدایت شد. گروهی از رستوران‌ها در چین با تیمی متشکل از 20 ربات باز شدند تا به پخت و پز و سرو غذا کمک کنند. برخی از ربات‌های تحویل اولیه در محوطه دانشگاه‌های کنترل شده مستقر شدند تا کتاب‌ها و غذا را حمل کنند. مجموعه متنوعی از شرکت‌ها در سراسر جهان به طور فعال به دنبال فرصت‌های تجاری در سیستم‌های تحویل خودکار برای آخرین مایل هستند. در حالی که این نوع ربات‌ها به طور فزاینده‌ای در دنیای واقعی استفاده می‌شوند، هنوز به طور گسترده رایج نیستند و هنوز مستعد اشتباهات هستند، به ویژه هنگامی که در محیط‌های نقشه برداری نشده یا جدید مستقر می‌شوند. در ژاپن، یک چارچوب قانونی جدید در حال بحث است تا اطمینان حاصل شود که سیستم‌های رباتیک خودکار می‌توانند با سرعت محدود در جاده‌های عمومی به طور ایمن مستقر شوند.

ترکیب یادگیری عمیق با رباتیک چابک فرصت‌های جدیدی را در رباتیک صنعتی باز می‌کند. با بهره‌گیری از بهبود در بینایی، دست‌های رباتیک شروع به انتخاب و برداشتن اشیاء به طور تصادفی قرار گرفته و استفاده از آنها برای ساختن پشته‌ها می‌کنند. توانایی برداشتن و قرار دادن اشیاء متنوع یک شایستگی کلیدی در طیف وسیعی از کاربردهای بالقوه، از مرتب کردن خانه‌ها تا آماده‌سازی بسته‌ها برای حمل و نقل است.

تحرک
وسایل نقلیه خودران یا خودروهای خودران یکی از داغ‌ترین حوزه‌ها در رباتیک مستقر بوده‌اند، زیرا بر کل صنعت خودرو و همچنین برنامه‌ریزی شهری تأثیر می‌گذارند. طراحی خودروهای خودران به ادغام طیف وسیعی از فناوری‌ها از جمله ادغام حسگر، برنامه‌ریزی و تصمیم‌گیری هوش مصنوعی، پیش‌بینی پویایی خودرو، مسیریابی مجدد در حال حرکت، ارتباط بین خودروها و موارد دیگر نیاز دارد. سیستم‌های کمک راننده به طور فزاینده‌ای در وسایل نقلیه تولیدی رایج شده‌اند. این سیستم‌ها از حسگرها و تجزیه و تحلیل مبتنی بر هوش مصنوعی برای انجام وظایفی مانند کنترل کروز تطبیقی برای تنظیم ایمن سرعت و کمک به حفظ خط برای نگه داشتن وسایل نقلیه در مرکز جاده استفاده می‌کنند.

پیش‌بینی‌های خوش‌بینانه از پنج سال پیش در مورد پیشرفت سریع در رانندگی کاملاً خودکار محقق نشده است. دلایل ممکن است پیچیده باشد، اما نیاز به سطوح استثنایی ایمنی در محیط‌های فیزیکی پیچیده، حل این مشکل را دشوارتر و پرهزینه‌تر از آنچه پیش‌بینی شده بود می‌کند. با این وجود، وسایل نقلیه خودران اکنون در مکان‌های خاصی مانند فینیکس، آریزونا، جایی که شرایط رانندگی و آب و هوایی به طور خاص مطلوب است و خارج از پکن، جایی که اتصال 5G به رانندگان از راه دور اجازه می‌دهد در صورت نیاز کنترل را به دست بگیرند، در حال کار هستند.

سلامت
هوش مصنوعی به طور فزاینده‌ای در کاربردهای زیست پزشکی، به ویژه در تشخیص، کشف دارو و تحقیقات علوم زیستی اساسی استفاده می‌شود.

سال‌های اخیر شاهد حرکت فناوری‌های تصویربرداری مبتنی بر هوش مصنوعی از یک تحقیق دانشگاهی به پروژه‌های تجاری بوده است. ابزارهایی در حال حاضر برای شناسایی انواع اختلالات چشم و پوست، تشخیص سرطان و پشتیبانی از اندازه‌گیری‌های مورد نیاز برای تشخیص بالینی وجود دارد. برخی از این سیستم‌ها با توانایی‌های تشخیصی متخصصان آسیب‌شناسان و رادیولوژیست‌ها رقابت می‌کنند و می‌توانند به کاهش وظایف خسته‌کننده کمک کنند (به عنوان مثال، شمارش تعداد سلول‌هایی که در بافت سرطانی تقسیم می‌شوند). با این حال، در سایر حوزه‌ها، استفاده از سیستم‌های خودکار نگرانی‌های اخلاقی قابل توجهی را ایجاد می‌کند.

امتیازدهی ریسک مبتنی بر هوش مصنوعی در مراقبت‌های بهداشتی نیز رایج‌تر می‌شود. پیش‌بینی‌کننده‌های وخامت سلامتی اکنون در پلتفرم‌های سوابق سلامت اصلی (به عنوان مثال، شاخص وخامت EPIC) ادغام شده‌اند و مراکز بهداشتی به طور فزاینده‌ای از پیش‌بینی‌های ریسک مبتنی بر هوش مصنوعی در عملیات خود ادغام می‌کنند. اگرچه مقداری سوگیری در این سیستم‌ها وجود دارد، اما به نظر می‌رسد که برای بهبود کلی مراقبت‌های بهداشتی بسیار امیدوارکننده هستند.

فراتر از پشتیبانی درمانی، هوش مصنوعی اکنون عملیات و اندازه‌گیری‌های دیگری را در زمینه سلامت افزایش می‌دهد، مانند کمک به پیش‌بینی مدت زمان جراحی‌ها برای بهینه‌سازی برنامه‌ریزی و شناسایی بیمارانی که در معرض خطر نیاز به انتقال به مراقبت‌های ویژه هستند. فناوری‌هایی برای رونویسی پزشکی دیجیتال، خواندن سیستم‌های ECG، تولید تصاویر با وضوح بالا برای کاهش مدت زمان حضور بیماران در دستگاه‌های MRI و شناسایی سؤالاتی برای پزشکان برای پرسیدن از بیماران اطفال وجود دارد. در حالی که نفوذ فعلی نسبتاً کم است، می‌توان انتظار داشت که استفاده از هوش مصنوعی در این زمینه در آینده گسترش یابد. در بسیاری از موارد، اینها کاربردهای فناوری‌های از قبل بالغ در سایر حوزه‌های عملیاتی هستند که به مراقبت‌های بهداشتی راه می‌یابند.

مالی
هوش مصنوعی به طور فزاینده‌ای در امور مالی پذیرفته شده است. مدل‌های یادگیری عمیق اکنون تصمیم‌گیری در مورد وام را برای چندین وام‌دهنده به طور جزئی خودکار می‌کنند و با امتیازدهی اعتباری، پرداخت‌ها را متحول کرده‌اند، به عنوان مثال WeChat Pay. این سیستم‌های جدید اغلب از داده‌های مصرف‌کننده استفاده می‌کنند که به طور سنتی در امتیازدهی اعتباری استفاده نمی‌شود. در برخی موارد، این رویکرد می‌تواند اعتبار را به گروه‌های جدیدی از افراد باز کند. در موارد دیگر، می‌تواند برای مجبور کردن افراد به پذیرش رفتارهای اجتماعی خاص استفاده شود.

معاملات با فرکانس بالا به ترکیبی از مدل‌ها و همچنین توانایی تصمیم‌گیری سریع متکی هستند. در فضای مالی شخصی، مشاوره رباتیک - مشاوره مالی خودکار - به سرعت در حال تبدیل شدن به یک جریان اصلی برای سرمایه‌گذاری و برنامه‌ریزی مالی کلی است. برای موسسات مالی، استفاده از هوش مصنوعی فراتر از تشخیص تقلب و افزایش امنیت سایبری به خودکارسازی اسناد حقوقی و انطباق و همچنین تشخیص پولشویی است. صندوق سرمایه‌گذاری دولتی ژاپن (GPIF)، بزرگترین صندوق بازنشستگی جهان، یک سیستم مبتنی بر یادگیری عمیق را برای نظارت بر سبک‌های سرمایه‌گذاری مدیران صندوق قراردادی و شناسایی ریسک ناشی از تغییرات غیرمنتظره در شرایط بازار که به عنوان تغییر رژیم شناخته می‌شود، معرفی کرده است. چنین کاربردهایی به موسسات مالی اجازه می‌دهد تا خطراتی را که در غیر این صورت نامرئی هستند، تشخیص دهند و به شیوه‌های مدیریت دارایی قوی‌تر و پایدارتر کمک کنند.

سیستم‌های توصیه‌گر
با انفجار اطلاعات در دسترس ما، سیستم‌های توصیه‌گر که به طور خودکار آنچه را که ما هنگام آنلاین بودن می‌بینیم اولویت‌بندی می‌کنند، ضروری شده‌اند. چنین سیستم‌هایی همیشه به شدت به هوش مصنوعی متکی بوده‌اند و اکنون تأثیر چشمگیری بر مصرف محصولات، خدمات و محتوا - از اخبار گرفته تا موسیقی و ویدیو و غیره - دارند. جدا از یک روند کلی به سمت فعالیت و تجارت آنلاین بیشتر، فناوری‌های هوش مصنوعی که سیستم‌های توصیه‌گر را تقویت می‌کنند، در پنج سال گذشته به طور قابل توجهی تغییر کرده‌اند. یک تغییر، گنجاندن تقریباً جهانی شبکه‌های عصبی عمیق برای پیش‌بینی بهتر پاسخ‌های کاربر به توصیه‌ها است. همچنین استفاده افزایش یافته از تکنیک‌های پیشرفته یادگیری ماشین برای تجزیه و تحلیل محتوای موارد توصیه شده، به جای استفاده فقط از فراداده و کلیک یا رفتار مصرف کاربر وجود دارد. یعنی سیستم‌های هوش مصنوعی تلاش بیشتری می‌کنند تا درک کنند که چرا یک مورد خاص ممکن است توصیه خوبی برای یک شخص یا پرس و جو خاص باشد. به عنوان مثال، استفاده Spotify از تجزیه و تحلیل صوتی موسیقی یا استفاده از مدل‌های زبان بزرگ مانند BERT برای بهبود توصیه‌های اخبار یا پست‌های رسانه‌های اجتماعی. یک روند دیگر، مدل‌سازی و پیش‌بینی چندین رفتار متمایز کاربر است، به جای ارائه توصیه‌هایی برای یک فعالیت در یک زمان. این عملکرد با استفاده از مدل‌های چند وظیفه‌ای تسهیل می‌شود. البته، اعمال توصیه به چندین کار به طور همزمان، سؤال چالش‌برانگیزی را در مورد نحوه بهترین تعادل بین این اهداف مختلف ایجاد می‌کند.

استفاده از مدل‌های یادگیری ماشین پیچیده‌تر برای توصیه محصولات، خدمات و (به ویژه) محتوا نگرانی‌های قابل توجهی را در مورد مسائل مربوط به انصاف، تنوع، قطبش و ظهور حباب‌های فیلتر ایجاد کرده است، جایی که سیستم توصیه‌گر، به عنوان مثال، داستان‌های خبری را پیشنهاد می‌دهد که افراد دیگر مانند شما می‌خوانند، به جای آنچه واقعاً مهم‌تر است. در حالی که این مشکلات به راه‌حل‌های فنی فراتر از نیاز دارند، توجه فزاینده‌ای به فناوری‌هایی می‌شود که می‌توانند حداقل به حل این مشکلات کمک کنند. جهات امیدوارکننده شامل تحقیقات در مورد مبادلات بین محبوبیت و تنوع مصرف محتوا و انصاف توصیه‌ها در بین کاربران مختلف و سایر ذینفعان (مانند ارائه دهندگان یا سازندگان محتوا) است.

[1] Antreas Antoniou, Amos Storkey, and Harrison Edwards, "Data Augmentation Generative Adversarial Networks," March 2018 https://arxiv.org/abs/1711.04340v3
[2] Zeyuan Allen-Zhu, Yuanzhi Li, and Zhao Song, "A Convergence Theory for Deep Learning via Over-Parameterization," June 2019 https://arxiv.org/abs/1811.03962v5; Chiyuan Zhang, Samy Bengio, Moritz Hardt, Benjamin Recht, and Oriol Vinyals, "Understanding deep learning requires rethinking generalization," February 2017 https://arxiv.org/abs/1611.03530v2
[3] Matthew E. Peters, Mark Neumann, Mohit Iyyer, Matt Gardner, Christopher Clark, Kenton Lee, and Luke Zettlemoyer, "Deep contextualized word representations," Deep contextualized word representations, " March 2018 https://arxiv.org/abs/1802.05365v2; Alec Radford, Karthik Narasimhan, Tim Salimans, and Ilya Sutskever, "Improving Language Understanding by Generative Pre-Training" https://www.cs.ubc.ca/~amuham01/LING530/papers/radford2018improving.pdf; Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova, "BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding," May 2019 https://arxiv.org/abs/1810.04805v2
[4] Mandar Joshi, Danqi Chen, Yinhan Liu, Daniel S. Weld, Luke Zettlemoyer, and Omer Levy, "SpanBERT: Improving Pre-training by Representing and Predicting Spans," Transactions of the Association for Computational Linguistics.January 2020 https://direct.mit.edu/tacl/article/doi/10.1162/tacl_a_00300/43539/SpanBERT-Improving-Pre-training-by-Representing
[5] https://www.theverge.com/2019/5/9/18538194/google-duplex-ai-restaurants-experiences-review-robocalls
[6] Daniel Zhang, Saurabh Mishra, Erik Brynjolfsson, John Etchemendy, Deep Ganguli, Barbara Grosz, Terah Lyons, James Manyika, Juan Carlos Niebles, Michael Sellitto, Yoav Shoham, Jack Clark, and Raymond Perrault, “The AI Index 2021 Annual Report,” AI Index Steering Committee, Human-Centered AI Institute, Stanford University, Stanford, CA, March 2021 p. 49 https://aiindex.stanford.edu/wp-content/uploads/2021/03/2021-AI-Index-Report_Master.pdf
[7] https://www.washingtonpost.com/world/facial-recognition-china-tech-data/2021/07/30/404c2e96-f049-11eb-81b2-9b7061a582d8_story.html
[8] https://twitter.com/pjreddie/status/1230524770350817280
[9] Oriol Vinyals, Igor Babuschkin, Wojciech M. Czarnecki, Michaël Mathieu, Andrew Dudzik, Junyoung Chung, David H. Choi, Richard Powell, Timo Ewalds, Petko Georgiev, Junhyuk Oh, Dan Horgan, Manuel Kroiss, Ivo Danihelka, Aja Huang, Laurent Sifre, Trevor Cai, John P. Agapiou, Max Jaderberg, Alexander S. Vezhnevets, Rémi Leblond, Tobias Pohlen, Valentin Dalibard, David Budden, Yury Sulsky, James Molloy, Tom L. Paine, Caglar Gulcehre, Ziyu Wang, Tobias Pfaff, Yuhuai Wu, Roman Ring, Dani Yogatama, Dario Wünsch, Katrina McKinney, Oliver Smith, Tom Schaul, Timothy Lillicrap, Koray Kavukcuoglu, Demis Hassabis, Chris Apps, and David Silver, "Grandmaster level in StarCraft II using multi-agent reinforcement learning," Nature Volume 575, October 2019 https://www.nature.com/articles/s41586-019-1724-z
[10] Max Jaderberg, Wojciech M. Czarnecki, Iain Dunning, Luke Marris, Guy Lever, Antonio Garcia Castañeda, Charles Beattie, Neil C. Rabinowitz, Ari S. Morcos, Avraham Ruderman, Nicolas Sonnerat, Tim Green, Louise Deason, Joel Z. Leibo, David Silver, Demis Hassabis, Koray Kavukcuoglu, and Thore Graepel, "Human-level performance in 3D multiplayer games with population-based reinforcement learning," Science, May 2019 https://science.sciencemag.org/content/364/6443/859.full
[11] https://www.darpa.mil/news-events/2020-08-07
[12] https://www.washingtonpost.com/science/2019/07/11/ruthless-superhuman-poker-playing-computer-program-makes-elite-players-fold/
[13] David Silver, Julian Schrittwieser, Karen Simonyan, Ioannis Antonoglou, Aja Huang, Arthur Guez, Thomas Hubert, Lucas Baker, Matthew Lai, Adrian Bolton, Yutian Chen, Timothy Lillicrap, Fan Hui, Laurent Sifre, George van den Driessche, Thore Graepel, and Demis Hassabis, "Mastering the game of Go without human knowledge," Nature, Volume 550, October 2017 https://www.nature.com/articles/nature24270
[14] David Silver, Thomas Hubert, Julian Schrittwieser, Ioannis Antonoglou, Matthew Lai, Arthur Guez, Marc Lanctot, Laurent Sifre, Dharshan Kumaran, Thore Graepel, Timothy Lillicrap, Karen Simonyan, and Demis Hassabis, "A general reinforcement learning algorithm that masters chess, shogi, and Go through self-play," Science, December 2018 https://science.sciencemag.org/content/362/6419/1140
[15] https://www.cnbc.com/2020/11/12/boston-dynamics-robot-gathering-data-at-construction-site-in-london.html, https://www.youtube.com/watch?v=wND9goxDVrY
[16] https://www.weforum.org/agenda/2021/08/cassie-the-bipedal-robot-runs-a-5k/
[17] https://en.qxfoodom.com/show-31-199.html
[18] https://response.jp/article/2019/03/14/320121.html, https://www.youtube.com/watch?v=P_zRwq9c8LY, https://www.youtube.com/watch?v=AI0l3ySnAiA
[19] As of May 2021, a draft framework stipulates that autonomous robots under the speed of 15km/h will be legalized. Robotics companies are arguing for 20km/h.
[20] https://www.consumerreports.org/car-safety/cadillac-super-cruise-outperforms-other-active-driving-assistance-systems/
[21] https://www.nytimes.com/2021/05/24/technology/self-driving-cars-wait.html
[22] https://www.forbes.com/sites/bradtempleton/2021/04/29/baidu-launches-robotaxi-service-outside-beijing--how-fully-driverless-is-it-vs-autox
[23] For example, Path.AI, Paige.AI, Arterys.
[24] For example, IDx-DR.
[25] For example, BioMind, PolypDx.
[26] For example, CheXNet.
[27] Michael Anis Mihdi Afnan, Cynthia Rudin, Vincent Conitzer, Julian Savulescu, Abhishek Mishra, Yanhe Liu, and Masoud Afnan, "Ethical Implementation of Artificial Intelligence to Select Embryos in In Vitro Fertilization," April 2021 https://arxiv.org/abs/2105.00060v1
[28] For example, infection risk predictors at Vector, Ontario Tech University, McMaster Children’s Hospital, and Southlake Regional Health Centre.
[29] https://www.washingtonpost.com/health/2019/10/24/racial-bias-medical-algorithm-favors-white-patients-over-sicker-black-patients/
[30] For example, at Vector and St. Michael’s Hospital and also using other forms of risk (for example, AlgoAnalyzer, TruScore, OptimaAI).
[31] For example, Nuance Dragon, 3M M*Modal, Kara, NoteSwift.
[32] For example, Child Health Improvement.
[33] https://developer.squareup.com/blog/a-peek-into-machine-learning-at-squ…
[34] https://fintechnews.hk/12261/fintechchina/how-wechat-pay-determines-if-you-are-trustworthy-with-their-credit-score
[35] https://ash.harvard.edu/files/ash/files/disciplining_of_a_society_social_disciplining_and_civilizing_processes_in_contemporary_china.pdf
[36] https://www.nerdwallet.com/best/investing/robo-advisors
[37] https://www.ibm.com/downloads/cas/DLJ28XP7
[38] https://www.gpif.go.jp/en/investment/research_2017_1_en.pdf; https://www.gpif.go.jp/en/investment/ai_report_summary_en.pdf
[39] For example, see early research on ``neural collaborative filtering’’, Xiangnan He, Lizi Liao, Hanwang Zhang, Liqiang Nie, Xia Hu, and Tat-Seng Chua, "Neural Collaborative Filtering," August 2017 https://arxiv.org/abs/1708.05031v2; or the use of DNNs for YouTube recommendations https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/45530.pdf
[40] https://developer.spotify.com/discover/
[41] See https://www.cs.toronto.edu/~mvolkovs/recsys2020_challenge.pdf for their use in the 2020 Recommender Systems (RecSys) challenge.
[42] Zhe Zhao, Lichan Hong, Li Wei, Jilin Chen, Aniruddh Nath, Shawn Andrews, Aditee Kumthekar, Maheswaran Sathiamoorthy, Xinyang Yi, and Ed Chi, "Recommending what video to watch next: a multitask ranking system," Proceedings of the 13th ACM Conference on Recommender Systems (RecSys '19) https://dl.acm.org/doi/10.1145/3298689.3346997
[43] https://research.atspotify.com/algorithmic-effects-on-the-diversity-of-consumption-on-spotify/
[44] https://facctrec.github.io/facctrec2020/program/ .

ذکر این گزارش
مایکل ال. لیتمن، ایفوما آجونوا، گای برگر، کریگ بوتلیه، مورگان کوری، فیناله دوشی-ولز، گیلیان هادفیلد، مایکل سی. هوروویتز، چارلز ایزبل، هیرواکی کیتانو، کارن لوی، ترا لیونز، ملانی میچل، جولی شاه، استیون اسلومان، شانون والور و توبی والش. "جمع‌آوری قدرت، جمع‌آوری طوفان‌ها: مطالعه صد ساله هوش مصنوعی (AI100) گزارش پانل مطالعه 2021." دانشگاه استنفورد، استنفورد، کالیفرنیا، سپتامبر 2021. سند: http://ai100.stanford.edu/2021-report. دسترسی: 16 سپتامبر 2021.

نویسندگان گزارش
کمیته دائمی و پانل مطالعه AI100
حق چاپ
© 2021 توسط دانشگاه استنفورد. جمع‌آوری قدرت، جمع‌آوری طوفان‌ها: گزارش پانل مطالعه صد ساله هوش مصنوعی (AI100) 2021 تحت مجوز Creative Commons Attribution-NoDerivatives 4.0 (بین‌المللی) در دسترس است: https://creativecommons.org/licenses/by-nd/4.0/.


چگونه هوش مصنوعی اکتشافات علمی را تسریع می‌کند

دانشمندان از هوش مصنوعی برای طراحی پروتئین‌های مصنوعی استفاده می‌کنند به این امید که روند کشف را سرعت بخشد. ایان سی هایدون/ موسسه طراحی پروتئین UW *پنهان کردن عنوان*
*تغییر عنوان*
ایان سی هایدون/ موسسه طراحی پروتئین UW

دانشمندان از هوش مصنوعی برای طراحی پروتئین‌های مصنوعی استفاده می‌کنند به این امید که روند کشف را سرعت بخشد.
ایان سی هایدون/ موسسه طراحی پروتئین UW
هوش مصنوعی می‌تواند برنامه‌های کامپیوتری را کدنویسی کند، نقاشی بکشد و حتی برای پزشکان یادداشت بردارد. اکنون، محققان از این امکان هیجان‌زده هستند که هوش مصنوعی فرآیند علمی را تسریع کند - از طراحی سریع‌تر دارو گرفته تا توسعه فرضیه‌های جدید در آینده.
گزارشگر علمی جف برومفیل با مجری، رجینا باربر، در مورد بازدیدش از یک آزمایشگاه پروتئین که در حال مشاهده نتایج امیدوارکننده است، صحبت می‌کند.
برای خواندن داستان کامل جف اینجا کلیک کنید.
به Short Wave در Spotify، Apple Podcasts و Google Podcasts گوش دهید.
سوالات مربوط به هوش مصنوعی دارید؟ سوالات خود را به آدرس shortwave@npr.org برای ما ارسال کنید.
این قسمت توسط برلی مک‌کوی تهیه و توسط ربکا رامیرز ویرایش شده است. جف برومفیل حقایق را بررسی کرد و مگی لوثار مهندس صدا بود.


در دنیای امروز، کدهای QR همه‌جا هستند و به طور یکپارچه قلمروهای آفلاین و آنلاین را به هم متصل می‌کنند. اما دقیقاً وسعت امکانات موجود در این ماتریس‌های فشرده چقدر است؟ این مقاله به عظمت ریاضی پشت ترکیبات کدهای QR می‌پردازد و پتانسیل بی‌نهایت آن‌ها را نشان می‌دهد. با بررسی عملکرد و سطوح تصحیح خطا، نه تنها اعداد، بلکه یک چشم‌انداز بی‌کران از نوآوری در قلمرو دیجیتال خود را کشف می‌کنیم.
چند ترکیب ممکن است؟
محاسبه دقیق تعداد ترکیبات ممکن برای کدهای QR به دلیل متغیرهای دخیل (نسخه، حالت، سطح تصحیح خطا) پیچیده است. با این حال، اگر فقط ظرفیت داده را به شکل ساده در نظر بگیریم، تعداد ترکیبات حتی برای مجموعه داده‌های کوچک نیز نجومی می‌شود.
💡
به عنوان مثال، اگر فقط یک کد QR را در نظر بگیریم که بتواند 1 بایت اطلاعات (8 بیت) را در خود جای دهد، 2^8 = 256 ترکیب ممکن وجود خواهد داشت. برای ظرفیت‌های داده بزرگتر، تعداد ترکیبات به صورت تصاعدی افزایش می‌یابد و منجر به تعداد بسیار زیادی از احتمالات می‌شود، به خصوص زمانی که طیف کاملی از کاراکترها و انواع داده‌هایی که می‌توانند رمزگذاری شوند را در نظر بگیرید.

کد QR شماره تلفن
کد QR آدرس اینترنتی
کد QR شبکه Wi-Fi
کد QR پیامک
کد QR ایمیل
کد QR کارت ویزیت (اطلاعات تماس)
کد QR رویداد (vCalendar)
کد QR موقعیت مکانی (Geolocation)
کد QR آدرس ارز دیجیتال
کد QR پروفایل رسانه‌های اجتماعی

مثال‌ها

کد QR فقط عددی: یک کد QR حاوی یک دنباله عددی مانند 1234567890.
کد QR حروف عددی: یک کد QR که یک رشته حروف عددی مانند HELLO WORLD را ذخیره می‌کند.
کد QR بایت/دودویی: یک کد QR حاوی داده‌های باینری، مانند یک تصویر کوچک یا قطعه فایل.
کد QR کانجی: یک کد QR طراحی شده برای ذخیره کاراکترهای ژاپنی به طور موثر.

یک کد QR (پاسخ سریع) یک بارکد دو بعدی است که می‌تواند اطلاعات را ذخیره کند. میزان داده‌ای که یک کد QR می‌تواند در خود جای دهد به نسخه (اندازه) کد QR و حالت (عددی، حروف عددی، بایت/دودویی یا کانجی) مورد استفاده برای رمزگذاری داده‌ها بستگی دارد. کدهای QR از مجموعه استانداردی از مشخصات پیروی می‌کنند که امکان ترکیب‌ها و اندازه‌های مختلف را فراهم می‌کند.
نسخه‌ها و ظرفیت کدهای QR
کدهای QR از نسخه 1 تا نسخه 40 متغیر هستند:

نسخه 1 یک ماتریس 21x21 است.
نسخه 40 یک ماتریس 177x177 است.
هر افزایش در شماره نسخه، ابعاد ماتریس مربع را در هر طرف 4 ماژول افزایش می‌دهد.

ظرفیت داده
حداکثر ظرفیت داده یک کد QR به نوع داده و سطح تصحیح خطا (L، M، Q، H) استفاده شده بستگی دارد:

فقط عددی: تا 7089 کاراکتر
حروف عددی: تا 4296 کاراکتر
بایت/دودویی (ISO 8859-1): تا 2953 بایت
کانجی/کانا: تا 1817 کاراکتر

در دنیای امروز که با پیشرفت‌های دیجیتال هدایت می‌شود، کدهای QR تقریباً همه‌جا هستند. این ماتریس‌های کوچک و مربع شکل به عنوان مترجمان قدرتمندی از اطلاعات ظاهر شده‌اند و از قلمروهای منوهای رستوران، درگاه‌های پرداخت، بلیط‌های حمل و نقل و موارد دیگر گسترش یافته‌اند.
اهمیت و رشد استفاده از کدهای QR در بخش‌های مختلف
اهمیت عظیم در قدرت آن‌ها برای ایجاد پل موثر بین اکوسیستم‌های آفلاین و آنلاین نهفته است. کدهای QR در بخش‌های خرده فروشی، بازاریابی، لجستیک و حتی در حوزه‌های ارتباطات و تأیید اسناد ابزاری شده‌اند. سادگی آن‌ها، همراه با تطبیق‌پذیری باورنکردنی، آن‌ها را به دارایی انکارناپذیری در عصر دیجیتال تبدیل کرده است.
| بخش | اهمیت کدهای QR | رشد استفاده |
| --- | --- | --- |
| خرده فروشی | تسهیل دسترسی یکپارچه به اطلاعات محصول | ادغام برای پرداخت‌های بدون تماس و برنامه‌های وفاداری |
| بازاریابی | تعامل بیشتر مصرف‌کننده از طریق محتوای تعاملی | ادغام با تبلیغات برای دسترسی فوری |
| لجستیک | ساده‌سازی مدیریت و ردیابی موجودی | ادغام با برچسب‌های حمل و نقل برای به‌روزرسانی‌های بی‌درنگ |
| ارتباطات | دسترسی سریع به وب‌سایت‌ها، اطلاعات تماس و تبلیغات | ادغام با کارت‌های ویزیت و شبکه‌سازی دیجیتال |
| تأیید اسناد | ارائه احراز هویت و تأیید امن | ادغام با بلیط‌ها، کارت‌های سوار شدن و شناسنامه‌ها |

درک کدهای QR
کد QR چیست؟
یک کد QR یا کد پاسخ سریع، یک بارکد دو بعدی است که قادر به نگهداری حجم‌های گسترده‌ای از داده است.
عملکرد

ذخیره‌سازی پیشرفته: کدهای QR می‌توانند اطلاعات بیشتری نسبت به بارکدهای سنتی ذخیره کنند.
سهولت اسکن: به لطف تلفن‌های هوشمند، کدهای QR به راحتی قابل اسکن هستند و کاربرد گسترده‌ای دارند.

مقایسه: کد QR در مقابل بارکد سنتی
| ویژگی | کد QR | بارکد سنتی |
| --- | --- | --- |
| ظرفیت داده | بالاتر | پایین‌تر |
| فرمت | دو بعدی | یک بعدی |
| اسکن | نیاز به تلفن هوشمند | نیاز به اسکنر تخصصی |
| دامنه کاربرد | کاربرد گسترده به دلیل استفاده از تلفن هوشمند | محدود به سیستم‌ها/دستگاه‌های خاص |
کاربردها

بازاریابی: کدهای QR در کمپین‌های تبلیغاتی برای دسترسی آسان به اطلاعات بیشتر یا پیشنهادات تبلیغاتی استفاده می‌شوند.
خرده فروشی: در خرده فروشی، کدهای QR امکان بازیابی سریع اطلاعات محصول یا پرداخت را فراهم می‌کنند.
صدور بلیط: خطوط هوایی، رویدادها و خدمات حمل و نقل از کدهای QR برای صدور بلیط و کارت‌های سوار شدن استفاده می‌کنند.
مراقبت‌های بهداشتی: برای شناسایی بیمار، دسترسی به سوابق پزشکی و ردیابی دارو استفاده می‌شود.

کدهای QR به دلیل ظرفیت ذخیره‌سازی پیشرفته و سهولت استفاده، در صنایع مختلف فراگیر شده‌اند و نحوه دسترسی به داده‌ها و تعامل با آن‌ها را متحول کرده‌اند.
انواع کدهای QR و نقش هر نوع
💡
برای دیدن انواع کدهای QR، لیست پخش زیر را بررسی کنید
کدهای QR در دو نوع متمایز - ایستا و پویا - وجود دارند. یک کد QR ایستا حاوی داده‌های ثابت است. پس از تولید، نمی‌توان محتوای آن را تغییر داد. در مقابل، کدهای QR پویا یک URL را ذخیره می‌کنند که به اطلاعات رمزگذاری شده منتهی می‌شود و امکان تغییر داده‌ها را بدون نیاز به تغییر کد فیزیکی فراهم می‌کند - یک مزیت قابل توجه هنگام برخورد با اطلاعات سیال.
بررسی سریع: تولید کدهای QR
می‌توانید به راحتی با استفاده از qrcode.co.uk کد QR تولید کنید
ورودی داده و رمزگذاری:

داده‌هایی که باید در کد QR رمزگذاری شوند را وارد کنید.
داده‌ها را به یک دنباله باینری از 1 و 0 رمزگذاری کنید.

تبدیل دنباله باینری:

دنباله باینری را به صورت یک شبکه از ماژول‌های مربع سیاه و سفید نشان دهید.
الگوی مربع‌هایی را که داده‌ها را رمزگذاری می‌کنند، تعیین کنید.

تصحیح خطا:

اطلاعات تصحیح خطا را اضافه کنید تا از یکپارچگی داده‌ها اطمینان حاصل شود.
به کد QR اجازه دهید حتی در صورت مبهم یا آسیب‌دیده، کاربردی باقی بماند.

تولید الگوی QR:

از دنباله باینری رمزگذاری شده و اطلاعات تصحیح خطا استفاده کنید.
الگوی QR را با یک ترتیب خاص از مربع‌های سیاه و سفید تولید کنید.

ظرفیت کد QR
توضیح ظرفیت در هر بعد

ظرفیت اطلاعات و نسخه‌های کد QR
| نسخه کد QR | اندازه شبکه | حداکثر ظرفیت داده |
| --- | --- | --- |
| نسخه 1 | 21x21 ماژول | متغیر |
| نسخه 40 | 177x177 ماژول | 7089 کاراکتر عددی یا 2953 بایت باینری |

تعریف ظرفیت کد QR: ظرفیت یک کد QR به شدت به نسخه یا اندازه آن بستگی دارد.
نسخه‌های کد QR: کدهای QR از نسخه 1 تا نسخه 40 متغیر هستند و اندازه‌های شبکه متفاوتی دارند.
افزایش ظرفیت داده: هر نسخه بعدی از کد QR می‌تواند داده‌های بیشتری را به دلیل اندازه شبکه بزرگتر در خود جای دهد.
مثال: ظرفیت نسخه 40: نسخه 40 از کد QR می‌تواند تا 7089 کاراکتر عددی یا 2953 بایت داده باینری را ذخیره کند.

نقش سطوح تصحیح خطا (ECL) در ظرفیت کدهای QR
نقش تصحیح خطا:

تصحیح خطا برای حفظ عملکرد حتی در صورت تحریف یا آسیب‌دیدگی یک کد QR ضروری است.
این اطمینان می‌دهد که داده‌های رمزگذاری شده می‌توانند به طور دقیق بازیابی شوند، حتی در شرایط اسکن کمتر از ایده‌آل.

سطح تصحیح خطا (ECL):

کدهای QR از سطوح تصحیح خطای مختلفی استفاده می‌کنند که با Low، Medium، Quartile و High نشان داده می‌شوند.
هر سطح درجه متفاوتی از داده‌های افزونگی را برای تسهیل بازیابی خطا ارائه می‌دهد.

تأثیر بر ظرفیت:

انتخاب سطح تصحیح خطا به طور مستقیم بر ظرفیت کد QR تأثیر می‌گذارد.
سطوح تصحیح خطای بالاتر به داده‌های افزونگی بیشتری نیاز دارند و در نتیجه ظرفیت ذخیره‌سازی کلی کد QR را کاهش می‌دهند.

تنظیم ظرفیت:

ظرفیت کد QR بر اساس سطح تصحیح خطای انتخاب شده تنظیم می‌شود.
سطوح تصحیح خطای پایین‌تر ظرفیت داده بالاتری را ارائه می‌دهند اما بازیابی خطای کمتری را ارائه می‌دهند، در حالی که سطوح بالاتر ظرفیت را برای بهبود تصحیح خطا قربانی می‌کنند.

مثال:

ECL پایین: 7٪ از کد QR قابل بازیابی است.
ECL متوسط: قابلیت بازیابی 15٪.
ECL چارکی: بازیابی 25٪.
ECL بالا: بازیابی 30٪.

نتیجه‌گیری: سطوح تصحیح خطا در کدهای QR، تعادل بین ظرفیت داده و قابلیت بازیابی خطا را تعیین می‌کنند. با انتخاب ECL مناسب، کاربران می‌توانند کدهای QR را متناسب با نیازهای خاص خود برای ذخیره‌سازی داده و قابلیت اطمینان تنظیم کنند.
نمایش ظرفیت با استفاده از اینفوگرافیک

اندازه کد QR: اندازه حداقل، اندازه حداکثر و موارد دیگر
ترکیبات کد QR: ریاضیات
درک احتمالات ترکیب کد QR
گستردگی ترکیبات کد QR:

تعداد ترکیبات ممکن کد QR به طرز باورنکردنی زیاد است، تقریباً غیرقابل تصور.
برای نشان دادن، محاسبات نشان می‌دهد که تعداد کدهای QR بالقوه چندین برابر بیشتر از تعداد دانه‌های شن روی زمین است.

توضیح ریاضی:

برای یک کد QR نسخه 40 واحد که قادر به ذخیره تا 7089 رقم عددی است، تعداد ترکیبات در یک سطح ابتدایی 107089107089 (10 به توان 7089) خواهد بود، با در نظر گرفتن فقط داده‌های عددی.

عواملی که بر ترکیبات تأثیر می‌گذارند:

سطح تصحیح خطا (ECL): ECLهای مختلف بر تعداد ترکیبات ممکن تأثیر می‌گذارند.
نسخه‌های کد QR: هر نسخه کد QR تعداد متفاوتی از ماژول‌ها را ارائه می‌دهد و بر احتمالات ترکیبی تأثیر می‌گذارد.
انواع داده رمزگذاری شده: انواع مختلف داده (عددی، حروف عددی، باینری یا کانجی) بر ترکیبات بالقوه تأثیر می‌گذارند.

بررسی موارد استفاده: قلمرو بی‌نهایت کدهای QR
مثال‌های واقعی از کاربردهای متنوع کد QR
از هدایت مجدد URL سنتی تا ناوبری خودکار پهپادهای آینده‌نگر، قلمروهای کاربردی بی‌نهایت کدهای QR هنوز به طور کامل مورد بررسی قرار نگرفته‌اند. به عنوان مثال، بلیط‌های رویداد، کارت‌های وفاداری، ورود به Wi-Fi، حساب‌های ایمیل، موقعیت مکانی - هر یک از آن‌ها را می‌توان به طور یکپارچه در کدهای QR رمزگذاری کرد.
بحث در مورد اینکه چرا ترکیبات تقریباً نامحدود کدهای QR برای نوآوری‌های آینده ضروری هستند
اقیانوس ترکیبات، انعطاف‌پذیری و تطبیق‌پذیری کدهای QR را که کاربردهایی در بخش‌ها و اهداف مختلف پیدا کرده‌اند، نشان می‌دهد. ترکیبات بیشتر به این معنی است که کدهای QR می‌توانند متناسب با نیازها و الزامات منحصربه‌فرد هر مورد استفاده تنظیم شوند.
اینستاگرام، اسنپ‌چت و سایر برنامه‌ها و استفاده خلاقانه آن‌ها از کدهای QR

اینستاگرام کدهای QR را به صورت جهانی راه‌اندازی می‌کند و به مردم اجازه می‌دهد از هر برنامه دوربین به یک پروفایل دسترسی پیدا کنند
اینستاگرام و اسنپ‌چت با تعبیه آن‌ها در پروفایل‌های کاربری برای اشتراک‌گذاری و افزودن آسان، استفاده از کد QR را متحول کرده‌اند. 'Nametags' و 'Snapcodes' برای تسهیل فرآیند اتصال بین کاربران طراحی شده‌اند، که یک استفاده هوشمندانه از فناوری کد QR است.
آینده کدهای QR
روندهای فعلی در فناوری کد QR
ماهیت پویا:

فناوری کد QR، مانند هر فناوری دیگری، در معرض تکامل و تغییر است.
روندهای فعلی نشان‌دهنده یک تغییر قابل توجه در نحوه استفاده از کدهای QR است.

روندهای نوظهور:

عملکرد پیشرفته: کدهای QR در حال تکامل فراتر از ذخیره‌سازی اطلاعات اساسی برای ارائه عملکردهای پیشرفته مانند پرداخت‌های امن، احراز هویت و تجربیات واقعیت افزوده هستند.
ادغام با اینترنت اشیا: کدهای QR به طور فزاینده‌ای با دستگاه‌های اینترنت اشیا (IoT) ادغام می‌شوند و تعامل و تبادل داده یکپارچه را امکان‌پذیر می‌کنند.
راه حل‌های بدون تماس: در میان همه‌گیری COVID-19، کدهای QR برای تراکنش‌های بدون تماس، دسترسی به منو و بررسی سلامت محبوبیت بیشتری پیدا کرده‌اند.

هموار کردن راه برای پیچیدگی‌های آینده:

روندهای فعلی در استفاده از کد QR نشان‌دهنده مسیری به سمت پیچیدگی‌های آینده است.
نوآوری و پذیرش مداوم فناوری کد QR احتمالاً منجر به کاربردها و عملکردهای پیشرفته‌تری خواهد شد.

روندهای آینده و پتانسیل پیشرفت
با پذیرش سریع هوش مصنوعی و پیشرفت‌های AR در صنعت، سپیده‌دم کدهای QR 'هوشمند' و 'واقعیت افزوده' نزدیک‌تر از همیشه به نظر می‌رسد. این‌ها امکان تعامل بیشتر، تعامل کاربر و قابلیت داده را فراهم می‌کنند.
تأثیر داشتن ترکیبات بی‌نهایت کد QR برای نوآوری‌های آینده
با حرکت به سمت نوآوری‌های آینده، ترکیبات بی‌نهایت کد QR احتمالاً سنگ بنای توسعه خواهند بود. با هر ترکیب منحصر به فرد، پتانسیل کشف نشده‌ای وجود دارد که آماده بررسی است.
نتیجه‌گیری
خلاصه‌ای از نکات کلیدی وبلاگ

امکانات کدهای QR، اگرچه کاملاً نامحدود نیست، اما به طرز باورنکردنی گسترده است. همانطور که ما ایجاد، محاسبه و ظرفیت کدهای QR را بررسی کردیم، درک می‌کنیم که این الگوهای مربع کوچک جذاب چگونه پتانسیل بی‌نهایتی را منعکس می‌کنند.

با تسریع تحول دیجیتال، اهمیت این الگوهای مربع کوچک به طور فزاینده‌ای افزایش خواهد یافت. بدون شک، کدهای QR به کلیدهایی برای باز کردن یک دنیای دیجیتال بی‌سابقه تبدیل شده‌اند، دنیایی که تنها با تخیل ما محدود شده است.


لیست مجلات
J Imaging
PMC8321072

چکیده
کدهای QR (پاسخ سریع) یکی از محبوب‌ترین انواع کدهای ماتریسی دو بعدی (2D) هستند که در حال حاضر در طیف گسترده‌ای از زمینه‌ها استفاده می‌شوند. کدهای ماتریسی دو بعدی، در مقایسه با بارکدهای یک بعدی (1D)، می‌توانند داده‌های بسیار بیشتری را در یک منطقه یکسان رمزگذاری کنند. ما الگوریتم‌هایی را که قادر به مکان‌یابی چندین کد QR در یک تصویر با استفاده از الگوهای یابنده معمولی هستند، که در سه گوشه یک کد QR وجود دارند، مقایسه کرده‌ایم. در نهایت، ما یک رویکرد جدید برای شناسایی اعوجاج پرسپکتیو با تجزیه و تحلیل جهت لبه‌های افقی و عمودی و با به حداکثر رساندن انحراف معیار پیش‌بینی‌های افقی و عمودی این لبه‌ها ارائه می‌دهیم. این الگوریتم از نظر محاسباتی کارآمد است، به خوبی برای تصاویر با وضوح پایین کار می‌کند و برای پردازش بلادرنگ نیز مناسب است.
کلمات کلیدی: تشخیص کد QR، مکان‌یابی کد پاسخ سریع، آستانه‌گذاری تطبیقی، الگوی یابنده، اعوجاج پرسپکتیو، پیش‌بینی لبه
1. مقدمه
کدهای ماتریسی دو بعدی (2D) راهی برای ذخیره کارآمد داده‌هایی هستند که توسط ماشین قابل خواندن هستند. به لطف گسترش زیاد تلفن‌های هوشمند، کدهای ماتریسی دو بعدی در بسیاری از زمینه‌های زندگی و صنعت کاربرد پیدا کرده‌اند. کد QR (پاسخ سریع) در سال 1994 توسط Denso Wave برای صنعت خودرو در ژاپن اختراع شد، اما امروزه کاربرد بسیار گسترده‌تری دارد. آنها به طور گسترده در بخش‌هایی مانند تولید، لجستیک، فروش، رسانه، تبلیغات، گردشگری، تجارت الکترونیک، شناسایی و احراز هویت استفاده می‌شوند [1،2]. کد QR اغلب حاوی اطلاعات اضافی در مورد محصول، شی یا مکانی است که در آن قرار دارد. با این حال، آنها همچنین می‌توانند یک URL به یک صفحه وب، مختصات سیستم موقعیت‌یابی جهانی (GPS)، اطلاعات تماس، آدرس تحویل، دستورالعمل‌های پرداخت و غیره باشند.
کدهای QR متعلق به گروهی از کدهای ماتریسی دو بعدی هستند (به طور مشابه کدهای ماتریس داده). کد QR سنتی (مدل 1 و مدل 2 کد QR) شکل مربعی دارد و در سه گوشه آن الگوهای مربعی معمولی وجود دارد - الگوهای یابنده (FP) که برای مکان‌یابی کد و تعیین ابعاد و چرخش آن استفاده می‌شوند. کد QR به شرح زیر ساختار یافته است (شکل 1).

نسخه 2: کد QR پاسخ سریع با 25 × 25 ماژول.

ماژول - کوچکترین عنصر سازنده یک کد QR که توسط یک مربع کوچک تیره یا روشن نشان داده می‌شود. یک ماژول نشان دهنده یک بیت است: معمولاً، ماژول تیره برای "1" و ماژول روشن برای "0". ماژول‌ها در ردیف‌ها و ستون‌ها سازماندهی شده و یک ماتریس مربع تشکیل می‌دهند.
الگوهای یابنده - که به آنها الگوهای تشخیص موقعیت نیز گفته می‌شود، در سه گوشه یک کد QR قرار دارند. هر الگوی یابنده از یک مربع تیره داخلی (به اندازه 3 × 3 ماژول) تشکیل شده است که توسط یک قاب تیره (به اندازه 7 × 7 ماژول) احاطه شده است. الگوهای یابنده با یک ناحیه روشن به عرض یک ماژول از بقیه یک کد QR جدا شده‌اند. الگوهای یابنده توسط خواننده‌ها برای تعیین موقعیت و جهت‌گیری یک کد QR استفاده می‌شوند.
الگوهای زمان‌بندی - این الگوها در داخل یک کد QR قرار دارند و الگوهای یابنده را به هم متصل می‌کنند. الگوهای زمان‌بندی از توالی ماژول‌های تیره و روشن متناوب تشکیل شده‌اند. از الگوی زمان‌بندی برای تعیین اندازه یک ماژول، تعداد ردیف‌ها و ستون‌ها و اعوجاج احتمالی یک کد استفاده می‌شود.
الگوهای هم‌ترازی - ممکن است هیچ الگوی هم‌ترازی وجود نداشته باشد یا بسته به نسخه یک کد QR (نسخه 1 کد QR هیچ الگوی هم‌ترازی ندارد) بیشتر وجود داشته باشد. آنها به دستگاه اسکن اجازه می‌دهند تا اعوجاج پرسپکتیو تصویر کد QR را تعیین کند.
اطلاعات قالب - این شامل اطلاعات اضافی مانند سطح تصحیح خطا استفاده شده (4 گزینه) یا عدد الگوهای ماسک (7 گزینه) است که برای رمزگشایی یک کد QR مورد نیاز است.
ناحیه ساکت - این یک ناحیه سفید به عرض حداقل چهار ماژول است که در اطراف یک کد QR قرار دارد (در عمل، عرض اغلب کمتر از چهار ماژول است، همانطور که توسط استاندارد مورد نیاز است). ناحیه ساکت نباید حاوی هیچ الگویی یا ساختاری باشد که بتواند خواننده‌ها را گیج کند.
داده‌ها - آنها در داخل یک کد QR رمزگذاری شده‌اند و توسط یک تصحیح خطا از طریق الگوریتم Reed-Solomon محافظت می‌شوند (به بازگرداندن داده‌های آسیب‌دیده اجازه می‌دهد). این بدان معناست که یک کد QR می‌تواند تا حدی آسیب دیده باشد و هنوز هم به طور کامل خوانده شود. کدهای QR چهار سطح قابل انتخاب برای تصحیح خطا ارائه می‌دهند: L (پایین)، M (متوسط)، Q (چهارک) و H (بالا). این بدان معناست که تا تقریباً 7٪، 15٪، 25٪ و 30٪ از کلمات کد آسیب‌دیده، می‌توانند بازیابی شوند [3]. افزایش سطح تصحیح خطا، ظرفیت داده موجود یک کد QR را کاهش می‌دهد.

کدهای QR در 40 نسخه مختلف موجود هستند (نسخه 1 یک کد QR با 21 × 21 ماژول و نسخه 40 یک کد QR با 177 × 177 ماژول را نشان می‌دهد. رابطه بین اندازه و نسخه را می‌توان به صورت زیر بیان کرد: Size = 21 + (Version − 1) × 4).
هر نسخه کد QR حداکثر ظرفیت داده را با توجه به مقدار داده، نوع کاراکتر و سطح تصحیح خطا دارد. به عنوان مثال، ظرفیت 10 کاراکتر الفبایی عددی (جایگزین 17 عددی) در یک کد QR از حداقل نسخه 1 (اندازه 21 × 21 ماژول) وجود دارد و ظرفیت تا 1852 کاراکتر الفبایی عددی (جایگزین 3057 عددی) در حداکثر نسخه 40 (اندازه 177 × 177 ماژول) در بالاترین سطح تصحیح خطا وجود دارد [3]. کدهای QR می‌توانند کاراکترهای عددی، الفبایی عددی، کاتاکانا و همچنین داده‌های باینری را رمزگذاری کنند.
بقیه این مقاله به شرح زیر سازماندهی شده است: در بخش 2 مروری مختصر بر روش‌های منتشر شده قبلی ارائه شده است، در بخش 3 دو روش مکان‌یابی الگوی یابنده خلاصه شده است، در بخش 4 رویکرد جدیدی برای شناسایی اعوجاج پرسپکتیو با تجزیه و تحلیل جهت لبه‌های افقی و عمودی و با به حداکثر رساندن انحراف معیار پیش‌بینی‌های افقی و عمودی این لبه‌ها ارائه شده است و در بخش 5 نتایج تجربی ارائه شده است.
2. کارهای مرتبط
رویکردهای مختلفی برای تشخیص کد QR در تصاویر در گذشته منتشر شده است. ما می‌توانیم آنها را به سه گروه اصلی تقسیم کنیم.
2.1. روش‌های مکان‌یابی مبتنی بر الگوی یابنده
گروه اول از ویژگی‌های سه الگوی یابنده معمولی (شکل 1 و شکل 3) برای مکان‌یابی یک کد QR استفاده می‌کند.
شکل الگوی یابنده (مربع در قاب، شکل 3) عمداً توسط مخترعان کد QR انتخاب شد زیرا "این الگویی بود که بعید است در انواع فرم‌های تجاری و غیره ظاهر شود" [4]. آنها نمونه‌های بی‌شماری از مواد چاپی را بررسی کردند و کمترین نسبت نواحی سیاه و سفید را در مواد چاپی پیدا کردند. این نسبت 1:1:3:1:1 (B:W:BBB:W:B) صرف نظر از زاویه اسکن بود.
در Lin و Fuh [5] یک تصویر باینری به صورت افقی و سپس به صورت عمودی اسکن می‌شود تا تمام نقاطی که با نسبت‌های 1:1:3:1:1 مطابقت دارند، پیدا شوند. سپس نقاط متعلق به FP یکسان با هم ترکیب می‌شوند و زاویه بین سه FP بررسی می‌شود.
در Li et al. [6] اجزای متصل در یک تصویر باینری با استفاده از کدگذاری طول اجرا بر اساس ردیف فشرده می‌شوند. سپس نسبت‌های معمولی FP ردیف به ردیف جستجو می‌شوند. FPهای یافت شده یک منطقه حداقل حاوی را تعیین می‌کنند که در آن نقاط پیش‌زمینه برای نسبت‌های 1:3:1 با استفاده از الگوریتم Knuth-Morris-Pratt اصلاح شده برای اکتشاف سریع جستجو می‌شوند تا مختصات مرکز FP محاسبه شود.
در Belussi و Hirata [7] آنها از یک آبشار طبقه‌بندهای ضعیف آموزش‌دیده در الگوهای یابنده کد QR استفاده می‌کنند (روش تشخیص سریع اشیاء Viola-Jones و ویژگی‌های Haar استخراج شده در پنجره شناور استفاده می‌شوند). در مرحله دوم، روابط هندسی بین الگوهای یابنده شناسایی شده برای تأیید اینکه آیا زیرگروه‌هایی از سه مورد به صورت گوشه‌های مربعی وجود دارند، تجزیه و تحلیل می‌شوند.
در Bodnár و Nyúl [8] آنها همچنین از طبقه‌بندهای آبشاری با استفاده از ویژگی‌های Haar، الگوهای باینری محلی و گرادیان‌های جهت‌دار هیستوگرام آموزش‌دیده برای الگوهای یابنده کدهای QR و همچنین برای کل منطقه کد (همچنین در مقیاس‌های متعدد) استفاده می‌کنند. فرآیند آموزش بسیار زمان‌بر بود.
در Tribak و Zaz [9] اسکن‌های افقی و عمودی اولیه برای مکان‌یابی الگوهای QR اولیه انجام می‌شود و سپس از روش تجزیه مؤلفه‌های اصلی (PCA) برای حذف مثبت‌های کاذب استفاده می‌شود.
در Tribak و Zaz [10] به جای PCA، نویسندگان از 7 لحظه ثابت Hu به عنوان توصیف‌گرهای ویژگی استفاده می‌کنند تا FPهای مکان‌یابی اولیه شوند. بردار ویژگی به دست آمده با استفاده از فاصله اقلیدسی با بردارهای ویژگی مجموعه نمونه‌های آموزشی مقایسه می‌شود.
2.2. روش‌های مکان‌یابی مبتنی بر ویژگی‌های محلی با رشد ناحیه
روش‌های گروه دوم ویژگی‌های خاصی را از یک تصویر در یک پنجره شناور استخراج می‌کنند و این ویژگی‌ها در برابر ویژگی‌های نمونه بررسی می‌شوند. مناطق یک تصویر که به عنوان مناطق کاندید کد QR طبقه‌بندی می‌شوند، در مناطق بزرگتر ادغام می‌شوند. ویژگی‌های محلی می‌توانند از هیستوگرام پنجره Ciążyński و Fabijańska [11] یا از HOG (هیستوگرام گرادیان‌های جهت‌دار)، زوایای دو جهت گرادیان اصلی، تعداد پیکسل‌های لبه و تخمین امتیاز احتمال ساختار شبیه صفحه شطرنج Szentandrási et al. [12] ساخته شوند.
2.3. روش‌های مکان‌یابی مبتنی بر اجزای متصل
گروه سوم از روش‌ها سعی می‌کنند کد QR را به عنوان یک کل تشخیص دهند. معمولاً بر این واقعیت استوار است که یک کد QR از مربع‌های سیاه کوچک زیادی تشکیل شده است که نسبتاً به یکدیگر نزدیک هستند [13،14،15]. معمولاً، فرسایش و اتساع مورفولوژیکی برای اتصال این مربع‌های کوچک به یک شیء یکپارچه و حذف اشیاء کوچک اعمال می‌شوند. Gaur و Tiwari [13] پیشنهاد کردند که از آشکارساز لبه Canny همراه با عملیات مورفولوژیکی استفاده شود. Kong [14] تشخیص گوشه هریس را با الگوریتم پوش محدب ترکیب کرد تا طرح کلی چهارضلعی خارجی یک کد QR به دست آید. در Sun et al. [15] محققان الگوریتمی را معرفی می‌کنند که هدف آن یافتن ناحیه کد QR با تشخیص چهار گوشه بارکد دو بعدی است. آنها تشخیص لبه Canny را با الگوریتم یافتن کانتور ترکیب می‌کنند.
2.4. روش‌های مکان‌یابی مبتنی بر یادگیری عمیق
Hansen et al. [16] توضیح دادند که چگونه الگوریتم تشخیص شیء مبتنی بر یادگیری عمیق YOLO را برای هدف تشخیص بارکد تطبیق دهند. به طور مشابه، Zharkov و Zagaynov [17] یک آشکارساز سریع و قوی جدید برای بارکدهای 1D و 2D مبتنی بر رویکرد تقسیم معنایی معرفی کردند. شبکه‌های عصبی پیچشی نیز در کارهای [18،19] استفاده شده است.
3. روش‌های مکان‌یابی الگوی یابنده
در پاراگراف‌های زیر، مروری مختصر بر دو روش برای مکان‌یابی کدهای QR که بر اساس یافتن سه الگوی معمولی - الگوهای یابنده - در گوشه‌های کد QR [5،20] استوار هستند، ارائه خواهیم کرد. این سه الگوی یابنده همچنین سه نقطه گوشه‌ای جعبه محدود کد QR را شناسایی می‌کنند. روش تعیین موقعیت گوشه چهارم جعبه مستطیلی که در بخش 4 ارائه می‌کنیم، مشارکت اصلی این مقاله است. گام‌های فردی الگوریتم مکان‌یابی کد QR به صورت شماتیک در شکل 2 نشان داده شده است.

نمودار جریان الگوریتم پیشنهادی.
پردازش تصویر با تبدیل تصویر ورودی به یک تصویر مقیاس خاکستری آغاز می‌شود و سپس تصویر مقیاس خاکستری به یک تصویر باینری آستانه‌گذاری تطبیقی می‌شود [21،22،23،24]. آستانه‌گذاری تطبیقی یک راه موثر برای جدا کردن ماژول‌های تیره یک کد QR از ماژول‌های روشن است، حتی برای تصاویری با کنتراست پایین یا نورپردازی ناهموار (اگر روش‌های کلاسیک آستانه‌گذاری تطبیقی کافی نباشند، می‌توان از باینری‌سازی مبتنی بر یادگیری با استفاده از شبکه‌های عصبی پیچشی استفاده کرد [25]).
3.1. مکان‌یابی الگوی یابنده مبتنی بر جستجوی 1:1:3:1:1
این روش (جایگزین 1 در شکل 2) از ویژگی مشخص الگوی یابنده، یعنی با هر چرخش کد QR در یک تصویر، می‌توان خطوطی را از مرکز الگوی یابنده عبور داد، به طوری که نقاط تیره و روشن روی آنها با نسبت 1:1:3:1:1 متناوب شوند، استفاده می‌کند.
این ساختار دارای این ویژگی است که حتی در هنگام چرخش، می‌توان یک برش افقی و عمودی ایجاد کرد که نقاط تیره و روشن در آن به صورت متناوب با نسبت 1:1:3:1:1 قرار گیرند (شکل 3).

ما به دنبال مراکز الگوهای یابنده با اسکن تصویر باینری به صورت افقی، خط به خط از بالا به پایین برای یافتن توالی‌های متوالی نقاط سیاه و سفید در یک خط که با نسبت‌های 1:1:3:1:1 مطابقت دارند (B1:W2:BBB3:W4:B5 که در آن Bx، Wx تعداد نقاط سیاه، سفید را نشان می‌دهد). در تصاویر واقعی نسبت نقاط سیاه و سفید ایده‌آل نیست، بنابراین باید تحمل‌هایی را در نظر گرفت:
B1,W2,W4,B5∈〈w−1.5,w+1.5〉BBB3∈〈3w−2,3w+2〉BBB3>max(B1+W2,W4+B5), where w\=B1+W2+BBB3+W4+B57
(1)
برای هر تطابق، مختصات مرکز ثقل (C) و عرض (W = B1 + W2 + BBB3 + W4 + B5) توالی را در لیستی از نامزدهای الگوی یابنده ذخیره می‌کنیم (شکل 4).

تطبیق نامزد الگوی یابنده 1:1:3:1:1.
سپس در این لیست از نامزدها جستجو می‌کنیم و نامزدهایی را که مرکز ثقل آنها حداکثر 3 نقطه به صورت افقی و حداکثر 3/7W به صورت عمودی از یکدیگر فاصله دارند، گروه‌بندی می‌کنیم. یک مرکز ثقل جدید C و عرض W از گروه به صورت میانگین مختصات x، y مرکز ثقل C و عرض‌های W از نامزدهای مجاور تنظیم می‌شود.
پس از گروه‌بندی، بررسی می‌کنیم که آیا در جهت عمودی نیز نسبت نقاط سیاه و سفید 1:1:3:1:1 است (شکل 5). ما کل تصویر را به صورت عمودی اسکن نمی‌کنیم، بلکه فقط اطراف نامزدهای الگوی یابنده را اسکن می‌کنیم، جایی که ناحیه اطراف توسط:
x∈〈Cx±W/7〉 and y∈〈Cy±4.5W/7〉
(2)
نامزدهایی که در جهت عمودی تطابق ندارند، رد می‌شوند.
الگوی یابنده از یک مربع 3 × 3 ماژول (RA) ساخته شده است که در یک قاب 7 × 7 ماژول (RC) قرار دارد (شکل 6). بنابراین، نامزدهای فردی برای الگوی یابنده نیز باید تمام شرایط زیر را برآورده کنند:

Area(RA) < Area(RB) < Area(RC) and Area(RB)/Area(RA) < 3 and Area(RC)/Area(RA) < 4
0.7 < Width(RB)/Height(RB) < 1.3 and 0.7 < Width(RC)/Height(RC) < 1.3
Distance(Centroid(RA), Centroid(RB)) < 3 and Distance(Centroid(RA), Centroid(RC)) < 3

برای بررسی نامزد الگوی یابنده و در نتیجه به دست آوردن ویژگی‌های RA، RB و RC، الگوریتم پر کردن سیلاب اعمال می‌شود. ما از مرکز ثقل C شروع می‌کنیم (که در ناحیه تیره RA قرار دارد) و از طریق ناحیه روشن (منطقه RB) به ناحیه تیره (منطقه RC) ادامه می‌دهیم. در طول پر کردن ناحیه، توصیف‌گرهای ناحیه زیر محاسبه می‌شوند:

Area (M00)
Centroid (M10/M00, M01/M00) که در آن M00، M10، M00 لحظات تصویر خام هستند
جعبه محدود (بالا، چپ، راست، پایین)

توصیف‌گرهای ناحیه نیز برای به‌روزرسانی مرکز ثقل نامزد الگوی یابنده C و محاسبه عرض ماژول MW استفاده می‌شوند:
C\=(M10(RA)+M10(RB)+M10(RC)M00(RA)+M00(RB)+M00(RC),M01(RA)+M01(RB)+M01(RC)M00(RA)+M00(RB)+M00(RC))MW\=M00(RA)+M00(RB)+M00(RC)/7
(3)
3.2. مکان‌یابی الگوی یابنده مبتنی بر همپوشانی مرکز ثقل مناطق پیوسته
در این روش (جایگزین 2 در شکل 2)، مشابه جایگزین 1، از سه الگوی یابنده معمولی برای مکان‌یابی یک کد QR استفاده می‌شود. با این حال، ما از ویژگی دیگری از آنها استفاده می‌کنیم. الگوی یابنده از یک مربع کوچکتر تشکیل شده است که در مرکز یک قاب بزرگتر قرار دارد. هر دو شکل (مربع تیره و قاب تیره) مناطق پیوسته‌ای را تشکیل می‌دهند، اما موقعیت مرکز ثقل آنها یکسان است.
برای اتصال نقاط مجاور پیش‌زمینه به مناطق پیوسته، الگوریتم برچسب‌گذاری اجزای متصل به تصویر باینری اعمال می‌شود [26،27]. در طول اجرای الگوریتم، هنگامی که یک نقطه با مختصات x، y به منطقه اضافه می‌شود، توصیف‌گر منطقه پیوسته به‌روزرسانی می‌شود:

لحظات خام M00 ←M00 + 1، M10←M10 + x، M01←M01 + y، که بعداً برای محاسبه مرکز ثقل منطقه استفاده می‌شود.
جعبه محدود تعریف شده توسط مرزهای بالا، چپ، پایین و راست.

(توجه: از آنجایی که به تصویر نشانگرها نیازی نداریم، بلکه فقط توصیف‌گرهای منطقه، می‌توانیم با یک اصلاح کارآمدتر از الگوریتم علامت‌گذاری کار کنیم که فقط با یک بافر نشانگر 2 ردیفی کار می‌کند)
در فرآیند بعدی، توصیف‌گرهای منطقه جستجو می‌شوند (به دنبال نواحی مربعی که می‌توانند مربع داخلی یا قاب بیرونی را نشان دهند) و آنهایی که شرایط زیر را برآورده می‌کنند، انتخاب می‌شوند:

Area (M00) باید حداقل 9 باشد (حداقل اندازه مربع داخلی 3 × 3 است).
نسبت ابعاد عرض به ارتفاع منطقه باید بین 0.7 و 1.3 باشد (در اینجا فرض می‌کنیم که کد QR تقریباً مربع شکل است. در صورت کد QR بسیار کشیده، این تحمل می‌تواند افزایش یابد).

ما مرکز ثقل منطقه را تعیین می‌کنیم (Cx، Cy) و به دنبال منطقه دیگری با موقعیت مشابه مرکز ثقل هستیم (برای کاهش تعداد مقایسه‌ها، می‌توانیم از یک لیست مرتب شده از مناطق بر اساس مختصات x، y مرکز ثقل استفاده کنیم یا می‌توانیم از یک نقشه حافظه از مرکز ثقل استفاده کنیم. نقشه حافظه با نسبت 4:1 به تصویر اصلی کاهش می‌یابد، که امکان عدم دقت‌های جزئی در موقعیت مرکز ثقل را فراهم می‌کند).
اگر یک منطقه با موقعیت مشابه مرکز ثقل پیدا کردیم، باید تأیید کنیم که آیا این دو منطقه می‌توانند یک مربع کوچکتر در یک قاب بزرگتر را نشان دهند. برای منطقه RC که نمایانگر قاب بیرونی و منطقه RA که نمایانگر مربع داخلی است، باید موارد زیر را برآورده کرد:

Area(RC) > Area(RA) and Area(RC)/Area(RA) ≤ 4
جعبه محدود منطقه RA باید به طور کامل در داخل جعبه محدود منطقه RC قرار گیرد
Distance(Centroid(RC), Centroid(RA)) < 3

اگر دو منطقه RA و RC پیدا کنیم، مرکز ثقل الگوی یابنده کاندید و عرض ماژول MW را به صورت زیر محاسبه می‌کنیم:
C\=(M10(RA)+M10(RC)M00(RA)+M00(RC),M01(RA)+M01(RC)M00(RA)+M00(RC))MW\=M00(RA)+M00(RC)33
(4)
3.3. گروه‌بندی الگوهای یابنده
نامزدهای الگوهای یابنده را شناسایی کردیم که توسط مرکز ثقل آنها تعریف می‌شوند. اکنون باید سه تایی‌هایی را از لیست نامزدهای الگوی یابنده پیدا کنیم که می‌توانند سه گوشه یک کد QR باشند. یک ماتریس از فاصله‌ها بین مرکز ثقل‌ها می‌سازیم و تمام ترکیبات سه عنصری از تمام نامزدهای الگوی یابنده را بررسی می‌کنیم. برای هر ترکیب، بررسی می‌کنیم که آیا می‌توان یک مثلث قائم‌الزاویه ساخت، به طوری که شرایط زیر برآورده شود:

اندازه هر ضلع باید در یک بازه از پیش تعریف شده باشد (کوچکترین و بزرگترین کد QR مورد انتظار).
تفاوت در اندازه دو ساق باید در تحمل ±14 باشد (برای کد QR غیر تحریف شده و غیر کشیده، تحمل کمتری کافی است).
تفاوت در اندازه وتر واقعی و تئوری باید در تحمل ±12 باشد (برای کد QR غیر تحریف شده و غیر کشیده، تحمل کمتری کافی است).

به این ترتیب، لیستی از نامزدهای کد QR (که توسط سه تایی FP1، FP2، FP3 تعریف شده‌اند) بر اساس موقعیت متقابل سه الگوی یابنده کاندید ساخته می‌شود. با این حال، همانطور که در شکل 7 می‌بینیم (اگر تصویر حاوی چندین کد QR باشد)، همه نامزدهای سه گانه کد QR واقعی نیستند (نارنجی نقطه چین مثبت کاذب است).

برای حذف نامزدهای کاذب برای یک کد QR که توسط یک سه تایی از الگوهای یابنده تعریف شده است، وجود ناحیه ساکت در اطراف کد QR و الگوی زمان‌بندی در داخل کد QR را تأیید می‌کنیم.
برای تأیید ناحیه ساکت، بررسی می‌کنیم که آیا فقط نقاط سفید در ناحیه مستطیلی تصویر باینری وجود دارد که موازی با قطعات خطی تعریف شده توسط FP1-FP2 و FP2-FP3 است (شکل 8). برای بازرسی سریع نقاط خطی از الگوریتم خط Bresenham [28] استفاده می‌کنیم.

ناحیه‌های ساکت در اطراف کد QR.
برای تأیید الگوهای زمان‌بندی، ناحیه مستطیلی بین گوشه‌های داخلی الگوهای یابنده را بررسی می‌کنیم (شکل 9). تعداد نقاط سیاه و سفید را در تصویر باینری شمارش می‌کنیم و طول متوسط LAVG و انحراف معیار LSTDDEV خطوط سیاه و سفید را محاسبه می‌کنیم. الگوی زمان‌بندی باید شرایط زیر را برآورده کند:
|LAVG−MW|<1 and LSTDDEV<1
(5)

الگوهای زمان‌بندی در داخل یک کد QR.
3.4. جعبه محدود کد QR
راس‌های مثلث FP1-FP2-FP3 مرکز ثقل سه الگوی یابنده هستند. سپس این مثلث به مثلث P1-P2-P3 گسترش می‌یابد، جایی که بازوهای مثلث از طریق ماژول‌های مرزی کد QR می‌روند (شکل 10). به عنوان مثال، انتقال FP3 به P3 در جهت تعریف شده توسط بردار (FP1، FP3) را می‌توان به صورت زیر بیان کرد:
P3\=FP3+FP3−FP1|FP3,FP1|MW18
(6)
4. روش پیشنهادی
شناسایی اعوجاج پرسپکتیو کد QR و تعیین موقعیت گوشه چهارم جعبه محدود کد QR.
در مورد کدهای QR با اعوجاج پرسپکتیو، به 4 نقطه نیاز داریم تا تبدیل پرسپکتیو را از دامنه مربع منبع که نشان دهنده یک کد QR ایده‌آل است به چهارضلعی مقصد که نشان دهنده یک کد QR واقعی در تصویر است، تنظیم کنیم (شکل 17).
4.1. جایگزین A - ارزیابی پیش‌بینی لبه
یک کد QR یک ماتریس 2 بعدی است و ساختار داخلی کد QR یک ساختار شبیه صفحه شطرنج را تشکیل می‌دهد. این بدان معناست که ماژول‌های فردی لبه‌هایی ایجاد می‌کنند که بر یکدیگر عمود هستند. می‌توان گفت که موقعیت بهینه نقطه P4 به گونه‌ای است که انحراف معیار پیش‌بینی‌های افقی و عمودی به حداکثر برسد. ما یک الگوریتم تکراری را پیشنهاد می‌کنیم تا به تدریج موقعیت نقطه P4 را بهبود بخشیم تا مرز بهینه کد QR را پیدا کنیم. الگوریتم را می‌توان با مراحل زیر تعریف کرد:
با یک تخمین اولیه از موقعیت نقطه P4 شروع کنید که از تقاطع خطوط موازی با P2-P3 و P2-P1 محاسبه می‌شود، به طوری که نقاط P1-P2-P3-P4 یک متوازی‌الاضلاع را تشکیل دهند (شکل 11 موقعیت شروع نقطه P4 را برای کدهای QR تحریف شده مختلف نشان می‌دهد). سپس شروع به حرکت (جابجایی) نقطه P4 ابتدا به صورت عمودی در جهت P4-P3 (شکل 12) و سپس به صورت افقی در جهت P4-P1 کنید. اندازه اولیه گام جابجایی برای کدهای QR با ماژول‌های بزرگتر از 2 نقطه به 2 نقطه تنظیم می‌شود، در غیر این صورت به 1 نقطه تنظیم می‌شود (هرچه ماژول کد QR کوچکتر باشد، گام نیز کوچکتر است).

تخمین اولیه موقعیت نقطه 4ام P4. (a) کد QR بدون تحریف؛ (b) کد QR کج؛ (c، d) کدهای QR با اعوجاج پرسپکتیو.

شناسایی اعوجاج پرسپکتیو کد QR: (a) کد QR؛ (b) لبه‌های افقی؛ (c) پیش‌بینی افقی لبه‌های افقی.
برای هر جابجایی نقطه P4، از ناحیه تبدیل شده IT تصویر مقیاس خاکستری که توسط نقاط P1-P2-P3-P4 تعریف شده است، تصویر لبه‌های افقی IHE (لبه افقی به صورت تفاوت بین روشنایی نقطه فعلی در مختصات (x، y) و نقطه در خط قبلی در مختصات (x، y-1) محاسبه می‌شود: dy = IT(x،y) - IT(x،y-1)) و پیش‌بینی افقی این لبه‌ها در جهت افقی PHE(y) = ∑x|dy(x،y)| را تعیین کنید. برای بردار PHE انحراف معیار (امتیاز) را محاسبه کنید.
اگر انحراف معیار (امتیاز) افزایش یابد، در جهت انتخابی ادامه دهید، در غیر این صورت اگر امتیاز در طول دو مرحله گذشته کاهش یافته باشد، 2 مرحله به عقب برگردید (به موقعیتی با بالاترین امتیاز) و جهت جابجایی را به جهت مخالف تغییر دهید. تکرار مرحله 2.
اگر حتی پس از تغییر جهت نیز هیچ افزایشی وجود نداشته باشد، به موقعیت نقطه P4 با بالاترین امتیاز برگردید و گام جابجایی را به ½ کاهش دهید و مراحل 3 و 4 را تکرار کنید (برای اصلاح موقعیت نقطه P4).
به همان روشی که موقعیت بهینه نقطه P4 در جهت عمودی با استفاده از لبه‌های افقی و پیش‌بینی افقی (شکل 12) جستجو شد، به همین ترتیب موقعیت بهینه آن را در جهت افقی با استفاده از لبه‌های عمودی جستجو کنید.

شناسایی اعوجاج پرسپکتیو کد QR: (a) کد QR؛ (b) لبه‌های عمودی؛ (c) پیش‌بینی عمودی لبه‌های عمودی.
4.2. جایگزین B - ارزیابی همپوشانی خط مرزی
روش دیگر (جایگزین B) برای یافتن موقعیت بهینه نقطه چهارم P4 بر اساس حرکت خطوط مرزی P3-P4 و P1-P4 و ارزیابی همپوشانی خطوط مرزی با کد QR است (شکل 16).

اعوجاج پرسپکتیو. (a) موقعیت اولیه نقطه P4 و خطوط L1، L3؛ (b) اولین جابجایی خط L3؛ (c) دومین جابجایی خط L3.
پس از اینکه موقعیت نقطه چهارم P4 را شناسایی کردیم، می‌توانیم تبدیل پرسپکتیو را از دامنه مربع منبع که نشان دهنده یک کد QR ایده‌آل است به چهارضلعی مقصد که نشان دهنده یک کد QR واقعی در تصویر است، تنظیم کنیم (شکل 17).

تبدیل پرسپکتیو.
با استفاده از معادلات زیر [29]:
u = ax+by+c/(gx+hy+1)، v = dx+ey+f/(gx+hy+1)، که در آن ضرایب را می‌توان از مختصات نقاط P1(u1،v1)، P2(u2، v2)، P3(u3، v3)، P4(u4، v4) محاسبه کرد:
a = (u3-u2)/A+gu3، b = (u1-u2)/A+hu1، c = u2
d = (v3-v2)/A+gv3، e = (v1-v2)/A+hv1، f = v2
g = |du3du2dv3dv2|، h = |du1du3dv1dv3|
du1 = (u3-u2)A، du2 = (u1-u4)A، du3 = u2-u3+u4-u1
dv1 = (v3-v2)A، dv2 = (v1-v4)A، dv3 = v2-v3+v4-v1
(10)
4.3. رمزگشایی کد QR
برای رمزگشایی موفقیت‌آمیز یک کد QR، موقعیت دقیق هر چهار نقطه گوشه‌ای که جعبه محدود را تشکیل می‌دهند، باید تعیین شود. پس از تنظیم تبدیل پرسپکتیو، می‌توانیم نقاط تصویر را از این چهارضلعی به ماتریس مربع نگاشت کرد. ماژول‌های تیره به باینری 1 و ماژول‌های روشن به باینری 0 تبدیل می‌شوند. این ماتریس باینری ورودی یک فرآیند قطعی است که داده‌های ذخیره شده در کد QR را رمزگشایی می‌کند. اگر کد QR فقط از نظر پرسپکتیو تحریف شده باشد، با اعمال تبدیل پرسپکتیو، تصویری از یک کد QR مربع به دست می‌آوریم که در آن ماژول‌ها نیز مربع‌هایی با اندازه یکسان هستند (شکل 17). در این حالت، ایجاد ماتریس باینری ساده است زیرا کافی است نقاط میانی ماژول‌ها را بگیریم که تصمیم می‌گیرند آیا ماژول تیره است یا روشن (شکل 18). اگر ماژول‌ها بزرگتر باشند، می‌توانیم میانگین مقدار چندین نقطه مجاور در اطراف نقطه میانی را نیز در نظر بگیریم. اینکه یک نقطه به عنوان تیره یا روشن طبقه‌بندی شود، به مقدار آستانه محلی بستگی دارد. ما کل ناحیه کد QR را به 9 کاشی (3 × 3) تقسیم می‌کنیم و برای هر کاشی مقدار آستانه آن را به عنوان میانگین شدت مقیاس خاکستری محاسبه می‌کنیم. سپس مقدار آستانه محلی با استفاده از درون‌یابی دوخطی از آستانه‌های کاشی‌های مجاور تعیین می‌شود.

نگاشت کد QR به ماتریس باینری.
اگر اعوجاج کد QR را نتوان فقط با تبدیل پرسپکتیو معکوس به طور کامل بازگرداند، به عنوان مثال اگر اعوجاج استوانه‌ای به اعوجاج پرسپکتیو اضافه شود، اندازه ماژول‌های کد QR ثابت نیست (شکل 19). در این حالت، باید موقعیت‌های نقاط میانی را با اندازه‌های متغیر ماژول‌ها تطبیق دهیم. دوباره، می‌توانیم از اصل پیش‌بینی لبه استفاده کنیم، جایی که حداکثر محلی لبه‌ها مرزهای ماژول‌ها را تعیین می‌کنند و فاصله‌ها بین دو حداکثر محلی مجاور اندازه ماژول فعلی را در ردیف یا ستون مورد نظر می‌دهد. سپس نقاط میانی در مرکز بین حداکثر محلی مجاور قرار می‌گیرند. در نتایج، به این تکنیک "شبکه پویا" اشاره می‌کنیم.

5. نتایج
روش ذکر شده در بالا بر روی مجموعه آزمایشی متشکل از 286 نمونه کد QR آزمایش شد. مجموعه آزمایشی شامل 20 کد QR مصنوعی با اندازه‌ها و چرخش‌های مختلف، 86 کد QR از تصاویر اینترنت و 180 کد QR از یک محیط تولیدی خاص بود. نمونه‌های مجموعه آزمایشی در شکل 20 نشان داده شده‌اند.

نمونه‌های آزمایشی: (a) مصنوعی؛ (b) اینترنت؛ (c) تولید.
در جدول 1 و شکل 21 نتایج ما در مقایسه با نرم‌افزار رمزگشایی کد QR رقابتی (منبع باز و همچنین تجاری) آورده شده است. در جدول، تعداد کدهای QR که با موفقیت شناسایی/رمزگشایی شده‌اند از مجموع 286 کد آورده شده است.

نتایج ما در مقایسه با راه حل‌های رقابتی.
جدول 1
نتایج ما در مقایسه با راه حل‌های رقابتی.
| نرم‌افزار | نمونه‌ها (a) | نمونه‌ها (b) | نمونه‌ها (c) |
| --- | --- | --- | --- |
| Google ZXing (منبع باز) [30] | 1 | 70 | 30 |
| Quirc (منبع باز) [31] | 12 | 66 | 39 |
| LEADTOOLS QR Code SDK [32] | 7 | 69 | 100 |
| Inlite Barcode Reader SDK [33] | 18 | 79 | 141 |
| ZBar (منبع باز) [34] | 20 | 78 | 167 |
| Dynamsoft Barcode Reader SDK [35] | 20 | 84 | 178 |
| ما - جایگزین 1.A، شبکه پویا | 20 | 85 | 180 |
| ما - جایگزین 2.A، شبکه پویا | 20 | 85 | 179 |
روش ما با موفقیت همه کدهای QR را مکان‌یابی کرد، اما در رمزگشایی یک نمونه شکست خورد. این نمونه یک کد QR بود که روی یک بطری قرار داشت، به طوری که کد QR از نظر پرسپکتیو و همچنین استوانه‌ای تحریف شده بود. نحوه برخورد با این نوع اعوجاج ترکیبی یک چالش برای تحقیقات آینده ما است. Lay et al. [36] یک مدل سطح استوانه‌ای پارامتری برای اصلاح کدهای QR چاپ شده روی استوانه‌ها پیشنهاد کردند.
از آنجایی که بیشتر رمزگشاهان کد QR رقابتی راه حل‌های منبع بسته هستند، نمی‌توانیم الگوریتم‌های تشخیص آنها را به تفصیل مقایسه کنیم. به همین دلیل، ما فقط آزمایش جعبه سیاه (با استفاده از تنظیمات پیش‌فرض) را انجام دادیم. مجموعه داده استاندارد منتشر شده برای مقایسه نتایج روش ما با نتایج روش‌های منتشر شده قبلی وجود ندارد. مجموعه داده آزمایشی ما به صورت آنلاین همراه با این مقاله در "مواد تکمیلی" منتشر شده است.
در جدول 2 زمان مصرف نرم‌افزارهای مختلف بسته به وضوح تصویر ورودی و تعداد کدهای QR در یک تصویر مقایسه می‌شود (جدول فقط شامل نرم‌افزارهای منبع باز است که می‌توانیم آنها را روی سخت‌افزار یکسان با CPU i5-4590 3.3GHz آزمایش کنیم. راه حل ما در Free Pascal بدون استفاده از هیچ کتابخانه بینایی کامپیوتری بهینه شده پیاده‌سازی شده است).

جدول 2
زمان مصرف تقریبی نرم‌افزارهای آزمایش شده.
| نرم‌افزار | 1024 × 768 | 1296 × 960 | 2592 × 1920 |
| --- | --- | --- | --- |
| 1 کد | 10 کد | 1 کد | 10 کد | 1 کد | 10 کد | 50 کد |
| --- | --- | --- | --- | --- | --- | --- |
| Quirc (منبع باز) | 10 میلی‌ثانیه | 34 میلی‌ثانیه | 15 میلی‌ثانیه | 37 میلی‌ثانیه | 66 میلی‌ثانیه | 130 میلی‌ثانیه | 430 میلی‌ثانیه |
| ZBar (منبع باز) | 48 میلی‌ثانیه | 96 میلی‌ثانیه | 76 میلی‌ثانیه | 124 میلی‌ثانیه | 338 میلی‌ثانیه | 396 میلی‌ثانیه | 1781 میلی‌ثانیه |
| ما - جایگزین 1.A | 17 میلی‌ثانیه | 77 میلی‌ثانیه | 23 میلی‌ثانیه | 83 میلی‌ثانیه | 74 میلی‌ثانیه | 135 میلی‌ثانیه | 426 میلی‌ثانیه |
| ما - جایگزین 2.A | 17 میلی‌ثانیه | 79 میلی‌ثانیه | 22 میلی‌ثانیه | 83 میلی‌ثانیه | 69 میلی‌ثانیه | 129 میلی‌ثانیه | 414 میلی‌ثانیه |
6. نتیجه‌گیری
ما یک روش دقیق و سریع برای مکان‌یابی کدهای QR دو بعدی با اعوجاج پرسپکتیو در تصاویر دلخواه در شرایط نوری مختلف پیشنهاد و آزمایش کردیم. این روش برای مکان‌یابی کدهای QR تکی یا چندگانه در تصاویر با وضوح پایین و همچنین برای پردازش بلادرنگ مناسب است. روش پیشنهادی ما از الگوهای یابنده معمولی کد QR برای شناسایی سه گوشه کد QR در یک تصویر استفاده می‌کند. تعیین موقعیت گوشه چهارم جعبه محدود کد QR مشارکت اصلی این مقاله است.
تازگی روش ما در نحوه تعیین جعبه محدود کد QR، به ویژه برای کدهای QR با اعوجاج پرسپکتیو و نحوه رسیدگی به ماژول‌های متغیر است.
این روش بر روی مجموعه آزمایشی متشکل از نمونه‌های مصنوعی و واقعی تأیید شده است و با راه حل‌های رقابتی مقایسه شده است. نتایج تجربی نشان می‌دهد که روش ما نرخ تشخیص بالایی دارد. بر خلاف مقالات دیگر، ما یک کد QR را فقط در صورتی به عنوان کد QR شناسایی شده در نظر می‌گیریم که با موفقیت رمزگشایی شود، نه فقط مکان‌یابی شود. مکان‌یابی دقیق یک شرط لازم اما نه کافی برای رمزگشایی موفقیت‌آمیز است.
در صورتی که لازم باشد بارکدهای دو بعدی را در یک ناحیه بسیار کوچک قرار دهید، می‌توانید استفاده از کد QR میکرو یا کد ماتریس داده [37] را در نظر بگیرید (شکل 22).

انواع دیگر کدهای دو بعدی: (a) کد QR میکرو؛ (b) کد ماتریس داده.
تشکر و قدردانی
این مشارکت توسط پروژه حمایت مالی می‌شود.
مواد تکمیلی
مواد زیر به صورت آنلاین در https://www.mdpi.com/2313-433X/6/7/67/s1 در دسترس است، یک فایل ZIP شامل تصاویر مجموعه داده آزمایشی کدهای QR مورد استفاده برای آزمایش الگوریتم‌های پیشنهادی ما است.
سهم نویسندگان
مفهوم‌سازی، روش‌شناسی، نرم‌افزار، تهیه پیش‌نویس اصلی مقاله، L.K.; اعتبارسنجی، بازبینی و ویرایش مقاله، تجسم، E.P.; نظارت، مدیریت پروژه، تأمین مالی، P.B.; همه نویسندگان مقاله را خوانده و با انتشار آن موافقت کرده‌اند.
تأمین مالی
این تحقیق توسط پروژه VEGA 1/0019/20 تأمین مالی شد: محاسبات دقیق، مدل‌سازی و شبیه‌سازی سطوح نوظهور بر اساس علل فیزیکی ماشین‌کاری سطوح و سطوح ایجاد شده توسط فناوری‌های افزودنی در شرایط ماشین‌کاری و رباتیک.
تضاد منافع
نویسندگان هیچ تضاد منافعی را اعلام نمی‌کنند. تأمین‌کنندگان هیچ نقشی در طراحی مطالعه، جمع‌آوری، تجزیه و تحلیل یا تفسیر داده‌ها، نوشتن دست‌نوشته یا تصمیم‌گیری برای انتشار نتایج نداشته‌اند.
مراجع
1. Frankovsky P., Pastor M., Dominik L., Kicko M., Trebuna P., Hroncova D., Kelemen M. ربات متحرک چرخ‌دار در محیط ساختاریافته; کنفرانس بین‌المللی 12مین ELEKTRO; میکولوف، جمهوری چک. 21–23 مه 2018. [Google Scholar]
2. Božek P., Nikitin Y., Bezák P., Fedorko G., Fabian M. افزایش بهره‌وری سیستم تولید با استفاده از ناوبری اینرسی. Manuf. Technol. 2015;15:274–278. [Google Scholar]
3. Denso Wave Incorporated: کد QR چیست؟ [(دسترسی در 6 سپتامبر 2018)]; در دسترس آنلاین: http://www.qrcode.com/en/about/
4. Denso Wave Incorporated: تاریخچه کد QR. [(دسترسی در 6 سپتامبر 2018)]; در دسترس آنلاین: http://www.qrcode.com/en/history/
5. Lin J.-A., Fuh C.-S. رمزگشایی تصویر بارکد دو بعدی. Math. Probl. Eng. 2013:1–10. doi: 10.1155/2013/848276. [CrossRef] [Google Scholar]
6. Li S., Shang J., Duan Z., Huang J. روش تشخیص سریع کد پاسخ سریع بر اساس کدگذاری طول اجرا. IET Image Process. 2018;12:546–551. doi: 10.1049/iet-ipr.2017.0677. [CrossRef] [Google Scholar]
7. Belussi L.F.F., Hirata N.S.T. تشخیص سریع کد QR در تصاویر به دست آمده به طور دلخواه. J. Math. Imaging Vis. 2013 doi: 10.1007/s10851-012-0355-x. [CrossRef] [Google Scholar]
8. Bodnár P., Nyúl L.G. مکان‌یابی بهبود یافته کد QR با استفاده از آبشار طبقه‌بندهای ضعیف. Acta Cybern. 2015;22:21–33. doi: 10.14232/actacyb.22.1.2015.3. [CrossRef] [Google Scholar]
9. Tribak H., Zaz Y. تشخیص کد QR بر اساس روش تجزیه مؤلفه‌های اصلی. Int. J. Adv. Comput. Sci. Appl. 2017;8 doi: 10.14569/IJACSA.2017.080433. [CrossRef] [Google Scholar]
10. Tribak H., Zaz Y. مکان‌یابی الگوی یابنده کد QR بر اساس لحظه‌های ثابت Hu. Int. J. Adv. Comput. Sci. Appl. 2017 doi: 10.14569/IJACSA.2017.080924. [CrossRef] [Google Scholar]
11. Ciążyński K., Fabijańska A. تشخیص کدهای QR در تصاویر دیجیتال بر اساس شباهت هیستوگرام. Image Process. Commun. 2015;20:41–48. doi: 10.1515/ipc-2015-0033. [CrossRef] [Google Scholar]
12. Szentandrási I., Herout A., Dubská M. کنفرانس بهاری 28مین گرافیک کامپیوتری. ACM; نیویورک، نیویورک، ایالات متحده آمریکا: 2012. تشخیص سریع کد QR و تشخیص در تصاویر با وضوح بالا. [Google Scholar]
13. Gaur P., Tiwari S. تشخیص تصاویر بارکد دو بعدی با استفاده از تشخیص لبه و عملیات مورفولوژیکی. Int. J. Comput. Sci. Mob. Comput. IJCSMC. 2014;3:1277–1282. [Google Scholar]
14. Kong S. تصحیح تصویر کد QR بر اساس تشخیص گوشه و الگوریتم پوش محدب. J. Multimed. 2013;8:662–668. doi: 10.4304/jmm.8.6.662-668. [CrossRef] [Google Scholar]
15. Sun A., Sun Y., Liu C. بازسازی کد QR در عکس‌های غیرقابل خواندن گرفته شده توسط تلفن‌های همراه; کنفرانس بین‌المللی علوم محاسباتی و کاربردهای آن (ICCSA 2007); کوالالامپور، مالزی. 26–39 آگوست 2007; ص 532–538. [Google Scholar]
16. Hansen D.K., Nasrollahi K., Rasmussen C.B., Moeslund T.B. تشخیص بارکد بلادرنگ با استفاده از یادگیری عمیق. IJCCI. 2017;1:321–327. [Google Scholar]
17. Zharkov A., Zagaynov I. آشکارساز جهانی بارکد از طریق تقسیم معنایی; کنفرانس بین‌المللی تجزیه و تحلیل اسناد و تشخیص (ICDAR); سیدنی، استرالیا. 20–25 سپتامبر 2019; ص 837–843. [Google Scholar]
18. Chou T.-H., Ho C.-S., Kuo Y.-F. تشخیص کد QR با استفاده از شبکه‌های عصبی پیچشی; کنفرانس بین‌المللی روباتیک پیشرفته و سیستم‌های هوشمند (ARIS); تایپه، تایوان. 29–31 مه 2015; ص 1–5. [CrossRef] [Google Scholar]
19. Kurniawan W.C., Okumura H., Muladi, Handayani A.N. بهبود تشخیص زاویه محدود کد QR با استفاده از شبکه عصبی پیچشی; کنفرانس بین‌المللی مهندسی برق، الکترونیک و اطلاعات (ICEEIE); دنپاسار، بالی، اندونزی. 3 اکتبر 2019; ص 234–238. [CrossRef] [Google Scholar]
20. Lopez-Rincon O., Starostenko O., Alarcon-Aquino V., Galan-Hernandez J.C. رویکرد مبتنی بر شیء بزرگ برای تشخیص کد QR در محیط‌های کنترل نشده. J. Electr. Comput. Eng. 2017;2:1–15. doi: 10.1155/2017/4613628. [CrossRef] [Google Scholar]
21. Niblack W. مقدمه‌ای بر پردازش تصویر دیجیتال. Prentice Hall; Englewood Cliffs، NJ، ایالات متحده آمریکا: 1986. [Google Scholar]
22. Sauvola J., Pietikäinen M. آستانه‌گذاری باینری تصویر سند تطبیقی. Pattern Recognit. 2020;33:225–236. doi: 10.1016/S0031-3203(99)00055-2. [CrossRef] [Google Scholar]
23. Bradley D., Roth G. آستانه‌گذاری تطبیقی با استفاده از تصویر انتگرال. J. Graph. Tools. 2007;12:13–21. doi: 10.1080/2151237X.2007.10129236. [CrossRef] [Google Scholar]
24. Sulaiman A., Omar K., Nasrudin M.F. باینری‌سازی سند تاریخی تخریب شده: مروری بر مسائل، چالش‌ها، تکنیک‌ها و جهت‌گیری‌های آینده. J. Imaging. 2019;5:48. doi: 10.3390/jimaging5040048. [PMC free article] [PubMed] [CrossRef] [Google Scholar]
25. Calvo-Zaragoza J., Gallego A.-J. رویکرد رمزگذار خودکار انتخابی برای باینری‌سازی تصویر سند. Pattern Recognit. 2019;86:37–47. doi: 10.1016/j.patcog.2018.08.011. [CrossRef] [Google Scholar]
26. Rosenfeld A., Pfaltz J. عملیات متوالی در پردازش تصویر دیجیتال. J. ACM. 1966;13:471–494. doi: 10.1145/321356.321357. [CrossRef] [Google Scholar]
27. Bailey D.G., Klaiber M.J. تجزیه و تحلیل اجزای متصل تک‌گذر با استفاده از زیگ‌زاگ. J. Imaging. 2019;5:45. doi: 10.3390/jimaging5040045. [PMC free article] [PubMed] [CrossRef] [Google Scholar]
28. Bresenham J.E. الگوریتم برای کنترل کامپیوتری یک طرح‌کش دیجیتال. IBM Syst. J. 1965;4:25–30. doi: 10.1147/sj.41.0025. [CrossRef] [Google Scholar]
29. Lay K., Wang L., Wang C. اصلاح تصاویر کد QR با استفاده از مدل سطح استوانه‌ای پارامتری; کنفرانس بین‌المللی الکترونیک نسل بعدی (ISNE); تایپه، تایوان. 4–6 مه 2015; ص 1–5. [Google Scholar]
30. Google: کتابخانه اسکن بارکد ZXing ("Zebra Crossing") برای Java، Android. [(دسترسی در 22 سپتامبر 2018)]; در دسترس آنلاین: https://github.com/zxing
34. Terriberry T.B. خواننده بارکد ZBar. [(دسترسی در 22 سپتامبر 2018)]; در دسترس آنلاین: http://zbar.sourceforge.net
36. Lay K., Wang L., Wang C. اصلاح تصاویر کد QR با استفاده از مدل سطح استوانه‌ای پارامتری; کنفرانس بین‌المللی الکترونیک نسل بعدی (ISNE); تایپه، تایوان. 4–6 مه 2015; ص 1–5. [Google Scholar]
37. Karrach L., Pivarčiová E., Nikitin Y.R. مقایسه تأثیر دوربین‌ها و وضوح تصویر مختلف بر تشخیص کدهای ماتریس داده. J. Electr. Eng. 2018;69:286–292. doi: 10.2478/jee-2018-0040. [CrossRef] [Google Scholar]

مقالات از Journal of Imaging در اینجا با مجوز مؤسسه انتشارات دیجیتال چندرشته‌ای (MDPI) ارائه شده‌اند.


تعداد کدهای QR منحصربه‌فردی که می‌توان تولید کرد، به طرز باورنکردنی زیاد است. کدهای QR معمولاً یک ماتریس دو بعدی از مربع‌های سیاه و سفید هستند و تعداد تغییرات ممکن به اندازه ماتریس بستگی دارد.
طبق سوالی در Ask MetaFilter، یک کد QR می‌تواند یک ماتریس 32x32 باشد که در نتیجه 1024 مربع [1] ایجاد می‌شود. هر مربع می‌تواند سیاه یا سفید باشد، بنابراین تعداد تغییرات ممکن 2 به توان 1024 است که یک عدد بسیار بزرگ است.
در واقع، تخمین زده می‌شود که تعداد جایگشت‌های ممکن برای یک کد QR 32x32 در حدود 10 به توان 308 [1] باشد. برای درک بهتر این موضوع، دانشمندان تخمین می‌زنند که تقریباً 10 به توان 80 اتم در جهان وجود دارد [3]. بنابراین، تعداد کدهای QR ممکن به طور قابل توجهی بیشتر از تعداد اتم‌های موجود در جهان است.
به طور قطع می‌توان گفت که تعداد کدهای QR منحصربه‌فردی که می‌توان تولید کرد، عملاً نامحدود است. نیازی به بازیافت کدهای QR پس از مدت زمان معینی نیست، زیرا تعداد تغییرات ممکن بسیار زیاد است.

برای کسب اطلاعات بیشتر:
1. چند کد QR منحصربه‌فرد ممکن است؟ - ترکیبات ریاضی QRcode | Ask MetaFilter
2. 11 افسانه رایج در مورد کدهای QR | تولیدکننده کد QR Supercode
3. آیا جایگشت‌های نامحدودی از کدهای QR وجود دارد، یا اینکه بازیافت می‌شوند؟ | New Scientist
بیشتر از اتم‌های موجود در جهان (تخمین زده می‌شود 10x10x10... 81 بار).
بیشتر از تمام آدرس‌های ایمیلی که ایجاد شده‌اند و هنوز ایجاد نشده‌اند....
این یک عدد واقعاً بزرگ است. مقاله ویکی‌پدیا اشاره می‌کند که می‌تواند 7089 کاراکتر فقط عددی داشته باشد: یعنی معادل
10x10x10..... 7089 بار (هر کاراکتر می‌تواند 0-9 باشد).
هیچ چیز جادویی در مورد کدهای QR وجود ندارد. این فقط زبان ماشین است و نحوه ذخیره‌سازی تعیین می‌کند که چه مقدار می‌توانید بنویسید. پس اگر یک شبکه کاغذی با 7089 مربع داشته باشید، چند عدد مختلف می‌توانید بنویسید؟
یا اگر یک برگه کاغذ داشته باشید که بتوانید تا 4296 کاراکتر الفبایی عددی را تایپ کنید، چند مقاله مختلف می‌توانید بنویسید؟ سرگیجه‌آور بزرگ (اگر می‌خواهید محاسبه کنید، 45x45x45 ....... 4296 بار!)
این تصویر این نکته را نشان می‌دهد. در سمت راست، نسخه زبان ماشین کد QR از متن انگلیسی در سمت چپ است.

حداکثر ظرفیت یک کد QR استاندارد (طبق ویکی‌پدیا) 2953 بایت یا 23624 بیت است. هر بیت دارای دو حالت است، بنابراین تعداد جایگشت‌های ممکن 2 به توان 23624 یا حدود 3.4*10 به توان 7111 است.
در حال حاضر، ذخیره‌سازی داده دارای چگالی محدودی است و توسط اندازه محیط محدود شده است. تعداد جایگشت‌های ممکن با اندازه یا چگالی کد QR افزایش می‌یابد، بنابراین یک کد QR بی‌نهایت بزرگ یا بی‌نهایت متراکم، جایگشت‌های بی‌نهایتی خواهد داشت.
اطلاعات رمزگذاری شده در یک کد QR خاص به هیچ وجه محافظت نمی‌شود. این با بارکدهای UPC و EAN متفاوت است که از یک سیستم جهانی می‌آیند، باید به طور جهانی منحصربه‌فرد باشند و به 12 یا 13 رقم محدود شده‌اند و بنابراین ترکیبات محدودی دارند.
کدهای QR می‌توانند هر اطلاعاتی را که می‌خواهید در خود رمزگذاری کنند. این اطلاعات به طور واقعی در کد QR رمزگذاری شده است، بنابراین در حالی که نمی‌توانید مانع از تولید همان کد QR توسط شخص دیگری شوید - اما از نظر عملی انجام این کار غیرممکن است، زیرا کد QR حاوی پیام یا URL شما خواهد بود.
در حالی که بارکدهای UPC به اعداد و 12 رقم محدود می‌شوند که امکان جایگشت‌های نسبتاً کمی را فراهم می‌کند.
کدهای QR می‌توانند تا 1028 کاراکتر را رمزگذاری کنند. این شامل حروف، اعداد و کاراکترهای غیر الفبایی عددی است - با این مقادیر، تغییرات بالقوه اساساً نامحدود است.
این عدد به طرز وحشتناکی بزرگ است... و، برای همه اهداف عملی، نامحدود است.
یک کد QR به سادگی ترکیبی از حروف و اعداد است... و بزرگترین کدهای QR می‌توانند حاوی هزاران کاراکتر باشند. بنابراین، به عنوان مثال، اگر بخواهید شماره سریال‌های بیست رقمی را در کدهای QR قرار دهید، محدودیت تعداد کل شماره‌های بیست رقمی ممکن خواهد بود... و، اگر حروف را نیز وارد کنید، این عدد بسیار بیشتر خواهد بود.
طبق گفته گوگل... "یک کد QR قادر به رمزگذاری حداکثر 2953 بایت داده، 4296 کاراکتر الفبایی عددی، 7089 کاراکتر عددی یا 1817 کاراکتر کانجی (مجموعه کاراکترها طبق JIS X 0208) است."
(همچنین باید اشاره کنم که این 2953 بایت داده می‌تواند یک آرشیو ZIP یا RAR باشد که خود حاوی یک نسخه فشرده از یک فایل اصلی بزرگتر است. در حالی که این تعداد ترکیبات منحصربه‌فرد را افزایش نمی‌دهد، اما نشان می‌دهد که محدودیت "چه چیزی می‌توانید در یک کد QR قرار دهید" بسیار زیاد است. به عنوان مثال، می‌توانید یک سند متنی معمولی هشت یا ده صفحه‌ای را در یک آرشیوی که در یک کد QR واحد قرار می‌گیرد، فشرده کنید.)
می‌توانید کدهای QR را به عنوان ظرفی برای هر متنی در نظر بگیرید، تا 7089 کاراکتر (اگر فقط عدد باشد، به دلیل فشرده‌سازی)، 4296 اگر متن باشد.
نکته جالب در مورد کدهای QR این است که معنایی برای محتوا تعریف شده است، بنابراین یک برنامه اسکنر/خواننده باید به عنوان مثال http: // quora . com را به عنوان یک پیوند تفسیر کند و معمولاً یک مرورگر را باز کند تا آن صفحه را نشان دهد.
اگر حاوی یک پیوند باشد، اطلاعات حاصل که توسط کاربر درک می‌شود می‌تواند بسیار بیشتر از آنچه در کد QR ذخیره شده است باشد.
خواننده کد QR CliqTags من - برنامه‌های Android در Google Play چنین معنایی را مدیریت می‌کند، اما اگر نتواند محتوا را به روش دیگری تفسیر کند، یک جستجوی Google نیز انجام می‌دهد.
حداکثر ظرفیت یک کد QR استاندارد (طبق ویکی‌پدیا) 2953 بایت یا 23624 بیت است. هر بیت دارای دو حالت است، بنابراین تعداد جایگشت‌های ممکن 2 به توان 23624 یا حدود 3.4*10 به توان 7111 است.
تولیدکننده کد QR به طور اجتناب‌ناپذیری شکاف بین بازاریابی آنلاین و آفلاین را پر می‌کند. یک کد QR ایجاد کنید تا مشتریان را مستقیماً از بروشور چاپی خود به وب‌سایت شرکت خود ببرید. ایجاد کدهای QR، اسکن‌ها قابل اندازه‌گیری هستند - می‌توانید اسکن‌های کل با زمان و مکان را پیگیری کنید. می‌توانید به راحتی آزمایش A/B را با چاپ کدهای QR مختلف بر روی رسانه‌های بازاریابی مختلف انجام دهید و اندازه‌گیری کنید که کدام یک بهترین عملکرد را دارد و بر روی کدام جمعیت‌شناسی.

در ابتدا پاسخ داده شد که: حداکثر ظرفیت یک کد QR استاندارد (طبق ویکی‌پدیا) 2953 بایت یا 23624 بیت است. هر بیت دارای دو حالت است، بنابراین تعداد جایگشت‌های ممکن 2 به توان 23624 یا حدود 3.4*10 به توان 7111 است.
اطلاعات ذخیره شده در یک کد QR معمولاً URL است، اما می‌توان هر چیزی را از داده‌های تماس گرفته تا داده‌های تقویم، آدرس‌های ایمیل، شماره تلفن‌ها، باز کردن پیامک، متن ساده و داده‌های موقعیت مکانی را ذخیره کرد.
ممنون از خواندن! حتماً من را دنبال کنید.
با من در Linkedin (Aachri Tyagi) ارتباط برقرار کنید تا سوالات بیشتری بپرسید.
چند رشته کاراکتر می‌توان تولید کرد؟ به همین تعداد.
آیا امکان اتمام کدهای QR وجود دارد؟
نه... قطعا نه!
کدهای QR در چگالی‌های مختلف نقطه می‌آیند - متراکم‌ترین در حال حاضر استفاده "QR-40" است که (اگر از حداقل افزونگی ممکن برای تصحیح خطا استفاده کنید) می‌تواند 2953 بایت - که 23624 بیت است را ذخیره کند.
این بدان معناست که 223624 کد QR-40 ممکن وجود دارد. این یک عدد غیرقابل تصور بزرگ است.
این بیشتر از تعداد اتم‌ها، کوارک‌ها، فوتون‌ها و غیره در جهان قابل مشاهده است!
بنابراین غیرممکن است که کدهای QR متراکم را تمام کنیم.
کمترین چگالی QR-1 است - کوچکترین، ظاهری "بلوکی" تر کد QR. اگر حداکثر افزونگی را برای بهترین تصحیح خطای ممکن روشن کنید - و بنابراین کوچکترین ظرفیت ممکن یک کد QR فقط فضای 7 بایت دارد.
من "فقط" 7 بایت می‌گویم - و مطمئناً، این خیلی زیاد به نظر نمی‌رسد - اما 7 بایت 56 بیت است - که به این معنی است که 256 QR-1 ممکن وجود دارد.
این هنوز یک عدد غیرقابل تصور بزرگ است.
این عدد برابر با مجموع مقیاس تعداد گورخرانی است که تا به حال روی زمین زندگی کرده‌اند.
به طور خلاصه
این عدد عملاً بی‌نهایت است....
با این حال، اگر هنوز می‌خواهید محاسبات را انجام دهید، در اینجا چند واقعیت وجود دارد
ظرفیت کدهای QR گفته می‌شود 2953 بایت است
اگر محاسبات را انجام دهیم
2953 بایت
\= 23648 بیت.
هر بیت می‌تواند صفر یا یک باشد... بنابراین 2^23648 احتمال... که به 5.719*10^7118 می‌رسد
همچنین توجه داشته باشید که در حال حاضر چگالی اطلاعات رمزگذاری شده به چگالی ماده‌ای که روی آن چاپ شده است بستگی دارد. با افزایش این چگالی، می‌توانیم داده‌های بیشتری را ذخیره کنیم و در نتیجه تعداد کدهای QR منحصربه‌فردی که می‌توان تولید کرد را به بی‌نهایت برسانیم.
به آنچه تولیدکننده‌ها می‌گویند نگاه کنید...

"منحصربه‌فرد بودن" با حداقل تلاش به دست می‌آید. حتی اگر یک نقطه به داده‌ها اضافه کنید، یک کد QR جدید و منحصربه‌فرد دریافت خواهید کرد.
ممنون از A2A Varun Anand. من تازه متوجه شدم که بی‌نهایت چقدر می‌تواند بزرگ باشد.
حداکثر ظرفیت یک کد QR استاندارد (طبق ویکی‌پدیا) 2953 بایت یا 23624 بیت است. هر بیت دارای دو حالت است، بنابراین تعداد جایگشت‌های ممکن 2 به توان 23624 یا حدود 3.4*10 به توان 7111 است. در حال حاضر، ذخیره‌سازی داده دارای چگالی محدودی است و توسط اندازه محیط محدود شده است.
نرم‌افزار DRPU امکان تولید کد QR را فراهم می‌کند. نرم‌افزار یک کد QR واحد و همچنین به صورت انبوه برای پردازش دسته‌ای تولید می‌کند. این به کاربر بستگی دارد که در زمان مورد نیاز چند کد QR نیاز دارد.


تعریف و مفهوم کد QR
"کد QR" مخفف "کد پاسخ سریع" است.
این نوعی بارکد است که برای خوانایی سریع و ظرفیت ذخیره‌سازی بالا طراحی شده است. کدهای QR که در صنعت خودرو ریشه دارند، به ابزاری پرکاربرد در بخش‌های مختلف تبدیل شده‌اند. الگوی منحصربه‌فرد مربع‌های سیاه که روی پس‌زمینه سفید چیده شده‌اند، اطلاعاتی را رمزگذاری می‌کند که با اسکن، دسترسی فوری به داده‌ها، وب‌سایت‌ها یا سایر منابع دیجیتال را فراهم می‌کند. این پرس و جوی فوری داده‌ها دلیل نام‌گذاری آن به عنوان کد پاسخ سریع است که تعامل سریع و کارآمد را امکان‌پذیر می‌سازد.

کدهای QR چه هستند؟
کدهای QR که به راحتی با بارکدهای مربعی شکل شناخته می‌شوند، برای ذخیره اطلاعات به گونه‌ای طراحی شده‌اند که دستگاه‌های دیجیتال بتوانند به سرعت آن را بخوانند. این کدها که از مربع‌های سیاه و سفید تشکیل شده‌اند، در تنظیمات مختلف رایج هستند، به ویژه برای پیگیری محصولات در طول زنجیره تامین. علاوه بر این، با توجه به اینکه اکثر دستگاه‌های تلفن همراه قابلیت اسکن کدهای QR را دارند، این کدها به یک عنصر اصلی در تلاش‌های بازاریابی تبدیل شده‌اند. به طور قابل توجهی، در زمان‌های اخیر، نقش مهمی در ردیابی و کند کردن گسترش ویروس کرونا با ردیابی تماس‌ها ایفا کرده‌اند.

این فناوری نوآورانه کد QR در سال 1994 توسط Denso Wave، یکی از شاخه‌های تویوتا، پیشگام شد. هدف آن‌ها ساده اما بلندپروازانه بود: ردیابی دقیق‌تر وسایل نقلیه و قطعات در طول فرآیند تولید. برای انجام این کار، آن‌ها یک بارکد ایجاد کردند که می‌توانست نه تنها اعداد و حروف، بلکه کاراکترهای کاتاکانا و هیراگانا ژاپنی را نیز ذخیره کند.

آنچه کدهای QR را از بارکدهای استاندارد متمایز می‌کند، توانایی آن‌ها در ذخیره اطلاعات بیشتر است. بارکدهای سنتی مانند تصاویر یک بعدی هستند که از بالا به پایین خوانده می‌شوند و فقط می‌توانند مقدار محدودی از داده‌ها را در خود جای دهند. با این حال، کدهای QR را می‌توان به صورت عمودی و افقی خواند و به آن‌ها ساختاری دو بعدی می‌دهد. این بدان معناست که آن‌ها می‌توانند اطلاعات بسیار بیشتری را در خود جای دهند و آن‌ها را به یک انتخاب متنوع‌تر برای کاربردهای مختلف تبدیل می‌کند.

کدهای QR متنوع هستند و می‌توانند انواع مختلفی از داده‌ها از جمله پیوندهای وب‌سایت، شماره تلفن یا متن تا 4000 کاراکتر را در خود جای دهند.

کاربردهای آن‌ها در بسیاری از موارد عملی گسترش می‌یابد. به عنوان مثال:

دانلود برنامه: آن‌ها می‌توانند به عنوان پیوندهای مستقیم به برنامه‌ها در Apple App Store یا Google Play عمل کنند و فرآیند دانلود را ساده کنند.
امنیت حساب: کدهای QR با احراز هویت حساب‌های کاربری و تأیید اعتبار ورود به سیستم، امنیت آنلاین را افزایش می‌دهند.
اتصال Wi-Fi: این کدها می‌توانند جزئیات شبکه Wi-Fi مانند نام شبکه SSID، رمز عبور و نوع رمزگذاری را در خود جای دهند و فرآیند اتصال را ساده کنند.
پرداخت‌ها: آن‌ها با رمزگذاری و انتقال جزئیات پرداخت، تراکنش‌های مالی روان را تسهیل می‌کنند.
کاربردهای نوآورانه: تطبیق‌پذیری کدهای QR با کاربردهای منحصربه‌فرد نشان داده می‌شود، مانند یک شرکت مستقر در بریتانیا، QR Memories، که آن‌ها را روی سنگ قبر تعبیه می‌کند. این به بازدیدکنندگان امکان می‌دهد تا با اسکن، به ادای احترام آنلاین یا یادبود دسترسی پیدا کنند و یک یادبود دیجیتال برای درگذشته ایجاد کنند.

دامنه کدهای QR فراتر از این کاربردهای رایج است و حضور آن‌ها را در جنبه‌های مختلف زندگی روزمره نشان می‌دهد و ترکیبی یکپارچه از قلمروهای فیزیکی و دیجیتال را ارائه می‌دهد.

بهترین روش: نحوه اسکن کدهای QR
اکثر تلفن‌های هوشمند مدرن به اسکنرهای QR مجهز هستند که اغلب در برنامه دوربین ادغام شده‌اند و اسکن کدهای QR را آسان می‌کنند. این اسکنرها اساساً ابزارهایی هستند که برای رمزگشایی اطلاعات تعبیه شده در کدهای QR طراحی شده‌اند.

تبلت‌ها، مانند Apple iPad، نیز به دوربین‌هایی مجهز هستند که دارای قابلیت‌های خواندن QR داخلی هستند و راحتی را در انواع مختلف دستگاه‌ها تضمین می‌کنند.

برای برخی از دستگاه‌های قدیمی‌تر، ممکن است برای خواندن کدهای QR به یک برنامه خاص نیاز باشد. این برنامه‌ها به راحتی در دسترس هستند و می‌توان آن‌ها را از Apple App Store یا Google Play دانلود کرد.

فرآیند اسکن یک کد QR با دستگاه شما ساده و کاربرپسند است:

باز کردن اسکنر: برنامه خواندن QR یا دوربین دستگاه خود را باز کنید.
اشاره و اسکن: دوربین دستگاه خود را به سمت کد QR بگیرید. نکته خوب در مورد کدهای QR طراحی کاربرپسند آن‌ها است - لازم نیست دوربین خود را به طور کامل تراز کنید. می‌تواند کد را از زوایای مختلف ضبط کند.
نتایج فوری: هنگامی که کد اسکن شد، داده‌های رمزگذاری شده بلافاصله ظاهر می‌شود. به عنوان مثال، اگر کد QR حاوی کارت تماس باشد، دستگاه شما بلافاصله پیشنهاد ذخیره این اطلاعات تماس را می‌دهد.

این روش ساده شده امکان بازیابی فوری اطلاعات دیجیتال را فراهم می‌کند و کدهای QR را به ابزاری عملی و کارآمد در زندگی روزمره تبدیل می‌کند.

در حالی که کدهای QR به طور کلی ایمن هستند، می‌توانند توسط کلاهبرداران دستکاری شوند زیرا همه آن‌ها مشابه به نظر می‌رسند. یک کد QR مخرب ممکن است شما را به یک وب‌سایت جعلی هدایت کند که برای انتشار انواع بدافزار یا سرقت اطلاعات حساس شما مانند نام کاربری، اطلاعات کارت اعتباری یا پول طراحی شده است. در یک مورد، مجرمان سایبری از کدهای QR جعلی پارکینگ برای سرقت پول از طریق وب‌سایت‌های فیشینگ استفاده می‌کردند.

آیا یک کد QR اطلاعات شخصی من را جمع‌آوری می‌کند؟
نرم‌افزاری که برای تولید کدهای QR استفاده می‌شود معمولاً هیچ اطلاعاتی را که بتواند به طور مستقیم هویت افراد را شناسایی کند جمع‌آوری نمی‌کند. با این حال، انواع خاصی از داده‌های غیرشخصی را جمع‌آوری می‌کند که می‌توان توسط سازندگان کد QR به آن دسترسی داشت. این شامل:

داده‌های مکانی: شناسایی موقعیت جغرافیایی که کد QR در آن اسکن شده است.
معیارهای اسکن: ثبت تعداد دفعاتی که کد QR اسکن شده است و زمان دقیق هر اسکن.
اطلاعات دستگاه: تعیین سیستم عامل دستگاه مورد استفاده برای اسکن، مانند اینکه یک آیفون یا دستگاه اندرویدی باشد.

این اطلاعات، اگرچه به طور مستقیم هویت افراد را شناسایی نمی‌کند، اما بینش‌های ارزشمندی را در مورد الگوهای استفاده و دامنه کد QR ارائه می‌دهد و به سازندگان کمک می‌کند تا درک و بهینه‌سازی اثربخشی کدهای QR خود را بهبود بخشند.

آیا می‌توان یک کد QR را هک کرد؟
بله، کدهای QR می‌توانند به خطر بیفتند. هکرها ممکن است کدهای QR را برای انجام فعالیت‌های مخرب به دو روش اصلی دستکاری کنند:

تعبیه URL مخرب: با رمزگذاری یک URL مضر در یک کد QR، مهاجمان می‌توانند افراد را به دانلود بدافزار یا نرم‌افزار ناخواسته هدایت کنند. هنگامی که اسکن شد، این کدهای QR می‌توانند دانلود و نصب بدافزار را آغاز کنند و داده‌های شخصی را در معرض خطر قرار دهند.
ماموریت‌های فیشینگ: مشابه تعبیه URL مخرب، هکرها همچنین می‌توانند کاربران را از طریق یک کد QR به وب‌سایت‌های فیشینگ هدایت کنند. این وب‌سایت‌ها که اغلب خود را به عنوان سایت‌های قانونی جا می‌زنند، هدفشان فریب دادن افراد برای وارد کردن اطلاعات حساس مانند نام کاربری یا داده‌های مالی است و در نتیجه امنیت آن‌ها به خطر می‌افتد.

اقدامات حفاظتی:

قبل از اسکن تأیید کنید: همیشه قبل از اسکن منبع یک کد QR را تأیید کنید. اگر از منبع ناشناخته یا مشکوک است، از اسکن آن خودداری کنید.
از اسکنرهای QR امن استفاده کنید: برخی از برنامه‌های اسکنر کد QR ویژگی‌های امنیتی اضافی مانند بررسی URL برای تهدیدات امنیتی شناخته شده قبل از باز کردن آن ارائه می‌دهند.
به روز باشید: به طور مرتب در مورد آخرین شیوه‌های امنیت سایبری به‌روز باشید و دیگران را در مورد خطرات مرتبط با کدهای QR آموزش دهید.

با درک این خطرات و اتخاذ اقدامات احتیاطی لازم، کاربران می‌توانند به طور قابل توجهی تهدیدات بالقوه ناشی از کدهای QR به خطر افتاده را کاهش دهند.

لیست بررسی: نحوه ایجاد ایمن کدهای QR
ایجاد کدهای QR روشی مناسب برای به اشتراک گذاری سریع اطلاعات است. با این حال، برای محافظت از داده‌ها و یکپارچگی کد QR، اطمینان از ایمن بودن فرآیند ایجاد ضروری است. برای ایجاد ایمن کدهای QR، این لیست بررسی بهترین روش‌ها را دنبال کنید، در حالی که برای ظاهری تمیزتر از نشانه‌های گلوله خودداری کنید.

انتخاب یک تولید کننده کد QR معتبر: تولید کنندگان کد QR شناخته شده و قابل اعتماد را انتخاب کنید. از ابزارها یا برنامه‌هایی که مشکوک به نظر می‌رسند یا نظرات منفی دارند دوری کنید. ابزاری را انتخاب کنید که ویژگی‌های امنیتی پیشرفته ارائه می‌دهد.
قبل از رمزگذاری محتوای خود را دوباره بررسی کنید: هر جزئیات اطلاعاتی را که در کد QR تعبیه می‌کنید با دقت تأیید کنید. هر کاراکتر رمز عبور Wi-Fi را برای جلوگیری از دسترسی غیرمجاز تأیید کنید. برای تغییر مسیرهای URL، اطمینان حاصل کنید که پیوند دقیق است و کاربران را به وب‌سایت صحیح هدایت می‌کند.
سفارشی‌سازی کد QR خود (اختیاری): از گزینه‌های سفارشی‌سازی مانند رنگ، قاب و شکل برای شخصی‌سازی کد QR خود استفاده کنید. اطمینان حاصل کنید که این سفارشی‌سازی‌ها خوانایی یا عملکرد کد QR را مختل نمی‌کنند.
رمزگذاری و افزودن محافظت با رمز عبور (برای اطلاعات حساس): داده‌ها را در کد QR رمزگذاری کنید تا از مشاهده غیرمجاز محافظت شود. برای یک لایه امنیتی اضافی، به ویژه با محتوای حساس، محافظت با رمز عبور را به کد QR اضافه کنید.
ایجاد و آزمایش کد QR قبل از توزیع: کد QR را با استفاده از تولید کننده انتخابی خود ایجاد کنید. کد QR را در دستگاه‌ها و برنامه‌های اسکن مختلف آزمایش کنید تا عملکرد صحیح آن را تضمین کنید. تأیید کنید که کد QR به طور دقیق به اطلاعات یا مقصد مورد نظر اشاره می‌کند.
نظارت بر کد QR خود: به طور مرتب مقصد کد QR را بررسی کنید، به ویژه اگر به یک وب‌سایت تغییر مسیر دهد، تا تأیید کنید که دستکاری یا به خطر نیفتاده است. آمار اسکن و ترافیک را برای تشخیص هرگونه فعالیت غیرعادی یا مشکلات امنیتی احتمالی نظارت کنید.

با دنبال کردن این مراحل، می‌توانید کدهای QR ایجاد کنید که نه تنها در انتقال اطلاعات موثر هستند، بلکه ایمن نیز هستند و تجربه‌ای قابل اعتماد را هم برای سازنده و هم برای کاربران نهایی تضمین می‌کنند.

کدهای QR با رمزگذاری داده‌ها در یک الگوی فشرده از مربع‌های سیاه و سفید عمل می‌کنند. این الگوها توسط یک اسکنر QR یا دوربین تلفن هوشمند خوانده می‌شوند. اسکنر ترتیب منحصربه‌فرد مربع‌ها را تفسیر می‌کند و آن را به اطلاعات دیجیتالی مانند متن، URL وب‌سایت یا انواع دیگر داده‌ها ترجمه می‌کند. کارایی کدهای QR در توانایی آن‌ها در ذخیره مقدار زیادی داده در فضای کوچک و اسکن آسان آن‌ها نهفته است و آن‌ها را به ابزاری متنوع برای بازیابی سریع داده‌ها و تعامل یکپارچه کاربر تبدیل می‌کند.

اجزای یک کد QR چه هستند؟
یک کد QR به دقت ساختار یافته است و شامل چندین جزء است که رمزگذاری و رمزگشایی دقیق داده‌ها را تسهیل می‌کند:

ماژول‌های داده: این‌ها مربع‌های سیاه و سفید هستند که اطلاعات باینری را نشان می‌دهند، با مربع‌های سیاه که ‘1’ و مربع‌های سفید ‘0’ را نشان می‌دهند. این توالی باینری انواع مختلفی از داده‌ها مانند اعداد، حروف یا URL را رمزگذاری می‌کند.
نشانگرهای موقعیت: این الگوهای مربعی متمایز که در سه گوشه کد QR قرار دارند، به اسکنرها کمک می‌کنند تا جهت‌گیری کد QR را شناسایی کنند و اطمینان حاصل کنند که داده‌ها صرف نظر از زاویه کد به درستی تفسیر می‌شوند.
منطقه ساکت: یک ناحیه واضح اجباری که در اطراف کد QR قرار دارد. این فضا کد را از سایر عناصر گرافیکی جدا می‌کند و از سوءتفاهم جلوگیری می‌کند.
الگوهای تراز و زمان‌بندی: این الگوها که به صورت مربع‌های کوچکتر در شبکه بزرگتر ظاهر می‌شوند، به حفظ ساختار کد QR و اطمینان از خوانایی آن کمک می‌کنند، که به ویژه زمانی مهم است که کد مخدوش یا تا حدی پنهان شده باشد.
اطلاعات نسخه: کدهای QR در اندازه‌های مختلفی عرضه می‌شوند که به عنوان نسخه شناخته می‌شوند، از نسخه 1 (21x21 ماژول) تا نسخه 40 (177x177 ماژول). اطلاعات نسخه که در کد QR رمزگذاری شده است، اندازه آن و در نتیجه ظرفیت آن برای ذخیره داده‌ها را نشان می‌دهد.
سلول‌های داده: این‌ها واحدهای فردی در ماژول‌های داده هستند که هر کدام یک بیت اطلاعات را در خود جای می‌دهند. ترتیب و تعداد این سلول‌ها حجم و نوع داده‌هایی را که کد QR می‌تواند حمل کند تعیین می‌کند.

درک این اجزا برای شناختن نحوه ذخیره و انتقال کارآمد اطلاعات توسط کدهای QR و تضمین یکپارچگی و دسترسی داده‌ها ضروری است.

انواع مختلف کدهای QR
کدهای QR بسیار متنوع هستند و می‌توانند اهداف مختلفی را انجام دهند، عمدتاً به دلیل توانایی آن‌ها در حالت‌های مختلف "ورودی" کار کنند. این حالت‌ها نوع داده‌ای را که می‌توان در کد QR ذخیره کرد، تعیین می‌کنند، همانطور که در "میدان اطلاعات نسخه" در خود کد QR نشان داده شده است. چهار حالت اصلی، یا حالت‌های ورودی، به شرح زیر است:

حالت عددی:

به طور خاص برای اعداد 0-9 طراحی شده است.
کارآمدترین ذخیره‌سازی داده‌ها را ارائه می‌دهد و امکان ذخیره تا 7089 کاراکتر را فراهم می‌کند.

حالت حروف عددی:

اعداد 0-9، حروف بزرگ A-Z و گروهی از نمادها ($, %, *, +, –, ., /, و :) از جمله فاصله را در خود جای می‌دهد.
می‌تواند تا 4296 کاراکتر را ذخیره کند.

حالت بایت (حالت باینری):

از کاراکترهای مجموعه کاراکتر ISO-8859-1 (اساساً، الفبای لاتین) پشتیبانی می‌کند.
ظرفیت 2953 کاراکتر را دارد.

حالت کاتاکانا:

در اصل برای کاراکترهای دو بایتی از مجموعه کاراکتر Shift JIS طراحی شده است، عمدتاً برای رمزگذاری کاراکترهای ژاپنی.
کمترین کارایی در فضا را دارد و امکان ذخیره 1817 کاراکتر را فراهم می‌کند.
یک حالت تفسیر کانال توسعه یافته (ECI) برای مجموعه کاراکتر UTF-8 کاتاکانا در دسترس است، اگرچه توجه داشته باشید که برخی از خواننده‌های QR جدیدتر ممکن است از این مجموعه کاراکتر پشتیبانی نکنند.

علاوه بر این حالت‌های اصلی، دو حالت تخصصی وجود دارد که عملکرد کدهای QR را اصلاح یا گسترش می‌دهند:

حالت الحاق ساختاریافته:

امکان رمزگذاری داده‌ها را در چندین کد QR فراهم می‌کند.
تا 16 کد QR می‌توانند به هم متصل شوند و به صورت متوالی خوانده شوند.

حالت FNC1:

به یک کد QR اجازه می‌دهد تا مانند یک بارکد GS1 عمل کند که به طور گسترده در مدیریت زنجیره تامین استفاده می‌شود.

توجه به این نکته مهم است که یک کد QR واحد می‌تواند چندین حالت را در خود جای دهد، به شرطی که اطلاعات نسخه صحیح در کد تعبیه شده باشد و تفسیر و رمزگشایی دقیق داده‌های ذخیره شده را تضمین کند.

سبک‌های کدهای QR
انواع مختلفی از اشکال و سبک‌های کدهای QR در دسترس هستند، اما پنج نوع به طور خاص رایج هستند. در حالی که همه آن‌ها هدف اساسی ذخیره و ارائه داده‌ها را دنبال می‌کنند، در ظاهر و طراحی ساختاری با هم تفاوت دارند.

کد QR:

نسخه کلاسیک و شناخته شده، که در دهه 1990 توسط Denso Wave توسعه یافته است.
با سه الگوی متمایز یابنده که در گوشه پایین سمت چپ، گوشه بالا سمت چپ و گوشه بالا سمت راست قرار دارند، مشخص می‌شود که به اسکنرها کمک می‌کند تا کد را به درستی شناسایی و بخوانند.

کد آزتک:

اگرچه شباهت‌هایی به کد QR دارد، کد آزتک که توسط Welch Allyn ایجاد شده است، با الگوی یابنده مرکزی منحصر به فرد خود متمایز می‌شود.
این الگوی یابنده مرکزی به جهت‌گیری و خوانایی کد کمک می‌کند.

MaxiCode:

در درجه اول توسط سرویس پستی ایالات متحده استفاده می‌شود.
مشابه کد آزتک در داشتن یک الگوی یابنده مرکزی، اما با الگوی لانه زنبوری خود به جای مربع‌ها، ظاهری منحصر به فرد دارد.

PDF417:

پیشگام کد QR، PDF417 در سال 1991 توسط Ynjiun Wang از Symbol Technologies اختراع شد.
ترکیبی از زیبایی‌شناسی کد QR و بارکد سنتی را ارائه می‌دهد و به راحتی با شکل مستطیلی کشیده خود قابل تشخیص است.

Semacode:

توسط یک شرکت نرم‌افزاری با همین نام ساخته شده است.
شبیه به یک کد QR استاندارد است اما فاقد الگوهای یابنده متمایز معمولاً مرتبط با کدهای QR سنتی است و ظاهری ساده‌تر ارائه می‌دهد.

هر یک از این انواع کدها با ساختارها و طرح‌های متمایز خود، نیازهای اسکن خاص و کاربردها را برآورده می‌کنند و تطبیق‌پذیری و سازگاری این فناوری ذخیره‌سازی داده‌ها را نشان می‌دهند.

کدهای QR ایستا در مقابل پویا
کدهای QR ایستا پس از ایجاد قابل تغییر نیستند زیرا داده‌ها در یک کد QR ایستا حک شده‌اند. آن‌ها برای داده‌های ثابت مانند رمزهای عبور شبکه یا شماره سریال مناسب هستند. در مقابل، کدهای QR پویا انعطاف‌پذیرتر هستند زیرا کاربران را به یک URL هدایت می‌کنند که می‌توان آن را تغییر داد.

کدهای QR: مثال‌های دنیای واقعی
اکنون که انواع مختلف کدهای QR و ظرفیت‌های منحصربه‌فرد ذخیره‌سازی داده‌های آن‌ها را بررسی کردیم، بیایید به دیدن این کدها در عمل بپردازیم. کاربردهای عملی کدهای QR به اندازه انواع آن‌ها متنوع است و به شیوه‌های نوآورانه در بافت زندگی روزمره و صنعت نفوذ می‌کند. اکنون، بیایید نگاهی دقیق‌تر به نحوه ظهور این انواع کدهای QR در سناریوهای دنیای واقعی بیندازیم و تطبیق‌پذیری و تأثیر آن‌ها را نشان دهیم.

در صدور بلیط رویداد: کدهای QR رویدادهای سنتی بلیط را متحول کرده‌اند و جایگزین بلیط‌های سنتی شده‌اند. شرکت‌کنندگان اکنون می‌توانند بلیط‌های خود را روی دستگاه‌های تلفن همراه خود حمل کنند، جایی که یک اسکن ساده در ورودی ورود سریع و ایمن را تضمین می‌کند.
در تبلیغات تعاملی: فراتر از هدایت صرف به وب‌سایت‌ها، کدهای QR در تبلیغات اکنون تجربیات فراگیر ارائه می‌دهند. اسکن یک کد ممکن است به یک ویدیوی تعاملی، یک تور مجازی یا محتوای انحصاری منجر شود و به طور قابل توجهی تعامل را افزایش دهد.
در شناسایی شخصی: در برخی از مناطق، کدهای QR بخشی از سیستم‌های شناسایی دیجیتال هستند. اسکن کد روی یک کارت شناسایی دیجیتال می‌تواند به سرعت هویت یک فرد را تأیید کند یا اطلاعات مربوطه را به اشتراک بگذارد و حریم خصوصی و کارایی را تضمین کند.
روی بسته‌بندی محصول: نگاهی به بسته‌بندی محصول مورد علاقه خود ممکن است یک کد QR را نشان دهد که به عنوان دریچه‌ای به جزئیات کامل محصول، حقایق تغذیه‌ای یا حتی پیشنهادات ویژه عمل می‌کند و تجربه خرید را افزایش می‌دهد و ارزش افزوده را به مصرف‌کننده ارائه می‌دهد.
در طول همه‌گیری کووید-19: بحران بهداشتی پذیرش کدهای QR را تسریع کرد، به ویژه در تلاش‌های ردیابی تماس. در بسیاری از کشورها در سراسر جهان، موسسات مانند بارها و رستوران‌ها از این کدها برای بررسی آسان از طریق برنامه ردیابی NHS Covid-19 استفاده می‌کردند و نقش مهمی در مهار گسترش ویروس با اطلاع‌رسانی به مشتریان در مورد قرار گرفتن در معرض احتمالی ایفا می‌کردند.
در منوهای رستوران: برای به حداقل رساندن تماس فیزیکی، بسیاری از رستوران‌ها کدهای QR را برای دسترسی به منو اتخاذ کرده‌اند. مشتریان به سادگی کد را اسکن می‌کنند تا منو را روی تلفن هوشمند خود مشاهده کنند، سفارش دهند و حتی پرداخت کنند و تجربه‌ای بدون تماس و روان را تضمین کنند.
در حمل و نقل عمومی: کدهای QR به طور فزاینده‌ای در سیستم‌های حمل و نقل عمومی برای صدور بلیط و اطلاعات استفاده می‌شوند. مسافران می‌توانند یک کد را اسکن کنند تا بلیط بخرند، به برنامه‌ها دسترسی پیدا کنند یا به‌روزرسانی‌های بی‌درنگ را دریافت کنند و تجربه سفر خود را ساده کنند.
در شبکه‌سازی و کارت‌های ویزیت: متخصصان کدهای QR را در کارت‌های ویزیت خود تعبیه می‌کنند. یک اسکن می‌تواند نمونه کارها، پروفایل LinkedIn یا سایر پلتفرم‌های حرفه‌ای فرد را نشان دهد و شبکه‌سازی را پویا و آموزنده‌تر کند.

در این کاربردها، کدهای QR تطبیق‌پذیری و سودمندی خود را نشان داده‌اند و ثابت کرده‌اند که ابزاری ارزشمند در نوسازی و ساده‌سازی تعاملات، تراکنش‌ها و انتشار اطلاعات در بخش‌های مختلف هستند.

مقالات مرتبط:
بدافزار چیست؟
فیشینگ چیست؟
ایمیل فیشینگ چیست؟
مهندسی اجتماعی چیست؟
ردپای دیجیتال چیست؟
نقض داده چیست؟


نه، این همان زیبایی ترکیبیات است.
فرض کنید یک شبکه بسیار ساده 6x5 داشته باشیم که 30 فضا دارد و هر کدام می‌تواند سیاه یا سفید باشد. چند الگوی مختلف می‌توانید روی آن شبکه قرار دهید؟ 2 به توان 30. این حدود یک میلیارد الگو است (دقیقاً 1,073,741,824). حالا، فرض کنید فقط یک فضای دیگر اضافه کنیم. ما به تازگی تعداد ترکیب‌های ممکن را دو برابر کرده‌ایم، زیرا هر یک از این یک میلیارد الگو با یک مربع سفید با یک میلیارد الگوی مشابه با مربع سیاه متفاوت است. سپس، اگر یک مربع دیگر اضافه کنید، همین امر اتفاق می‌افتد و غیره. این بدان معناست که 31 مربع دارای 2 میلیارد الگوی ممکن، 32 مربع دارای 4 میلیارد الگو و 33 مربع تا 8 میلیارد الگو است که الگویی برای هر انسان روی زمین است.
و این به هیچ وجه نزدیک به حد نیست. کدهای QR در اندازه‌های مختلفی وجود دارند، اما فرض کنید یک مثال با وضوح پایین داشته باشیم که دارای شبکه 25x25 است. این بدان معناست که 625 فضا وجود دارد که هر کدام می‌تواند سیاه یا سفید باشد. این بدان معناست که 2 به توان 625 ترکیب ممکن وجود دارد. اگر این عدد را محاسبه کنید، در حدود 1 با 188 صفر پشت سر آن است که بیشتر از تعداد اتم‌های موجود در جهان شناخته شده است. و این بزرگترین کدهای QR موجود نیستند.
الگوهای ممکن آنقدر زیاد است که ما نه تنها از آنها به عنوان شناسه‌های متمایز استفاده می‌کنیم، بلکه از آنها برای رمزگذاری اطلاعات واقعی مانند آدرس‌های وب و سایر تکه‌های متن استفاده می‌کنیم. در واقع، هیچ سناریویی وجود ندارد که کدهای QR تمام شوند.