কিভাবে পাইথন ব্যবহার করে একটি QR কোড তৈরি এবং ডিকোড করবেন

কিভাবে পাইথন ব্যবহার করে একটি QR কোড তৈরি এবং ডিকোড করবেন

একটি কিউআর কোড (কুইক রেসপন্স কোড) হল এক ধরনের ম্যাট্রিক্স বারকোড যা এনকোডেড ডেটা সংরক্ষণ করে। অল্প সময়ে বড় ডেটা সংরক্ষণ এবং অ্যাক্সেস করার ক্ষমতা থাকার কারণে এটির নাম দেওয়া হয়েছিল কুইক রেসপন্স কোড। আপনি এই QR কোডগুলি সর্বত্র খুঁজে পেতে পারেন: পোস্টার, ম্যাগাজিন, সিনেমা হল, ওয়েবসাইট, জিম, বিজ্ঞাপন ইত্যাদি।





পাইথন ব্যবহার করে আপনি আপনার নিজের QR কোড তৈরি করতে পারেন, এটি কাস্টমাইজ করতে পারেন এবং QR কোড থেকে তথ্য ডিকোড করতে পারেন।





একটি পাইথন পরিবেশ সেটআপ করুন

পাইথন প্রকল্পগুলির জন্য একটি বিচ্ছিন্ন পরিবেশ স্থাপন করার সুপারিশ করা হয়। এটি করার মাধ্যমে, আপনি প্রকল্পের নির্ভরতা সম্পর্কে আরও বুঝতে পারেন।





ভার্চুয়াল পরিবেশ তৈরি করা

আপনি পারেন পাইথনে একটি ভার্চুয়াল পরিবেশ তৈরি করুন বিভিন্ন উপায়ে: virtualenv, virtualenvwrapper, অথবা Anaconda বিতরণ। এখানে আমরা ব্যবহার করব virtualenv একটি ভার্চুয়াল পরিবেশ তৈরি করতে।

  1. ব্যবহার করে একটি ফোল্ডার তৈরি করুন mkdir [ফোল্ডার] কমান্ড, যেখানে আপনি এই প্রকল্পটি তৈরি করতে চান।
  2. প্রকার সিডি [ফোল্ডার] কমান্ড প্রম্পটে নতুন ডিরেক্টরিতে যাওয়ার জন্য।
  3. প্রকার virtualenv [পরিবেশের নাম] একটি ভার্চুয়াল পরিবেশ তৈরি করতে।
  4. টাইপ করে ভার্চুয়াল পরিবেশ সক্রিয় করুন [পরিবেশের নাম] স্ক্রিপ্ট সক্রিয়

প্রয়োজনীয় প্যাকেজ ইনস্টল করুন

পিপ কমান্ড ব্যবহার করে প্রয়োজনীয় পাইথন প্যাকেজ ইনস্টল করুন। নিশ্চিত করো যে তোমার আছে আপনার সিস্টেমে পিপ ইনস্টল করা হয়েছে



আপনার কমান্ড প্রম্পটে নিম্নলিখিত কমান্ডটি চালান।

pip3 install opencv-python qrcode numpy Image

আপনি যদি একসাথে সমস্ত প্যাকেজ ইনস্টল করতে না চান, তাহলে আপনি সেগুলি একে একে ইনস্টল করতে পারেন:





pip3 install opencv-python

এটি ওপেনসিভি-পাইথন প্যাকেজ ইনস্টল করে যা মূলত কম্পিউটার ভিশন, মেশিন লার্নিং এবং ইমেজ প্রসেসিংয়ের জন্য ব্যবহৃত হয়।

pip3 install qrcode

এটি কিউআরকোড পাইথন প্যাকেজ ইনস্টল করে যা কিউআর কোড তৈরি এবং পড়ার জন্য ব্যবহৃত হয়।





pip3 install numpy

