Professional Documents
Culture Documents
LỜI CẢM ƠN
Trên thực tế không có sự thành công nào mà không gắn liền với những sự hỗ trợ,
giúp đỡ dù ít hay nhiều, dù trực tiếp hay gián tiếp của người khác. Trong suốt thời gian
từ khi bắt đầu học tập ở giảng đường đại học đến nay, em đã nhận được rất nhiều sự
quan tâm, giúp đỡ của quý Thầy Cô, gia đình và bạn bè. Với lòng biết ơn sâu sắc nhất,
đã cùng với những tri thức và tâm huyết của mình để truyền đạt vốn kiến thức quý báu
cho em trong suốt quá trình học. Và đặc biệt, trong môn học Xử Lý Ảnh này thầy Mai
Vinh Dự đã tận tình giảng dạy, truyền đạt thêm cho em những kiến thức hay về môn
học này. Em xin chân thành cảm ơn thầy đã tận tâm hướng dẫn trong suốt quá trình học
tập. Bước đầu đi vào thực tế, kiến thức của chúng em còn hạn chế và còn nhiều bỡ ngỡ.
Do vậy, không tránh khỏi những thiếu sót là điều chắc chắn, em rất mong nhận được
những ý kiến đóng góp quý báu của quý thầy để kiến thức của em được hoàn thiện hơn.
Em xin gửi đến thầy lời chúc tốt đẹp nhất trong cuộc sống. Kính chúc quý thầy dồi
dào sức khỏe và thành công trong sự nghiệp cao quý.
Em xin trân trọng cảm ơn!
MỤC LỤC
LỜI CẢM ƠN ..........................................................................................................i
DANH MỤC HÌNH VẼ ........................................................................................iv
MỞ ĐẦU ................................................................................................................1
CHƯƠNG 1 PHÂN TÍCH ỨNG DỤNG CHUNG CỦA XỬ LÝ ẢNH TRONG
CÔNG NGHIỆP 2
1.1 Các ứng dụng chung của xử lý ảnh trong công nghiệp ...........................2
1.1.1 Nhận diện/kiểm tra ngoại dạng sản phẩm ..........................................2
1.1.2 Nhận diện/kiểm tra màu sắc ...............................................................2
1.1.3 Đo lường/kiểm tra kích thước không tiếp xúc ...................................3
1.1.4 Kiểm tra kí tự quang học (OCV) ........................................................4
1.1.5 Điều hướng Robot ..............................................................................5
1.1.6 Đọc mã vạch .......................................................................................5
1.1.7 Giám sát sản phẩm và thành phần lắp ráp ..........................................6
1.1.8 Theo dõi khiếm khuyết.......................................................................7
1.1.9 Kiểm tra 3D ........................................................................................8
1.1.10 Phân tích văn bản và viết tay............................................................9
1.2 Lợi ích ....................................................................................................10
CHƯƠNG 2 PHƯƠNG PHÁP NHẬN DẠNG MÃ QR-CODE TRONG CÔNG
NGHIỆP 11
2.1 Đặt vấn đề ..............................................................................................11
2.2 Giới thiệu về QR-CODE........................................................................11
2.2.1 QR-CODE: Mã vạch thế giới mới ...................................................11
2.2.2 Thuật toán QR-CODE ......................................................................12
2.2.3 Tạo bộ mã sửa lỗi .............................................................................15
2.2.4 Chọn mẫu mặt nạ phù hợp ...............................................................16
2.2.5 Thêm thông tin phiên bản ................................................................18
2.2.6 Thêm dữ liệu bist..............................................................................19
2.2.7 Sắp xếp theo cột từ dưới lên .............................................................20
2.2.8 Hoàn tất QR-CODE .........................................................................21
MỞ ĐẦU
1. Sự cần thiết của đề tài
Ngày nay, khoa học công nghệ là một phần tất yếu trong cuộc sống con người.
Cùng với sự phát triển của xã hội và thời đại, chúng đã có ứng dụng và ảnh hưởng sâu
sắc đến nhiều lĩnh vực đời sống. Nó phục vụ con người từ việc giải trí, kinh doanh, liên
lạc và đặc biệt những vấn đề phức tạp trong khoa học kỹ thuật và các ứng dụng vào công
nghiệp. Càng ngày, thời gian gia tăng tốc độ phát triển khoa học kỹ thuật càng tăng cao.
Như vậy, ta dễ dàng nhìn thấy khả năng thu thập xử lý thông tin (hình ảnh, âm thanh,
lời nói, văn bản…) gần như vô hạn của máy tính điện tử, các thiết bị điều khiển, thì
chúng ta có một câu hỏi đặt ra là: Con người phải làm gì với một khối tri thức khổng lồ
và ngày càng tăng nhanh tới mức không thể tưởng tượng nổi đó được thu thập một cách
vô cùng dễ dàng? Để trả lời phần nào câu hỏi đó, bộ môn xử lý ảnh được ra đời nhằm
tối ưu các thông tin mà hình ảnh mang lại, giảm thiểu độ sai lệch thông tin qua hình ảnh.
Do đó xử lý ảnh ngày càng phát triển và tiến bộ vì hình ảnh là một trong các phương
thức giao tiếp thông tin nhanh, dễ dàng rõ rang nhất đặc biệt là trong công nghiệp . Cho
nên nhóm chúng em làm bài tiểu luận này nhằm tìm hiểu về môt trong các phương pháp
nhận dạng ảnh và từ đó xây dựng một ứng dụng nhằm phục vụ quá trình xử lý ảnh trong
công nghiệp.
2. Mục tiêu nghiên cứu
Phân tích ứng dụng chung của xử lý ảnh trong công nghiệp và một phương pháp
nhận dạng ảnh. Xây dựng một ứng dụng dùng phương pháp nhận dạng ảnh trong công
nghiệp.
3. Kết cấu báo cáo đề tài
Mở đầu
CHƯƠNG I: PHÂN TÍCH ỨNG DỤNG CHUNG CỦA XỬ LÝ ẢNH TRONG CÔNG
NGHIỆP
CHƯƠNG II: PHƯƠNG PHÁP NHẬN DẠNG MÃ QR-CODE TRONG CÔNG
NGHIỆP
CHƯƠNG III: ỨNG DỤNG CỦA PHƯƠNG PHÁP NHẬN DẠNG MÃ QR-CODE
CHƯƠNG 1 PHÂN TÍCH ỨNG DỤNG CHUNG CỦA XỬ LÝ ẢNH TRONG CÔNG
NGHIỆP
1.1 Các ứng dụng chung của xử lý ảnh trong công nghiệp
1.1.1 Nhận diện/kiểm tra ngoại dạng sản phẩm
Sản phẩm sau khi được lắp ráp hay gia công đều cần được kiểm ngoại dạng trước
khi chuyển sang công đoạn tiếp theo để đảm bảo không để lọt bất cứ sản phẩm lỗi nào
tới khách hàng. Thông thường công đoạn kiểm tra này do người thao tác (công nhân)
trực tiếp dùng mắt kiểm tra với 1 quy trình nhất định. Việc này có nhiều ưu điểm song
lại không đạt được độ chính xác cao nhất mà nhà sản xuất mong muốn. Do đó việc áp
dụng công nghệ xử lý ảnh để nhận diện/kiểm tra ngoại dạng sản phẩm là điều cần thiết.
Hình 1.3 Phát hiện nhựa màu xanh còn sót trên khuôn
Hình 1.4 Phát hiện nhựa màu xanh không còn trên khuôn
1.1.3 Đo lường/kiểm tra kích thước không tiếp xúc
Các phép đo truyền thống được thực hiện với các dụng cụ đo bằng cơ (đã được
hiệu chỉnh rất chính xác) và người thực hiện đo phải được huấn luyện về kĩ thuật đo mới
đảm bảo kết quả đo có độ tin cậy cao. Khi sản xuất hàng loạt, sản phẩm rất nhiều & nhỏ,
khiến cho việc kiểm tra kích thước sản phẩm bằng con người trở nên hết sức khó khăn
và tốn kém. Vì vậy ta cần 1 giải pháp tối ưu và hiệu quả hơn như giải pháp đo kiểm kích
thước không tiếp xúc dùng camera giúp xác định chính xác khoảng cách, góc, diện tích,
độ khớp đường, độ khớp tròn … Từ đó nhà máy của bạn sẽ tiết kiệm được rất nhiều chi
phí nhân công, giảm được tối đa sai sót so với phương pháp đo kiểm truyền thống.
Hình 1.6 Kiểm tra chất lượng bề mặt sản phẩm bằng camera công nghiệp
Trong nhiều công việc do khan hiếm nguồn lao động hoặc phải hạn chế sử dụng
con người thì sử dụng Robot là một giải pháp thay thế. Robot đóng vai trò là cơ cấu
chấp hành, sẽ nhận mệnh lệnh từ bộ điều khiển hay máy tính để gắp/hút/nhặt sản phẩm
và sắp xếp/thả chúng vào 1 vị trí khác được lập trình sẵn. Nhưng bộ điều khiển cần dữ
liệu để có thể xử lý và đưa ra quyết định điều khiển Robot, dữ liệu đó có thể được đưa
về từ các cảm biến hoặc camera, với những quy trình phức tạp thì camera sẽ là giải pháp
tối ưu hơn.
Hình 1.7 Điều hướng tay robot gắp tôm bằng camera
1.1.6 Đọc mã vạch
Đọc, xác định và xử lý hàng trăm và hàng ngàn mã vạch mỗi ngày không phải là
nhiệm vụ dễ dàng và điều mà con người đơn giản không thể làm được ở quy mô lớn.
Ví dụ, điện thoại di động và thiết bị di động yêu cầu bảng mạch in nhỏ hơn hoặc
nhỏ hơn (hoặc PCB). Khi các nhà sản xuất bị áp lực phải sản xuất khối lượng PCB cao
hơn cho thị trường công nghệ đang phát triển, họ đang hướng tới một quy trình được
gọi là panelization. Trong quá trình này, một số bảng mạch giống hệt nhau được in trên
một bảng lớn, mỗi mạch sau đó được tách ra để kiểm tra lần cuối, để kiểm tra các bảng
này, tuy nhiên, một giải pháp dựa trên xử lý ảnh có tên là PanelScan đã được phát triển
để đọc mã vạch – là các mã định danh duy nhất của mỗi mạch có trên bảng PCN.
Trong lịch sử, con người đã áp dụng nhiệm vụ này bằng cách sử dụng máy quét
mã vạch cầm tay, điều này rất tốn thời gian và gây ra lỗi cho con người. Bằng cách thực
hiện một giải pháp dựa trên Machine Vision, các nhà sản xuất PCB có thể tiết kiệm được
khá nhiều chi phi sản xuất nhờ kiểm tra và ngăn ngừa sản phẩm lỗi.
Hình 1.8 Công đoạn giám sát sản phẩm sử dụng xử lý ảnh
1.1.8 Theo dõi khiếm khuyết
Có thể hiểu được, nếu bạn điều hành một dây chuyền sản xuất, bạn muốn sản
xuất các linh kiện hoặc sản phẩm không có khuyết tật. Xử lý ảnh là một công nghệ có
thể giúp các doanh nghiệp đạt được điều này.
Điều đó nói rằng, các hệ thống kiểm tra bằng thị giác máy có thể khác nhau về
mặt triển khai, một số yêu cầu người vận hành trong khi các giải pháp dựa trên Vision
phức tạp hơn không cần người vận hành. Một công ty có tên Shelton có một hệ thống
kiểm tra bề mặt gọi là WebSPECTOR xác định lỗi và lưu trữ hình ảnh và siêu dữ liệu
đi kèm liên quan đến hình ảnh. Khi các mặt hàng rơi vào dây chuyền sản xuất, các lỗi
được phân loại theo loại của chúng và được chỉ định một lớp đi kèm.
Việc làm này cho phép các nhà sản xuất phân biệt giữa các loại khiếm khuyết
khác nhau, những người sau đó có thể chỉ muốn dừng dây chuyền sản xuất khi X số loại
Y bị lỗi đã xảy ra. Một công nghệ dựa trên tầm nhìn máy khác của Shelton có tên là
WebSpector, sử dụng phần mềm hình ảnh và máy ảnh hiện đại có thể cải thiện năng suất
của nhà sản xuất vải lên 50%.
Hình 1.9 Ứng dụng xử lý ảnh để theo dõi dây chuyền sản xuất
1.1.9 Kiểm tra 3D
Xử lý ảnh có thể đóng một vai trò to lớn trong lĩnh vực ô tô. Một báo cáo cho
thấy thị trường thị giác máy tổng thể có thể trị giá tới 14,43 tỷ đô la vào năm 2022.
Một hệ thống kiểm tra bằng thị giác máy có chứa máy ảnh Dalsa Genie Nano
đang được sử dụng trong dây chuyền sản xuất để thực hiện các nhiệm vụ mà con người
đôi khi có thể phải vật lộn. Trong case study này, hệ thống sử dụng hình ảnh có độ phân
giải cao để xây dựng mô hình 3D đầy đủ các thành phần và chân kết nối của chúng. Khi
các thành phần đi qua nhà máy sản xuất, hệ thống thị giác máy sẽ quét nhiều hình ảnh
từ các góc khác nhau để tạo ra mô hình 3D, những hình ảnh này khi được kết hợp sẽ cho
phép hệ thống xác định xem các chân kết nối trên mạch có bị lỗi có thể gây ra hậu quả
tai hại không xuống dây chuyền sản xuất.
Kiểm tra 3D bằng xử lý ảnh có nhiều ứng dụng nhưng một trong những case
study phổ biến nhất cho công nghệ là sản xuất ô tô. Với các lỗi điện chiếm rất nhiều lỗi
ô tô hiện nay, việc có thể thực hiện quét 3d các chân kết nối có thể giúp các nhà sản xuất
ô tô tiết kiệm chi phí, giảm cơ hội vận chuyển các bộ phận điện bị lỗi và giúp cải thiện
an toàn cho người lái.
quét, code động sẽ chuyển hướng bạn đến máy chủ, nơi lưu chữ thông tin cụ thể trong
một cơ sở dữ liệu và được lập trình để tương tác cụ thể với hình ảnh được quét đó. Code
động tiện lợi hơn vì chúng được tạo ra áp dụng một lần, và bạn có thể thay đổi các thông
tin được hiển thị khi đó được quét như cac liên kết(domain,web) để hiển thị thông tin.
+ QRcode tĩnh: không giống như các code động, code tĩnh có thể lữu trữ các
thông tin trực tiếp qua hình thức văn bản hoặc dẫn đến các trang web mà không cần
chuyển hướng qua liên kết thứ cấp. Điều này có nghĩa rằng các thông tin hoặc liên kết
không thể thay đổi hoặc chỉnh sửa(bạn sẽ phải tạo ra một code tĩnh mới mỗi lần muốn
cập nhật). Code tĩnh rất lý tưởng cho những người muốn mã chứa thông tin của họ vĩnh
viễn(ví dụ, thông tin về ngày sinh và nhóm máu).
- Với chuỗi HELLO WORLD, là kiểu chuỗi, vậy nên Bộ chỉ chế độ sẽ là 0010.
Chuỗi nhị phân: 0010
- Bước 2 : Mã hóa độ dài của dữ liệu Trong bước này, chúng ta xác định có bao
nhiêu ký tự trong thông điệp, và chuyển độ dài đó thành một số nhị phân. Với chuỗi
HELLO WORLD, có 11 ký tự kể cả khoảng trắng. Ta chuyển 11 sang nhị phân, được
1011. Xem danh sách ở dưới. Khi mã hóa độ dài của dữ liệu, chúng ta mã hóa nó sử
dụng một số lượng bit đặc tả. Như đã nói ở đầu, chúng ta sử dụng QR code phiên bản 1,
vậy nên chúng ta cần sử dụng 9 bit để mã hóa độ dài dữ liệu. Ta thêm số 0 vào đầu chuỗi
cho đến khi đủ 9 bit: 000001011.
Phiên bản 1 tới 9:
+ Kiểu số: 10 bits -Kiểu chuôi: 8 bits -Kiểu nhị phân: 8 bits
+ Kiểu Nhật ngữ: 8 bits Phiên bản 10 tới 26
+ Kiểu số: 12 bits
+ Kiểu chuỗi: 11 bits -Kiểu nhị phân: 16
+ Kiểu Nhật ngữ: 10 bits Phiên bản 27 tới 40
+ Kiểu số: 14 bits -Kiểu chuỗi: 13 bits -Kiểu nhị phân: 16 bits
+ Kiểu Nhật ngữ: 12 bits Tới đây chuỗi nhị phân chúng ta là: 0010 000001011.
- Bước 3 : Để mã hóa chuỗi ký tự, ta chia chuỗi thành các cặp ký tự: HE,LL,O
,WO,RL,D. Với mỗi cặp ký tự, ta lấy giá trị mã ASCII của ký tự đầu nhân với 45, sau
đó cộng với giá trị mã ASCII của ký tự sau. Sau đó chuyển kết quả thu được thành một
chuỗi nhị phân 11 bit. Đối với các ký tự không có cặp, tao lấy giá trị mã ASCII của nó
rồi chuyển thành chuỗi nhị phân 6 bit. Đối với các chế độ khác: kiểu số, kiểu nhị phần,
kiểu Nhật ngữ, tạo sử dụng phương thức khác để mã hóa dữ liệu.
❖
- Bước 4: Hoàn thành các bit
+ Với chuỗi bit thu được ở trên, ta phải chắc chắn rằng nó có đủ độ dài. Điều này
phụ thuộc vào việc có bao nhiêu bit chúng ta cần để tạo phiên bản và sửa lỗi.
+ Với QR code phiên bản 1, sửa lỗi mức độ Q. Chúng ta phải tạo một chuỗi 104
bit. Nếu chuỗi bit nhỏ ít hơn 104, ta phải thêm 4 số 0 vào cuối chuỗi. Nếu thêm 4 số 0
được một chuỗi nhiều hơn 104, ta chỉ cần thêm số 0 cho tới khi nào đủ 104 bit.
+ Chuỗi của chúng ta có 59 bit, ta thêm 4 số 0 vào cuối chuỗi. (Còn nếu chuỗi có
102 bit thì ta thêm 2 số 0).
+ Chuỗi của ta bây giờ là:
0010 000001011 01100001011 01111000110 10001011100 10110111000
10011010100 001101 0000
- Bước 5:
+Giới hạn chuỗi thành các chuỗi con 8 bit, sau đó thêm các số 0 nếu cần.
+ Bước này ta chia chuỗi thành các nhóm 8 bit.
+ Ở chuỗi con cuối cùng, nếu chưa đủ 8 bit thì ta thêm vào sau đó các số 0 cho
tới khi đủ. Chuỗi của chúng ta thêm 2 số 0 vào sau chuỗi con cuối cùng. 00100000
01011011 00001011 01111000 11010001 01110010 11011100 01001101 01000011
01000000
- Bước 6:
+ Thêm các từ vào cuối nếu chuỗi quá ngắn Nếu chuỗi bit của chúng ta vẫn chưa
đủ dài, có hai chuỗi con đặc biệt: 11101100 và 00010001. Ta thêm thay phiên hai chuỗi
con này vào chuối chuỗi của chúng ta.
+ Chuỗi của chúng ta chỉ có 10 chuỗi con, cần phải thêm vào 3 chuỗi con nữa.
Bắt đầu thêm 11101100, sau đó thêm 00010001, rồi tới 11101100. Nếu cần nhiều hơn
thì cứ thêm lần lượt như vậy cho tới khi đủ số chuỗi con.
+ Chuỗi của chúng ta bây giờ: 00100000 01011011 00001011 01111000 11010001
01110010 11011100 01001101 01000011 01000000 11101100 00010001 11101100
+ Ta thực hiện triển khai tất cả các thành phần (x - 1) cho tới khi chúng ta được
đa thức. Công việc này thực hiện bằng tay khá phức tạp, sử dụng generator polynomial
tool. Ở đây chúng ta tạo 13 mã sửa lỗi:
a0x25 + a74x24 + a152x23 + a176x22 + a100x21 + a86x20 + a100x19 + a106x18 +a104x17 +
a x + a218x15 + a206x14 + a140x13 + a78x12
130 16
+ Dưới đây, cho thấy từng bước của việc phân chia đa thức cần thiết để tạo ra mã
sửa lỗi
+ Kết quả của bước này ta được mã sửa lỗi:
168 72 22 82 217 54 156 0 46 15 180 122 16
+ Ta đặt đoạn mã sửa lỗi sau đoạn mã dữ liệu:
32 91 11 120 209 114 220 77 67 64 236 17 236 168 72 22 82 217 54 156 0 46 15
180 122 16
+ Chuyển qua nhị phân:
00100000 01011011 00001011 01111000 11010001 01110010 11011100
01001101 01000011 01000000 11101 100 00010001 11101100 10101000 01001000
00010110 01010010 11011001 001 10110 10011100 00000000 00101110 00001111
10110100 01111010 00010000
2.2.4 Chọn mẫu mặt nạ phù hợp
- Bây giờ chúng ta đã mã hóa các dữ liệu, tất cả những gì còn lại là chọn mẫu mặt
nạ tốt nhất. Một mẫu mặt nạ thay đổi theo các bit, theo một quy tắc cụ thể. Các mẫu mặt
nạ được định nghĩa trong tiêu chuẩn mã QR. Có 8 mẫu mặt nạ. Sử dụng mô hình mặt nạ
cho phép chúng tôi để tạo ra tám mã QR khác nhau và sau đó chọn một trong đó sẽ được
dễ dàng nhất cho một đầu đọc QR để quét. Một đặc biệt mã QR có thể có các mẫu nhất
định hoặc những đặc điểm mà làm cho nó khó khăn cho thiết bị đọc QR chính xác quét
mã QR. Ví dụ, nếu điểm ảnh của cùng một màu sắc xảy ra gần nhau, một đầu đọc QR
có thể gặp khó khăn khi đọc chính xác các điểm ảnh.
- Mỗi mô hình mặt nạ tạo ra một mã QR code khác nhau. Sau khi chúng ta tạo ra
các mã khác nhau QR trong nội bộ, chúng tôi cung cấp cho mỗi một Số điểm xử phạt
theo các quy tắc quy định trong tiêu chuẩn mã QR. Sau đó, chúng tôi cho ra mã QR có
số điểm tốt nhất.
- Vị trí điều chỉnh mô hình Tử ví dụ này là chỉ mã hóa một phiên bản 1 mã QR,
chúng tôi không cần thêm bất kỳ mô hình điều chỉnh vị trí. Tuy nhiên, nếu chúng ta đã
mã hóa một mã QR phiên bản 2 hoặc lớn hơn, chúng tôi sẽ thêm các mẫu điều chỉnh vị
trí ma trận. Bảng dưới đây liệt kê các tọa độ của nơi để đặt các mô hình điều chỉnh vị
trí. Xem ví dụ ở bảng dưới đây.
- Ví dụ, hình ảnh dưới đây cho thấy các mô hình điều chỉnh vị trí cho phiên bản
mã QR 8. Mỗi mô hình điều chỉnh vị trí là một điểm ảnh màu đen bao quanh bởi các
điểm ảnh màu trắng được bao quanh bởi các điểm ảnh màu đen. Theo bảng trên, cho
phiên bản mã QR 8, vị trí các mô hình điều chỉnh 6, 24, và 42. Như ta thấy trong hình
ảnh, mô hình điều chỉnh vị trí được đặt tất cả các giao điểm của ba con số này, ngoại trừ
đã có lớn hơn mô hình phát hiện vị trí không đặt mô hình điều chỉnh vị trí trên hàng đầu
của các mô hình phát hiện vị trí trong góc của mã QR. Như hình :
- Bảng sau đây hiển thị các bit thông tin các loại được yêu cầu cho các cấp, sửa
lỗi khác nhau và các mẫu mặt nạ:
- Trong ví dụ Hello World mô hình mặt nạ tốt nhất là 0 (điều này được giải thích
dưới đây). Chúng ta đang sử dụng mức độ hiệu chỉnh lỗi Q, vì vậy các chuỗi loại thông
tin là 011010101011111. Như trong hình trên, các chuỗi loại thông tin được hiển thị hai
lần. Một trong số đó là dưới hai mô hình phát hiện vị trí hàng đầu, bắt đầu từ bên trái.
Nó bỏ qua quá khứ mô hình thời gian và phần dữ liệu của lưới. Điều thứ hai là quyền
của các mẫu phát hiện vị trí, bắt đầu từ phía dưới, bỏ qua dấu chấm đen, phần dữ liệu,
và mô hình thời gian. Cả hai sọc cùng một chuỗi: 011010101011111.
2.2.5 Thêm thông tin phiên bản
- Nếu mã QR của bạn là phiên bản 7 hoặc lớn hơn, bạn cần phải thêm các bit
thông tin phiên bản ma trận. Đây là những được đặt ở bên trái của mô hình trên bên phải
phát hiện vị trí và trên các mô hình phát hiện vị trí phía dưới bên trái, như thể hiện trong
hình ảnh dưới đây, trong đó có một phiên bản 9 Mã QR. Như hình:
- Bảng sau đây cho thấy một danh sách của các bit thông tin phiên bản cần thiết
cho mỗi phiên bản. Những bit được đặt trong cấu hình sau đây trong các vị trí được chỉ
định trong hình :
- Trong ví dụ của chúng ta, mã QR là nhỏ hơn so với phiên bản 7, vì vậy chúng
ta không cần thêm các bit thông tin phiên bản mã.
- Xuống cột một khi nó đạt đến đỉnh, một cột hai-pixel mới bắt đầu, thời gian này
sẽ đi xuống
- Khi đạt đến dưới cùng của lưới, thay đổi hướng một lần nữa, và tiếp tục trong
mô hình này giống như đường đi của con rắn.
❖ Chắc chắn bỏ qua mẫu timing :
- Khi thêm pixels, hãy chắc chắn để bỏ qua các mô hình thời gian.
import cv2
import numpy as np
from pyzbar.pyzbar import decode
#img = cv2.imread('1.png')
cap = cv2.VideoCapture(0)
cap.set(3,640)
cap.set(4,480)
while True:
cv2.imshow('Result',img)
cv2.waitKey(1)