42
Hình 2.17 Hình ảnh sau quá trình tách vùng quan tâm tồn cục
Sau khi đã có vùng quan tâm tồn cục với kích thước 524 x 303 pixel được tách một cách chính xác, ta sẽ tách riêng vùng hình ảnh các cột gel và phần ghi thơng tin bệnh nhân. Vùng hình ảnh chứa chọn 6 cột gel được đo nằm trong kích thước 524 x 127 pixel được tách riêng để xử lý. Vùng mới này tên gọi là vùng quan tâm cục bộ và ảnh của vùng này sẽ được xử lý xuyên suốt cho ra kết quả của chuỗi
ngưng kết. Tính tốn trên vùng quan tâm cục bộ ta thấy độ cao các cột gel theo
phương dọc từ pixel 30 đến 115, độ rộng của các cột gel là 38 pixel.
Hình 2.18 Vùng quan tâm cục bộ
Đểtăng cường chất lượng ảnh, bước tiếp theo ta sẽtăng cường độ sáng cho bức
ảnh. Tại đây, ảnh được chuyển sang miền HSV (Hue Saturation Value, tại miền HSV giá trị Pixel được biểu diễn với 3 tham số là H: bản chất cái pixel đó màu gì; S: độ xám của pixel đó; V: độ sáng của pixel đó) và thực hiện tăng giá trị V của bức ảnh đểtăng độsáng, sau đó chuyển lại ảnh về miền RGB để quan sát [6].
Tại bước làm nổi bật màu, ta tiếp tục chuyển ảnh sang miền HSV và phân
ngưỡng ảnh theo giá trịS (độxám). Như vậy, điểm ảnh nào có giá trịdưới ngưỡng sẽcó độ xám lớn nhất, điểm ảnh nào có giá trị trên ngưỡng sẽcó độ xám nhỏ nhất,
điều này sẽ làm cho màu sắc bức ảnh trở nên tươi hơn và ta chuyển lại ảnh sang miền RGB để quan sát.
43 Có thể dễ dàng nhận định, các điểm ảnh thể hiện độ ngưng kết sẽ có bản chất
màu là màu đỏ, các điểm ảnh là nền sẽ có màu vàng và xanh lá, màu của dung dịch trong cột gel cũng vậy. Trong bước này, ta lợi dụng thang màu xanh lá trong bức
ảnh RGB, các pixel màu đỏ trong thang xanh lá sẽ có giá trị nhỏ nhất và khác biệt so với các điểm ảnh cịn lại. Do đó, ảnh trong thang xanh lá sẽlàm tăng cường độ
hiển thị của các khối ngưng kết [5].
Ảnh ởthang màu xanh lá được chuyển vềảnh thang xám dùng để tách các khối
ngưng kết. Sử dụng bộ lọc Gauss với điểm nhiễu sẽ bị làm biến đổi giá trị theo các
điểm xung quanh làm cho giá trị tại điểm nhiễu vượt ngưỡng xét trong quá trình xét tại thang xám.
Sau khi được làm mờ, ảnh tại thang xám sẽ có 255 mức xám sẽđược lấy ngưỡng cốđịnh để tách các khối ngưng kết ra khỏi nền ảnh và chuyển sang ảnh nhị phân [5]. Lí do sử dụng ngưỡng cứng bởi vì các khối ngưng kết đã quá rõ ràng so với nền nên không cần thiết phải sử dụng phương pháp phân ngưỡng khác. Từ biểu đồ
histogram mức xám đồ, thu được dữ liệu 2 giá trị đỉnh mức xám của vùng ngưng
kết và phần nền. Qua thống kê và thử nghiệm đưa ra lựa chọn ngưỡng cốđịnh phù hợp [7].
Nhận thấy hình ảnh sau khi lấy ngưỡng chuyển sang ảnh nhị phân, các khối
ngưng kết vẫn còn nhiễu và chưa thực sựrõ ràng. Để khắc phục tình trạng này, ta sử dụng tiếp phép biến đổi hình thái học, cụ thể ở đây sử dụng là phép biến đổi Dilation (sự giãn nở) và Erosion (sự xói mịn) [8]. Phép biến đổi hình thái là một sốthao tác đơn giản dựa trên hình dạng của hình ảnh. Nó thường được thực hiện trên hình ảnh nhị phân. Nó cần hai yếu tốđầu vào, một là hình ảnh gốc của chúng
ta, đầu vào thứhai được gọi là phần tử cấu trúc hoặc hạt nhân quyết định bản chất của hoạt động. Hai tốn tửhình thái cơ bản là xói mịn và giãn nở.
Erosion - Mục đích của phương pháp này sẽ giúp:
• Loại bỏ những pixel nhiễu cơ lập
• Loại bỏ những pixel nhiễu xung quanh đối tượng giúp cho phần viền (cạnh) của đối tượng trở nên mịn hơn
44 • Với những hình ảnh bị đứt nét có thể giúp nối liền ảnh lại
• Với những pixel nhiễu xung quanh đối tượng sẽ trở thành viền của đối tượng
• Giúp nổi bật đối tượng trong ảnh hơn
Sau đó xử lý phát hiện ngưng kết có thể sử dụng thuật toán phát hiện đường biên vật thể [9]. Do ảnh được chụp trong mơi trường ít biến động, vị trí Gelcard
được đặt chuẩn chính giữa tâm Camera 1, nên vị trị các cột gel trong ảnh ít biến
động và có thểđược tách ra. Tại mỗi cột gel sau khi được tách riêng theo vị trí và
kích thước đã trình bày ở trên sẽđược xét ngưỡng theo phương dọc được chia theo sốpixel tương ứng để phân vùng: vùng 1 từ pixel 30 đến pixel 50, vùng 2 từ pixel 50 đến pixel 60.5, vùng 3 từ pixel 75 đến pixel 90, vùng 4 từ pixel 90 đến 105, vùng 5 từpixel 105 đến 115.
Sau khi đã có đường biên của vật thể sẽ tiếp tục tính tốn trọng tâm, diện tích của vật thể. Vì vị trí cột gel đã biết nên ta sẽ chỉ giữ lại các vật thể nằm trong cột gel sau khi tính tốn trọng tâm, diện tích vật thể. Các vật thể nằm trong từng cột gel sẽđược đánh giá vùng mà nó xuất hiện. Tổng hợp các đánh giá cho ta được kết quả của các mức ngưng kết. Sau khi có kết quả mức ngưng kết, dữ liệu các chuỗi
ngưng kết sẽ được tổng hợp để cho ra kết quả định danh nhóm máu. Kết hợp với mã Barcode và thông tin đăng ký bệnh nhân ban đầu đểlưu trữ lại dữ liệu kết quả thông qua CSDL mysql được thể hiện trên lược đồ hình 2.19.
45
CHƯƠNG 3. KẾT QUẢ THỰC TẾ
Trong chương 3 sẽ trình bày về các kết quả thực tế của việc thiết kế thiết bị từ
lắp ráp linh kiện đến các quá trình xử lý.
Lắp ráp linh kiện trên thiết bị Lắp đặt camera Lắp đặt camera
Thiết bị sử dụng 2 camera với 2 mục đích khác nhau nên được thiết kế và lắp
đặt tại các vị trí hồn tồn khác nhau. Camera thu ảnh gelcard được bố trí tại vị trí
ở đầu chính giữa của hệ thống với nhiệm vụ thu nhận chính xác hình ảnh các cột
gel để xử lý. Camera 1 thu nhận ảnh gelcard được đặt lên bệsao cho độ cao của camera so với sàn là d = 8 cm. Camera thu ảnh QRcode được đặt đối diện camera thu ảnh gelcard để có thể đồng thời thu ảnh 2 mặt của gelcard từ 2 camera này.
Camera được đặt tại vị trí chính giữa gelcard cách gelcard khoảng cách 4.0(cm), cho q trình thu ảnh QRcode chính xác nhờ tính năng lấy nét tự động. Camera
được kết nối trực tiếp với máy tính xử lý thơng qua cáp kết nối USB.
46
Lắp đặt Gelcard và khung vỏ
Gelcard được đặt lên giá và ở vị trí cách camera 1 thu nhận hình ảnh cột gel một khoảng cách là 7.6 cm. Chiều cao của giá là 5.7 cm. Tầm bìa nền trắng có kích
thước 22x16.6 cm được đặt tại vị trí cách mắt camera 1 khoảng cách là 21.2 cm sao cho nó lấp đầy khung hình 640x480 pixel.
Để việc thu nhận ảnh các gelcard từcamera được thuận lợi nhất, tránh các tác nhân nhiễu từ bên ngoài, các chi tiết gelcard và camera được đặt bên trong khung vỏ của thiết bị cách biệt với ánh sáng ngồi mơi trường. Kích thước khung vỏđược thiết kế dạng hình hộp chữ nhật với kích thước độ rộng, chiều dài, độ cao là 40 x 28 x 24 cm. Khung vỏ của thiết bị được thể hiện như hình 3.2
47 Hệ thống đèn Led được tính tốn lắp đặt tại nắp của thiết bị, giúp cho quá trình thu nhận ảnh Gelcard đạt hiệu quả tốt nhất. Thiết bị được sử dụng loại Led thanh
12V, cho ánh sáng trung tính. Đèn Led được bố trí tại nắp của thiết bị.
Phần khung vỏ của thiết bị được thiết kế với bìa mơ hình trắng, tránh đối đa
các ánh sáng nhiễu lọt vào trong quá trình thu nhận ảnh. Phần nắp trên được thiết kế với bản lềgiúp q trình đóng mở nắp đểđưa gelcard vào xử lý dễdàng hơn.
Kết quả xử lý ảnh
Quá trình xử lý ảnh được thực hiện trên máy tính với mơi trường là python 3.9, ngơn ngữ lập trình trong mơi trường là python, và giao điện được thiết kế sử dụng PyQt5.
Kết quả xứ lý ảnh QRcode
Camera 2 thu ảnh mặt sau của gelcard, nơi chứa QRcode/Barcode của nhà sản xuất và gửi về bộ xử lý trung tâm. Camera sẽ thu các bức ảnh có kích thước 1024x720 pixel và gửi về cho bộ xử lý trung tâm. Tại đây sử dụng thư viện pyzbar
để xử lý phát hiện mã code có chứa trên các thẻ. Kết quả trả về sẽ là vị trí của code trong ảnh, loại của code (QRcode hoặc Barcode) và mã code. Mã code sau khi
được nhận diện sẽđược giải mã theo mã hóa UTF-8 đểcó được thơng tin của thẻ.
Hình 3.3 thể hiện hình ảnh thu nhận từ Camera 2 và kết quảđọc Barcode.
Hình 3.3 Hình ảnh thu được từ camera 2 và kết quảđọc Qrcode/Barcode và kết quảđọc Qrcode/Barcode
48 Trong Hình 3.3 hình ảnh mặt sau của gelcard chứa mã code được thu nhận với
kích thước hiển thị 300x200. Sau quá trình thu nhận xử lý hình ảnh mặt sau gelcard và giải mã code kết quả trả về là chuỗi ký tự ‘718310220120299709’. Chuỗi ký tự
cho ta biết thẻ gelcard sử dụng định đạng CODE128, lot 21012.02, hạn sử dụng 10/2022.
Kết quả xử lý ảnh phát hiện ngưng kết
Sau khi bắt đầu chương trình phân loại nhóm máu và thực hiện lệnh “start” khởi tạo camera, hình ảnh ban đầu thu được từ camera số1 có kích thước là 640 x 480 pixel thể hiện ở hình 3.4. Để xử lý phát hiện được các mức ngưng kết, đầu tiên ta phải xác định và cắt vùng quan tâm tồn cục. Đó là khu vực mà chứa các buồng phản ứng và phần nhãn dán tên kháng thểtương ứng từng cột gel cũng như nơi ghi
chú thơng tin bệnh nhân. Hình 3.5 là ảnh mơ tả trích xuất lấy vùng quan tâm tồn cục.
Hình 3.4 Hình ảnh gelcard thu trực tiếp từ camera
Thơng qua việc bố trí và lắp đặt các linh kiện được nêu trong mục 2.3.1.3, với các thơng sốkích thước, khoảng cách cũng như vị trí đặt camera, gelcard và tấm bìa khung nền, dễ dàng tính tốn xác định được kích thước của vùng quan tâm toàn cục là 524 x 303 pixel, với tọa độ2 điểm góc là (58, 127) và (582, 430). Ảnh vùng quan tâm tồn cục chứa đầy đủ thơng tin các cột gel và phần thông tin mẫu bệnh phẩm do kỹ thuật viên đánh dấu sẽđược sử dụng cho toàn bộ quá trình xử lý.
49
Hình 3.5 Hình ảnh trích xuất vùng quan tâm tồn cục
Sau khi có vùng quan tâm toàn cục, đểxác định mức ngưng kết của các cột gel một cách dễ dàng, hình ảnh tiếp tục được tách ra vùng quan tâm cục bộ. Vùng quan tâm cục bộ chỉ chứa hình ảnh 6 cột gel với kích thước 524 x 127 pixel được thể
hiện tại Hình 3.6. Vùng quan tâm cục bộ được tăng sáng để dễ dàng quan sát và phân tách các mức ngưng kết. phân tách các mức ngưng kết.
Hình 3.6 Vùng quan tâm cục bộ
Hình ảnh sau khi được tăng sáng cho thấy rõ bản chất màu của các mức ngưng
kết hơn so với hình ảnh vùng quan tâm cục bộlúc trước. Hình ảnh khi chưa được
tăng sáng có các mức ngưng kết màu bị lẫn màu do nền tối, sau khi tăng sáng các
mức ngưng kết nổi bật so với vùng nền còn lại.
Trong bước làm nổi bật màu, ta tiếp tục chuyển ảnh sang miền HSV và phân
ngưỡng ảnh theo giá trịS (độxám). Để làm nổi bật rõ vịtrí ngưng kết so với phần nền ta phân ngưỡng với thang xám từ 0 đến 255 để làm nổi bật màu sắc các cột
ngưng kết so với phần nền. Sau khi phân ngưỡng điểm ảnh nào có giá trị dưới
ngưỡng sẽcó độ xám lớn nhất, điểm ảnh nào có giá trị trên ngưỡng sẽcó độ xám nhỏ nhất.
50
Hình 3.7 Ảnh thu được sau khi phân ngưỡng
Ảnh sau khi được làm nổi bật màu sắc bằng phân ngưỡng các phần nền có giá trị xám thấp chuyển hẳn thành màu xám trắng, một số có giá trị hơn ngưỡng thì
được nổi bật nhưng có bản chất màu là màu vàng và xanh nhạt, các khối ngưng kết sẽđược tăng cường màu sắc là màu đỏ.
Sau khi làm nổi bật màu sắc, ta thấy rõ các ngưng kết sẽcó màu đỏ, cịn phần nền là màu xám trắng, và xen lẫn màu xanh nhạt. Do đó khi chuyển ảnh về thang màu xanh lá, sẽlàm tăng cường độ hiển thị của các khối ngưng kết. Hình ảnh thu
được sau khi chuyển sang thang màu xanh lá được thể hiện tại Hình 3.8.
Hình 3.8 Hình ảnh sau khi chuyển sang thang màu xanh lá
Phần ngưng kết tách biệt hồn tồn so với phần cịn lại của bức ảnh trong thang màu xanh lá. Hình ảnh chỉcịn rõ 2 đối tượng phân tích là ngưng kết và phần nền.
Để chuẩn bịcho bước chuyển ảnh sang thang nhịphân để phân tích, ta chuyển
ảnh qua thang xám để dễ dàng xét ngưỡng tách riêng các khối ngưng kết ra so với phần nền. Trong thang xám các điểm ảnh có giá trị xám từ 0 đến 255, lựa chọn
ngưỡng 47 để tách phần ngững kết ra so với phần nền cịn lại. Hình 3.9 thu được sau quá trình chuyển sang thang xám và làm mờ bởi bộ lọc Gauss.
51
Sau khi thu được ảnh tại thang xám, tiếp tục sử dụng bộ lọc Gauss để làm mờ các điểm nhiễu. Sau đó ảnh được lấy ngưỡng cốđịnh và chuyển sang ảnh nhị phân
như tại Hình 3.10.
Hình 3.10 Ảnh được lấy ngưỡng và chuyển sang nhị phân
Do sau khi thực hiện nhị phân hóa ảnh, một sốvùng ngưng kết được phân tách
còn bé, chưa rõ ràng. Ta vận dụng sử dụng thêm phép toán dilate và erode đểtăng cường cho việc xác định đường biên ngưng kết. Kết quảthu được như hình 3.11.
Hình 3.11 Ảnh nhị phân sau phép Dilate và Erode
Sau khi phân vùng chính xác từng vị trí ngưng kết, ta sử dụng thuật tốn phát hiện đường biên (Contour) cho ảnh nhị phân hóa để thực hiện khoanh vùng các
đường bao được phân tách ra và hiển thị lên ảnh ban đầu. Kết quảthu được là các
đường bao khối ngưng kết trên hình ảnh vùng quan tâm tồn cục như trên hình
3.12.
52
Xác định vùng bao của từng ngưng kết trong các cột gel, từđó tính tốn ra tọa
độ trọng tâm của vùng ngưng kết. Vì vị trí của từng cột gel ta có thểtính tốn được cụ thể nên ta sẽ chỉ giữ lại các vật thểmà xác định được ởbước trước nằm trong cột gel sau khi tính tốn trọng tâm, diện tích vật thể. Các vật thể nằm trong từng cột gel sẽđược đánh giá vùng mà nó xuất hiện. Tổng hợp các đánh giá sẽ cho ta
được kết quả của các mức ngưng kết. Kết quả của xác q trình xác định ngưng
kết được mơ tả tại Hình 3.13.
Hình 3.13 Kết quảquá trình xác định mức ngưng kết
Trong Hình 3.13 các cột gel được xử lý các vùng ngưng kết sau khi sử dụng phát hiện đường biên được thể hiện bằng viền màu đỏ khép kín, trọng tâm của các
53 khối ngưng kết thể hiện bằng chấm tròn trắng nằm giữa. Từđường biên và trọng tâm của vùng ngưng kết, tham khảo tài liệu hướng dẫn phân loại mức độ ngưng
kết gelcard của bộ y tế Hình 1.4 và từ việc so sánh trọng tâm khối ngưng kết có