এটি অসম্পূর্ণ পাইথন প্যাকেজ ইনস্টল করে যা অ্যারে দিয়ে কাজ করার জন্য ব্যবহৃত হয়।

pip3 install Image

এটি ইমেজ পাইথন প্যাকেজ ইনস্টল করে যা ফাইল থেকে ছবি লোড করতে এবং নতুন ছবি তৈরির জন্য বেশ কয়েকটি ফাংশন সরবরাহ করে।

কিউআর কোড তৈরি করুন

কোড তৈরি করতে, একটি দিয়ে একটি নতুন ফাইল তৈরি করুন .py এক্সটেনশন যা QR কোড জেনারেট করার জন্য কোড থাকবে।

আপনার পাইথন ফাইলে নিম্নলিখিত কোডটি আটকান এবং প্রোগ্রামটি চালান।

ফেসবুক কোড জেনারেটর কোথায়
import qrcode
# Data for which you want to make QR code
# Here we are using the URL of the MakeUseOf website
data = 'https://www.makeuseof.com/'
# File name of the QR code Image
# Change it with your desired file name
QRCodefile = 'MUOQRCode.png'
# Generating the QR code
QRimage = qrcode.make(data)
# Saving image into a file
QRimage.save(QRCodefile)

এটি প্রদত্ত তথ্যের জন্য একটি QR কোড চিত্র (MUOQRCode.png) তৈরি করবে (এই ক্ষেত্রে, www.makeuseof.com )। উৎপন্ন QR কোডটি এরকম কিছু দেখাবে:

একটি কাস্টমাইজড কিউআর কোড তৈরি করুন

আপনি কিউআর কোডটি কিউআরকোড লাইব্রেরির আশ্চর্যজনক বৈশিষ্ট্যগুলির সাথে কাস্টমাইজ করতে পারেন। আপনি কিউআর কোডের ফিল কালার, ব্যাকগ্রাউন্ড কালার, ইমেজ সাইজ, বক্স সাইজ এবং বর্ডার বেধ পরিবর্তন করতে পারেন।

ছবি এবং বাক্সের আকার পরিবর্তন করা

আপনি কিউআর কোড ছবির আকার পরিবর্তন করতে পারেন সংস্করণ QRCode ক্লাসে প্যারামিটার। এটি 1 এবং 40 এর মধ্যে একটি পূর্ণসংখ্যা গ্রহণ করে যেখানে 1 21x21 ম্যাট্রিক্সের সমান এবং 40 185x185 ম্যাট্রিক্সের সমান। মনে রাখবেন যে ডেটা নির্দিষ্ট আকারে খাপ খায় না, সংস্করণটি স্বয়ংক্রিয়ভাবে বেড়ে যাবে।

একইভাবে, আপনি ব্যবহার করে বাক্সের আকার পরিবর্তন করতে পারেন box_size QRCode ক্লাসে প্যারামিটার। এটি কিউআর কোডে প্রতিটি বাক্সের পিক্সেল নির্দিষ্ট করে।

# Importing libraries
import qrcode
import numpy as np
# Data which for you want to make QR code
# Here we are using URL of MakeUseOf website
data = 'https://www.makeuseof.com/'
# Name of the QR code Image file
QRCodefile = 'CustomisedImgBoxQRCode.png'
# instantiate QRCode object
qrObject = qrcode.QRCode(version=1, box_size=12)
# add data to the QR code
qrObject.add_data(data)
# compile the data into a QR code array
qrObject.make()
image = qrObject.make_image()
image.save(QRCodefile)
# print the image size (version)
print('Size of the QR image(Version):')
print(np.array(qrObject.get_matrix()).shape)

নিম্নলিখিত QR কোড ইমেজ ফাইল তৈরি করা হবে:

এছাড়াও, নিম্নলিখিত আউটপুট প্রদর্শিত হবে-

Size of the QR image(Version):
(33, 33)

নোট করুন যে ডেটা আকার অনুযায়ী সংস্করণটি স্বয়ংক্রিয়ভাবে স্কেল করা হয়েছে।

ভরাট রঙ পরিবর্তন করা

আপনি কিউআর কোডের ভরাট রঙ পরিবর্তন করতে পারেন ভরাট_রঙ প্যারামিটার

# Importing library
import qrcode
# Data for which you want to make QR Code
# Here we are using URL of MakeUseOf website
data = 'https://www.makeuseof.com/'
# Name of the QR Code Image file
QRCodefile = 'CustomisedFillColorQRCode.png'
# instantiate QRCode object
qrObject = qrcode.QRCode()
# add data to the QR code
qrObject.add_data(data)
# compile the data into a QR code array
qrObject.make()
image = qrObject.make_image(fill_color='red')
# Saving image into a file
image.save(QRCodefile)

নিম্নলিখিত QR কোড ইমেজ ফাইল তৈরি করা হবে:

পটভূমির রঙ পরিবর্তন করা

আপনি কিউআর কোডের ব্যাকগ্রাউন্ড কালার পরিবর্তন করতে পারেন পেছনের রঙ প্যারামিটার

# Importing library
import qrcode
# Data for which you want to make QR Code
# Here we are using URL of MakeUseOf website
data = 'https://www.makeuseof.com/'
# Name of the QR Code Image file
QRCodefile = 'CustomisedBGColorQRCode.png'
# instantiate QRCode object
qrObject = qrcode.QRCode()
# add data to the QR code
qrObject.add_data(data)
# compile the data into a QR code array
qrObject.make()
image = qrObject.make_image(back_color='blue')
# Saving image into a file
image.save(QRCodefile)

নিম্নলিখিত QR কোড ইমেজ ফাইল তৈরি করা হবে:

সীমানা পুরুত্ব পরিবর্তন

আপনি কিউআর কোডের সীমানা বেধ পরিবর্তন করতে পারেন সীমানা QRCode ক্লাসে প্যারামিটার।

# Importing libraries
import qrcode
# Data for which you want to make QR Code
# Here we are using URL of MakeUseOf website
data = 'https://www.makeuseof.com/'
# Name of the QR Code Image file
QRCodefile = 'CustomisedBorderQRCode.png'
# instantiate QRCode object
qrObject = qrcode.QRCode(border=10)
# add data to the QR code
qrObject.add_data(data)
# compile the data into a QR code array
qrObject.make()
image = qrObject.make_image()
image.save(QRCodefile)

নিম্নলিখিত QR কোড ইমেজ ফাইল তৈরি করা হবে:

QR কোড ইমেজ ব্যবহার করে QR কোড ডিকোড করুন

আপনি পাইথনের ওপেনসিভি লাইব্রেরি ব্যবহার করে কিউআর কোড ইমেজ থেকে তথ্য ডিকোড করতে পারেন। ওপেনসিভিতে একটি অন্তর্নির্মিত কিউআর কোড ডিটেক্টর রয়েছে। ডিটেক্টর ব্যবহার করে আপনি কিউআর কোড থেকে ডেটা ডিকোড করতে পারেন।

# Import Library
import cv2
# Name of the QR Code Image file
filename = 'MUOQRCode.png'
# read the QRCODE image
image = cv2.imread(filename)
# initialize the cv2 QRCode detector
detector = cv2.QRCodeDetector()
# detect and decode
data, vertices_array, binary_qrcode = detector.detectAndDecode(image)
# if there is a QR code
# print the data
if vertices_array is not None:
print('QRCode data:')
print(data)
else:
print('There was some error')

যদি প্রদত্ত ছবিটি একটি বৈধ QR কোড হয়, তাহলে ডিকোডেড ডেটা প্রদর্শিত হবে। এই ক্ষেত্রে, নিম্নলিখিত আউটপুট উত্পন্ন হবে-

QRCode data:
https://www.makeuseof.com/

ওয়েবক্যাম ব্যবহার করে কিউআর কোড লাইভ ডিকোড করুন

বেশিরভাগ সময় QR কোড স্ক্যান করার জন্য মানুষ একটি ওয়েবক্যাম ব্যবহার করতে থাকে। পাইথন এবং ওপেনসিভি লাইব্রেরির সম্ভাবনা ব্যবহার করে আপনি সহজেই একটি কিউআর কোড থেকে ডেটা ডিকোড করতে পারেন।

import cv2
# initalize the camera
cap = cv2.VideoCapture(0)
# initialize the OpenCV QRCode detector
detector = cv2.QRCodeDetector()
while True:
_, img = cap.read()
# detect and decode
data, vertices_array, _ = detector.detectAndDecode(img)
# check if there is a QRCode in the image
if vertices_array is not None:
if data:
print('QR Code detected, data:', data)
# display the result
cv2.imshow('img', img)
# Enter q to Quit
if cv2.waitKey(1) == ord('q'):
break
cap.release()
cv2.destroyAllWindows()

যখন আপনি এই কোডটি চালাবেন, আপনার ওয়েবক্যাম স্বয়ংক্রিয়ভাবে খোলা হবে। কেবল ওয়েবক্যামের সামনে কিউআর কোড ধরে রাখুন এবং ডেটা ডিকোড করে কমান্ড প্রম্পটে প্রদর্শিত হবে।

এনকোডিং এবং ডিকোডিং কিউআর কোড তৈরি করা সহজ

এই নিবন্ধটি ব্যবহার করে আপনি সহজেই এনকোড করতে পারেন, ডিকোড করতে পারেন এবং আপনার ইচ্ছামত QR কোড কাস্টমাইজ করতে পারেন। আপনি প্রদত্ত কোড ব্যবহার করে একটি সম্পূর্ণ QR কোড স্ক্যানার-জেনারেটর অ্যাপ্লিকেশন তৈরি করতে পারেন।

কিউআর কোড ব্যবহার করার জন্য বেশ কয়েকটি সৃজনশীল উপায় রয়েছে। সৃজনশীল হোন এবং আপনার ইচ্ছামতো কিউআর কোড ব্যবহার করুন।

শেয়ার করুন শেয়ার করুন টুইট ইমেইল অ্যান্ড্রয়েড এবং আইফোনে কিউআর কোড কীভাবে স্ক্যান করবেন

অ্যান্ড্রয়েড এবং আইফোন উভয়েই একটি কিউআর কোড স্ক্যানার আগে থেকেই ইনস্টল করা আছে। এটি কিভাবে ব্যবহার করতে হয় তা এখানে।

পরবর্তী পড়ুন
সম্পর্কিত বিষয়
  • প্রোগ্রামিং
  • কিউআর কোড
  • পাইথন
লেখক সম্পর্কে যুবরাজ চন্দ্র(60 নিবন্ধ প্রকাশিত)

যুবরাজ ভারতের দিল্লি বিশ্ববিদ্যালয়ের কম্পিউটার সায়েন্সের স্নাতক ছাত্র। তিনি ফুল স্ট্যাক ওয়েব ডেভেলপমেন্ট সম্পর্কে উত্সাহী। যখন তিনি লিখছেন না, তিনি বিভিন্ন প্রযুক্তির গভীরতা অন্বেষণ করছেন।

নিন্টেন্ডো সুইচ ওয়াইফাই সংযোগ করতে পারে না
যুবরাজ চন্দ্রের কাছ থেকে আরো

আমাদের নিউজলেটার সদস্যতা

প্রযুক্তি টিপস, রিভিউ, ফ্রি ইবুক এবং এক্সক্লুসিভ ডিলের জন্য আমাদের নিউজলেটারে যোগ দিন!

সাবস্ক্রাইব করতে এখানে ক্লিক করুন