TỔNG QUAN
ĐẶT VẤN ĐỀ
Mỗi năm, khoảng 10 triệu người trên thế giới tử vong vì ung thư, khiến bệnh này trở thành nguyên nhân gây tử vong đứng thứ hai toàn cầu Đặc biệt, 70% trường hợp tử vong do ung thư xảy ra ở các quốc gia có thu nhập thấp và trung bình Ung thư vẫn luôn là một vấn đề đáng lo ngại toàn cầu Theo thống kê GLOBOCAN 2020 từ Cơ quan nghiên cứu ung thư quốc tế (IACR) thuộc WHO, tại Việt Nam, ước tính có 182.563 ca mắc mới và 122.690 ca tử vong do ung thư, với xu hướng gia tăng cả về số ca mắc và tử vong.
U não là bệnh liên quan đến ung thư gây tử vong cao nhất ở các bệnh nhân dưới 14 tuổi và là nguyên nhân tử vong thứ 2 ở bệnh nhân dưới 20 tuổi.
Có khoảng 120 loại u não khác nhau, chủ yếu là các khối u trong mô não, cùng với u ở màng não, tuyến yên và dây thần kinh sọ não U não là tình trạng tăng trưởng bất thường của các tế bào trong não, chia thành hai loại: u não lành tính và u não ác tính, cả hai đều có thể gây tổn thương cho tế bào não và đe dọa tính mạng Xử lý hình ảnh y tế sử dụng các kỹ thuật để nâng cao hiệu quả chẩn đoán qua hình ảnh, giúp bác sĩ chẩn đoán bệnh một cách chính xác, nhanh chóng và hiệu quả Quá trình này được coi là thao tác ảnh đầu vào nhằm đạt được kết quả mong muốn.
Hình ảnh y khoa là quy trình tạo ra hình ảnh trực quan bên trong cơ thể nhằm phục vụ cho phân tích lâm sàng và can thiệp y tế Kỹ thuật này giúp phát hiện các cấu trúc bên trong bị che khuất bởi da và xương, đồng thời hỗ trợ trong việc chẩn đoán và điều trị bệnh Các công nghệ hình ảnh như X-quang, cắt lớp vi tính (CT), cộng hưởng từ (MRI) và chụp ảnh y khoa được sử dụng để thể hiện chức năng của các cơ quan và mô sinh lý học.
Medical photography encompasses various advanced imaging techniques, including Electrical Impedance Tomography (EIT), Positron Emission Tomography (PET), and Single-Photon Emission Computed Tomography (SPECT) These methods play a crucial role in visualizing and diagnosing medical conditions, enhancing the understanding of complex bodily functions.
Trong quá trình nghiên cứu tại trường đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh, nhóm sinh viên đã nghiên cứu luận văn của thạc sĩ Trần Thị Quỳnh Như về việc sử dụng phương pháp Wavelet để tăng cường biên ảnh nhằm xác định kích thước khối u đặc Từ đó, nhóm quyết định mở rộng đề tài với dự án “Xây dựng thuật toán phân vùng ảnh để phân loại và xác định kích thước khối u não”, nhằm cải thiện chất lượng ảnh và nâng cao hiệu quả chẩn đoán Đề tài cũng bao gồm thiết kế giao diện GUI bằng ngôn ngữ Python để hiển thị kết quả chẩn đoán một cách trực quan.
MỤC TIÊU
Mục tiêu của nghiên cứu là phân loại và xác định kích thước khối u não nhằm hỗ trợ bác sĩ trong việc lựa chọn phương pháp điều trị hiệu quả cho bệnh nhân ung thư Để thực hiện điều này, nghiên cứu đã xây dựng mô hình mạng nơ-ron tích chập (CNN) để phân loại bốn loại ảnh MRI não: u não loại Glioma, Meningioma, Pituitary và ảnh không u não Đồng thời, các kỹ thuật phân vùng ảnh được áp dụng để xác định kích thước khối u não Kết quả phân loại và kích thước khối u sẽ được hiển thị qua giao diện GUI được phát triển bằng ngôn ngữ Python.
NỘI DUNG NGHIÊN CỨU
Trong quá trình thực hiện Đồ án tốt nghiệp về xây dựng thuật toán phân vùng nhằm phân loại và xác định kích thước khối u não, đề tài đã tập trung giải quyết và hoàn thành các nội dung quan trọng.
- Nội dung 1: Tìm hiểu lý thuyết về khối u đặc, cách tạo hình ảnh MRI và đặc điểm ảnh MRI.
- Nội dung 2:Thiết kế phương pháp tìm phân loại dùng mạng nơ - ron.
- Nội dung 3:Nghiên cứu các kỹ thuật phân vùng khối u trong ảnh y tế và công thức tính kích thước khối u não.
- Nội dung 4:Viết Code phân loại và phân vùng dùng ngôn ngữ Python.
- Nội dung 5:Thiết kế giao diện GUI dùng ngôn ngữ Python.
- Nội dung 6:Chạy mô phỏng, hiệu chỉnh, thu thập kết quả.
- Nội dung 7:Đánh giá kết quả thực hiện.
- Nội dung 8:Viết báo cáo thực hiện.
- Nội dung 9:Bảo vệ luận văn.
GIỚI HẠN
Trong quá trình thực hiện đề tài, vì những hạn chế về thời gian và kiến thức, đề tài có những giới hạn như sau:
- Chỉ xử lý ảnh MRI u não.
- Chỉ tính được diện tích của khối u não với đơn vị pixel.
- Hệ thống được mô phỏng trên phần mềm và không có phần cứng.
BỐ CỤC
Bài viết này sẽ trình bày tổng quan về vấn đề nghiên cứu, lý do chọn đề tài, mục tiêu mà đề tài hướng đến, các nội dung đã được nghiên cứu trong quá trình thực hiện, cũng như giới hạn và cấu trúc của đề tài.
CƠ SỞ LÝ THUYẾT
MÔ TẢ VỀ BỆNH U NÃO
U não là sự phát triển bất thường của một số lượng lớn tế bào não, vượt khỏi sự kiểm soát của cơ thể Chúng có thể xuất phát từ các tế bào não, tế bào đệm của hệ thần kinh trung ương, hoặc từ các bộ phận khác và di chuyển đến não qua máu, được gọi là u di căn não.
Cơ chế hình thành u não bắt nguồn từ việc không có sự sinh ra thêm tế bào thần kinh sau khi sinh ra Khi có đột biến không rõ nguyên nhân trong DNA, các tế bào có thể phân chia mất kiểm soát, dẫn đến sự hình thành u não Tốc độ phát triển và vị trí của u não ảnh hưởng trực tiếp đến mức độ nghiêm trọng và chức năng của hệ thần kinh, có thể đe dọa tính mạng nếu không được chẩn đoán và điều trị kịp thời.
U não chỉ chiếm 2% tổng số ca ung thư ở mọi lứa tuổi, nhưng là nguyên nhân gây tử vong cao thứ hai trong các trường hợp ung thư ở trẻ em dưới 15 tuổi và người từ 20 đến 39 tuổi Đặc biệt, người trên 85 tuổi có tỷ lệ mắc u não cao nhất.
Có khoảng 120 loại u não khác nhau, bao gồm các khối u trong mô não, u ở màng não, tuyến yên và dây thần kinh sọ não Tất cả các dạng u não đều có thể gây nguy hiểm cho sức khỏe người bệnh Các khối u ở mô não hoặc u não lành tính thường tiến triển chậm, dẫn đến triệu chứng xuất hiện từ từ và âm thầm Ngược lại, nếu u não phát triển nhanh, người bệnh sẽ nhận thấy các triệu chứng rõ rệt hơn về tần suất và mức độ.
U não được phân loại theo 4 cấp độ, từ giai đoạn 1 đến giai đoạn 4 Để xác định cấp độ của khối u, bác sĩ dựa vào hình dạng tế bào khối u quan sát dưới kính hiển vi Nếu mẫu tế bào u có hình dạng gần giống với tế bào khỏe mạnh, cấp độ u não sẽ được đánh giá là thấp hơn.
Hiện nay, có 03 loại khối u não thường gặp là: Glioma – U thần kinh đệm, Meningioma – U màng não, Pituitary – U tuyến yên.
U thần kinh đệm là những khối u nguyên phát xuất phát từ nhu mô não, với triệu chứng đa dạng phụ thuộc vào vị trí, bao gồm thiếu sót thần kinh khu trú, bệnh não và co giật Chẩn đoán chủ yếu dựa vào hình ảnh MRI, bao gồm cả hình ảnh chuẩn theo trọng số T1 và T2.
Tế bào thần kinh đệm được chia thành nhiều loại khác nhau, bao gồm tế bào hình hạt, tế bào hình sao và tế bào đệm Các loại u thần kinh đệm được đặt tên theo vị trí phát sinh của tế bào, ví dụ như u tế bào hình sao, u nguyên bào thần kinh đệm, và u tế bào thần kinh đệm.
Hình 2.1:Ảnh MRI u não loại Glioma
U màng não là loại u nội sọ phổ biến nhất và thường lành tính Khi khối u này phát triển lớn, nó có thể gây ra các triệu chứng thần kinh nghiêm trọng hoặc thậm chí đe dọa tính mạng của bệnh nhân.
Vì vậy, người bệnh cần được chẩn đoán u màng não sớm đếm được điều trị kịp thời, hiệu quả.
U màng não là một loại u nguyên phát của hệ thần kinh trung ương, phát triển từ màng cứng hoặc màng nhện, lớp màng mỏng bao phủ não và tủy sống U màng não thường phát triển chậm, không xâm lấn mà đẩy các tổ chức xung quanh, với phần lớn trường hợp là lành tính Tuy nhiên, chúng có thể phát triển đến kích thước lớn và ở những vị trí đặc biệt, gây ra các triệu chứng thần kinh như yếu liệt nửa người, rối loạn thị giác và rối loạn tri giác, thậm chí đe dọa tính mạng bệnh nhân.
Hình 2.2:Ảnh MRI u não loại Meningioma
U tuyến yên là khối u tăng trưởng bất thường phát triển trong tuyến yên.
U tuyến yên nằm trong số những khối u nội tiết hay gặp nhất, chỉ đứng sau u tuyến giáp U tuyến yên chiếm khoảng 10% các khối u trong não.
Tuyến yên, một tuyến nhỏ hình hạt đậu nằm ở đáy não, đóng vai trò quan trọng trong việc điều chỉnh nhiều chức năng của cơ thể Mặc dù kích thước khiêm tốn, hormone do tuyến yên sản xuất ảnh hưởng đến các quá trình thiết yếu như tăng trưởng và sinh sản.
U tuyến yên là khối u phát triển bất thường trong tuyến yên, thuộc loại u nội tiết phổ biến, chỉ sau u tuyến giáp Chiếm khoảng 10% tổng số khối u trong não, u tuyến yên là một vấn đề y tế đáng chú ý.
Hầu hết các khối u tuyến yên là khối u lành tính, với u tuyến yên là loại phổ biến nhất, phát sinh từ tế bào thuỳ trước tuyến yên Những khối u này thường chỉ giới hạn trong tuyến yên hoặc các mô xung quanh, không lan rộng sang các bộ phận khác của cơ thể.
GIỚI THIỆU VỀ ẢNH MRI
Chụp cộng hưởng từ (MRI) là một phương pháp chẩn đoán y khoa tiên tiến, sử dụng từ trường và sóng radio để tạo ra hình ảnh chi tiết về cấu trúc giải phẫu của cơ thể.
Máy MRI là thiết bị đa năng giúp bác sĩ quan sát hình ảnh cắt lớp của các bộ phận cơ thể từ nhiều góc độ khác nhau Hiện nay, MRI được sử dụng rộng rãi trên toàn thế giới để kiểm tra hầu hết các cơ quan, đặc biệt là trong việc chụp ảnh chi tiết não và thần kinh cột sống.
Nguyên lý cơ bản của việc tạo ảnh MRI dựa trên hiện tượng cơ học và từ trường vô cực của hạt điện tử trong hạt nhân nguyên tử.
Tạo ra một từ trường mạnh bằng cách sử dụng nam châm có sức mạnh lớn là điều cần thiết Từ trường này giúp định hướng các hạt điện tử trong cơ thể bệnh nhân theo một hướng thích hợp, hỗ trợ quá trình điều trị hiệu quả hơn.
Tạo xoắn từ là quá trình sử dụng ê - cơ từ được truyền vào cơ thể bệnh nhân để phá vỡ từ trường mạnh đã được tạo ra trước đó Tín hiệu ê - cơ từ này kích thích các hạt điện tử trong cơ thể, khiến chúng tiếp tục chuyển động và xoắn quanh hướng của từ trường mới.
Khi từ trường mạng bị loại bỏ, các hạt điện tử trong cơ thể trở về vị trí cân bằng ban đầu, tạo ra một tín hiệu điện nhỏ Tín hiệu này được ghi lại bởi các anten thu sóng radio gần cơ thể.
- Xử lý tín hiệu: Tín hiệu thu được sau đó được xử lý bởi máy quét MRI.
Các thuật toán phức tạp được sử dụng để xác định vị trí và phân bố của các hạt điện tử trong cơ thể, giúp tạo ra hình ảnh chi tiết.
Hình ảnh MRI cuối cùng được tạo ra với sự khác biệt về màu sắc, cường độ và độ tương phản, phản ánh sự phân bố của các hạt điện tử trong cơ thể bệnh nhân.
Nguyên lý này giúp tạo ra hình ảnh sắc nét và chi tiết về cấu trúc, cơ quan và mô trong cơ thể, từ đó hỗ trợ các chuyên gia y tế trong việc phát hiện và chẩn đoán các vấn đề sức khỏe một cách rõ ràng hơn.
MỘT SỐ PHƯƠNG PHÁP PHÂN LOẠI U NÃO
2.3.1 Phương pháp máy vector hỗ trợ
Phương pháp phân loại dùng máy vector hỗ trợ (Support Vector Machine - SVM) là một trong những phương pháp phân loại u não phổ biến.
SVM là thuật toán học máy hiệu quả trong việc phân loại dữ liệu thành các lớp khác nhau bằng cách tối đa hóa sự tách biệt giữa các điểm dữ liệu Phương pháp SVM không chỉ đạt độ chính xác cao trong phân loại ảnh u mà còn có khả năng xử lý dữ liệu phi tuyến và giảm thiểu hiện tượng Overfitting trong quá trình huấn luyện mô hình.
Trong kỹ thuật máy vector hỗ trợ, không gian dữ liệu ban đầu được chuyển đổi thành không gian đặc trưng, từ đó xác định siêu mặt phẳng phân chia tối ưu cho tập S gồm e mẫu học.
S {( 1 , 1 ), ( 2 , 2 ), ( 3 , 3 ), , ( , )}( ) (2.1) Với một vector đầu vào n chiều xi R n thuộc lớp I hoặc lớp II (tương ứng nhãn yi = 1 đối với lớp I và yi= -1 đối với lớp II).
Khi đó, với mỗi siêu phẳng nhận được ta có: f(x) ≥ 0 nếu đầu vào x thuộc lớp dương, và f(x) < 0 nếu x thuộc lớp âm. b x w b x w x f n i j i
- w là vector pháp tuyến n chiều.
Hình 2.6:Phân tách tập mẫu theo siêu phẳng
Có nhiều mặt phẳng có thể được sử dụng để tách tập dữ liệu, nhưng để đảm bảo độ tin cậy cao trong việc phân loại sau này, cần xác định một ngưỡng (w, b) Khi đó, dữ liệu sẽ được phân chia thành các lớp có nhãn 1 (lớp I) và -1 (lớp II), nhằm tối đa hóa khoảng cách giữa các điểm dữ liệu.
2.3.2 Phương pháp mạng nơ - ron tích chập CNN
Mạng CNN là một loại mạng nơ-ron chuyên biệt cho việc xử lý và phân tích dữ liệu không gian như hình ảnh và video Đây là một trong những mạng nơ-ron phổ biến nhất, được sử dụng rộng rãi để phát triển các hệ thống phân tích và xử lý hình ảnh với độ chính xác cao trong lĩnh vực thị giác máy tính.
Hình 2.7:Cấu trúc mạng nơ - ron tích chập CNN
Lớp tích chập là thành phần cốt lõi trong mạng CNN, đóng vai trò quan trọng trong việc trích xuất thông tin đặc trưng từ dữ liệu đầu vào Lớp này bao gồm các ma trận, mỗi ma trận sẽ trích xuất các đặc trưng cấp thấp như cạnh và góc, cũng như các đặc trưng cấp cao như hình dạng và đối tượng.
Trong lớp tích chập, các đối tượng chính bao gồm:
Ma trận đầu vào trong lớp tích chập là một ma trận biểu diễn dữ liệu đầu vào, thường là hình ảnh hoặc ma trận đặc trưng từ lớp trước trong mạng CNN, với các kích thước chiều cao, chiều rộng và số kênh.
Bộ lọc (Filter/Kernel) là một ma trận nhỏ hơn so với ma trận đầu vào về kích thước chiều cao, chiều rộng và số kênh Mỗi phần tử trong bộ lọc đóng vai trò là một tham số được học trong quá trình huấn luyện mạng CNN.
Trường tiếp nhận (Receptive field) là khu vực trên ma trận đầu vào mà mỗi phần tử trong bộ lọc tương ứng Kích thước của trường tiếp nhận phụ thuộc vào kích thước của bộ lọc và stride (bước di chuyển) Nó giúp lớp tích chập tập trung vào các đặc trưng cục bộ trong đầu vào, từ đó nâng cao khả năng nhận diện và phân tích dữ liệu.
Ma trận đặc trưng (Feature map) là kết quả của phép tích chập giữa ma trận đầu vào và bộ lọc, trong đó mỗi phần tử tương ứng với một trường tiếp nhận trên ma trận đầu vào Kích thước của ma trận đặc trưng phụ thuộc vào kích thước của ma trận đầu vào, kích thước bộ lọc, cũng như padding và stride nếu có.
Hình 2.8:Ma trận đặc trưng Trong lớp tích chập của mạng CNN, có3 tham số quan trọng cần lưu ý là kích thước bộ lọc, bước nhảy và đệm.
Kích thước bộ lọc là một yếu tố quan trọng trong lớp tích chập, quyết định trường tiếp nhận của lớp Bộ lọc nhỏ giúp trích xuất các đặc trưng cục bộ và chi tiết như cạnh, đường viền, và các điểm sáng tối Tuy nhiên, việc lựa chọn kích thước bộ lọc phù hợp còn phụ thuộc vào bản chất và nhiệm vụ của mạng CNN Kích thước bộ lọc nhỏ sẽ giảm số lượng tham số, nhưng có thể không đủ để trích xuất các đặc trưng phức tạp như bộ lọc lớn.
Bước nhảy trong quá trình tích chập xác định cách bộ lọc di chuyển trên ma trận đầu vào Nếu bước nhảy là 1, bộ lọc sẽ trượt qua từng pixel liên tiếp Ngược lại, với bước nhảy là 2, bộ lọc sẽ bỏ qua 1 pixel giữa các lần trượt, tạo ra sự phân tán trong quá trình xử lý dữ liệu.
Hình 2.9:Mô tả chức năng tham số bước nhảy trong lớp tích chập
Đệm là một kỹ thuật quan trọng trong xử lý tín hiệu, cho phép mở rộng kích thước đầu vào trước khi thực hiện tích chập Bằng cách thêm các giá trị 0 hoặc giá trị khác xung quanh viền của đầu vào, đệm giúp duy trì kích thước đầu ra sau khi tích chập, đồng thời bảo toàn thông tin ở các khu vực biên.
Công thức tính kích thước khối đầu ra là:
Hình 2.10:Kết quả kích thước khối đầu ra khi qua lớp tích chập
Kích thước của khối đầu ra được xác định khi khối đầu vào có kích thước W, sử dụng lớp tích chập với kích thước bộ lọc F Bộ lọc này di chuyển trên khối đầu vào với bước nhảy S và có P khoảng đệm được thêm vào khối đầu vào.
Lớp lấy mẫu là một thành phần quan trọng trong mạng nơ ron CNN, với nhiệm vụ chính là giảm kích thước không gian đầu vào bằng cách lấy mẫu các giá trị đại diện từ các vùng nhỏ Quá trình này, còn được gọi là lấy mẫu con hoặc lấy mẫu xuống, giúp giảm kích thước của mỗi map nhưng vẫn giữ lại thông tin quan trọng Thông qua việc lấy mẫu, lớp này không chỉ giảm số lượng tham số và tính toán mà còn tăng cường hiệu quả và tiết kiệm thời gian.
Lớp lấy mẫu cực đại (Max Pooling) là một phương pháp trong mạng nơ-ron, giúp chia các đầu vào thành các vùng không chồng chéo Trong mỗi vùng này, lớp sẽ chọn giá trị lớn nhất làm đại diện, từ đó tạo ra giá trị đầu ra cho lớp.
TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG
GIỚI THIỆU
Để đáp ứng yêu cầu của đề tài “Xây dựng thuật toán phân vùng ảnh để phân loại và tính kích thước của khối u não”, phần này sẽ thực hiện các nội dung liên quan đến tính toán và thiết kế hệ thống, bao gồm việc thiết kế sơ đồ khối hệ thống Chương này cũng sẽ trình bày thiết kế giao diện hiển thị kết quả phân vùng, phân loại và tính kích thước khối u não.
Thuật toán phân vùng được sử dụng để phân loại và xác định kích thước khối u não, với đầu vào là ảnh MRI và đầu ra là các giá trị dự đoán cho từng ảnh, bao gồm không có u não, loại u não và kích thước khối u Sơ đồ tổng quát của quá trình này được trình bày trong Hình 3.1.
Hình 3.1:Sơ đồ khối hệ thống
Nhiệm vụ của từng khối:
- Khối đầu vào:Sử dụng tập ảnh MRI u não được lấy từ bộ dữ liệu ảnh của tác giảMasoud Nickparvar.
Khối tiền xử lý là bước quan trọng trong việc chuẩn hóa ảnh trước khi huấn luyện mô hình, bao gồm việc điều chỉnh kích thước ảnh đầu vào và chuẩn hóa giá trị pixel Đồng thời, cần chia tập ảnh thành các tập Train, Val và Test, cũng như tạo nhãn cho từng ảnh trong các tập Train và Val để đảm bảo tính chính xác trong quá trình học máy.
Khối phân loại sẽ sử dụng mạng nơ-ron để huấn luyện, tập trung vào mô hình học sâu tự đề xuất cùng với các mô hình hiện có như YOLOv4 và EfficientNetB0 Mục tiêu là so sánh kết quả phân loại giữa các mạng này.
- Khối phân vùng: Đơn giản hoá ảnh sau khi phân loại, dán nhãn cho từng pixel, tìm pixel thuộc nền và đối tượng Làm rõ khối u trong ảnh.
- Khối đầu ra: Kết quả xác định loại ảnh não và kích thước của khối u não Đồng thời, xây dựng giao diện để đưa ảnh vào chẩn đoán.
Tập dữ liệu nghiên cứu bao gồm 7023 ảnh MRI u não từ bệnh nhân, được thu thập từ bộ dữ liệu của Masoud Nickparvar Trong đó, có 5712 ảnh dùng cho việc huấn luyện (Train) và 1311 ảnh cho kiểm tra (Test), được phân loại thành 4 tệp khác nhau.
Tập dữ liệu được chia thành 20% cho mục đích kiểm tra và 80% cho việc đào tạo và xác thực Dữ liệu bao gồm một số hình ảnh MRI của các loại u não và hình ảnh não bình thường, được sử dụng trong nghiên cứu này.
Hình 3.2:Một số hình ảnh MRI u não loại Glioma sử dụng trong đề tài
Hình 3.3:Một số hình ảnh MRI u não loại Meningioma sử dụng trong đề tài
Hình 3.4:Một số hình ảnh MRI u não loại Pituitary sử dụng trong đề tài
Hình 3.5 trình bày một số hình ảnh MRI não bình thường được sử dụng trong nghiên cứu Các hình ảnh 3.2, 3.3, 3.4 và 3.5 đều thuộc tập dữ liệu của Masoud Nickparvar Tập Test chứa 300 ảnh của loại u Glioma.
Meningioma has a total of 306 images, while Pituitary tumors have 300 images, and there are 406 images of normal brain tissue without tumors In the training dataset, there are 1,321 images of Glioma, 1,339 images of Meningioma, 1,457 images of Pituitary tumors, and 1,595 images of normal brain tissue without tumors.
TIỀN XỬ LÝ
3.4.1 Định dạng kích thước ảnh Định dạng lại kích thước ảnh sẽ điều chỉnh thống số từ tập ảnh gốc theo một tiêu chuẩn chung Khi giữ ảnh ở kích thước ban đầu thì ảnh sẽ sắc nét hơn và chi tiết hơn do có độ phân giải cao Tuy nhiên, dung lượng ảnh lớn sẽ làm chậm quá trình xử lý Bên cạnh đó, ảnh được thu thập từ nhiều nguồn khác nhau sẽ có kích thước khác nhau Vì vậy, cần định dạng lại kích thước ảnh để tăng tốc độ xử lý mà không làm giảm chất lượng của quá trình huấn luyện và phù hợp với từng mạng mô hình.
Trong quá trình huấn luyện mô hình học sâu tự đề xuất và YOLOv4, việc chuyển đổi hình ảnh đầu vào giữa các mạng khác nhau là rất quan trọng.
3.4.1.1 Mô hình YOLOv4 Đối với mạng Yolov4, nhóm cũng đã sử dụng của tác giả Alexey Bochkovskiy [14], sau khi đã được cập nhật Mạng YOLOv4 này có nhiều tính năng ưu việt như tốc độ nhanh hơn và độ chính xác cũng được nâng lên nhằm cải thiện những điểm yếu của YOLOv3 Như vậy, bước định dạng lại kích thước ảnh đầu vào của YOLOv4 là việc thay đổi kích thước của ảnh đầu vào về kích thước mà mạng YOLOv4 yêu cầu sử dụng Định dạng kích thước đầu vào của YOLOv4 là như sau:
Hình 3.6:Định dạng kích thước ảnh đầu vào ở mạng YOLOv4
- YOLOv4-tiny: Sử dụng đầu vào kích thước 416x416, 608x608.
- YOLOv4: Sử dụng đầu vào kích thước 416x416, 512x512, 608x608, 768x768.
Cụ thể, mô hình mạng YOLOv4 mà nhóm đã sử dụng với kích thước định dạng cho ảnh đầu vào là 416x416.
3.4.1.2 Mô hình học sâu tự đề xuất
Việc định lại kích thước ảnh đầu vào là rất quan trọng do tập dữ liệu thu thập từ nhiều nguồn khác nhau, dẫn đến sự khác biệt về kích thước ảnh Ảnh có kích thước lớn có thể làm chậm tốc độ xử lý của mô hình, vì vậy việc điều chỉnh kích thước ảnh giúp tăng tốc độ xử lý và nâng cao hiệu suất Do đó, các ảnh dữ liệu sẽ được điều chỉnh về kích thước 240x240x3 trước khi đưa vào mô hình Hình 3.7 minh họa sự thay đổi kích thước của ảnh MRI não, với ảnh đầu vào ban đầu kích thước 300x300 (ảnh bên trái) và sau khi điều chỉnh kích thước là 240x240 (ảnh bên phải).
Hình 3.7:Ảnh trước và sau khi định kích cỡ
Để cải thiện khả năng khái quát của mô hình và giảm thiểu hiện tượng Overfitting trong quá trình huấn luyện, việc tăng cường dữ liệu là cần thiết Phương pháp này giúp mô hình phát hiện các đặc trưng quan trọng từ các phiên bản biến đổi khác nhau của dữ liệu, đồng thời không bị ảnh hưởng bởi những biến đổi nhỏ và các dữ liệu mới mà nó chưa từng gặp trước đó.
- Chuẩn hoá dữ liệu, đưa giá trị pixel về khoảng 0 đến 1.
- Phạm vi góc quay cho ảnh từ - 20 đến 20 độ.
- Phạm vi dịch ảnh sang trái hoặc sang phải so với chiều rộng và dịch lên hay dịch xuống so với chiều cao của ảnh là 20%.
- Phạm vi thu phóng tối đa là 20% so với ảnh.
Trước khi bắt đầu quá trình huấn luyện, cần thiết lập các tùy chọn quan trọng Đầu tiên, hãy phân chia tập dữ liệu với tỷ lệ 20% cho tập kiểm tra (Test) và 80% cho tập huấn luyện (Train), trong đó 10% sẽ được sử dụng cho xác thực (validation) và 90% cho huấn luyện Tiếp theo, chọn kích thước bộ lọc là 3x3, áp dụng lấy mẫu cực đại với kích thước 2x2 và thiết lập số lượng mẫu dữ liệu trong mỗi batch là 32.
3.4.2 Gán nhãn cho dữ liệu
Mô hình YOLOv4 khác với các mô hình nơ-ron khác ở chỗ yêu cầu có tập nhãn cho dữ liệu huấn luyện Do đó, nhóm nghiên cứu đã thực hiện việc gán nhãn cho dữ liệu cho từng loại ảnh một cách cụ thể.
LabelImg là công cụ hữu ích để gán nhãn dữ liệu, đặc biệt trong lĩnh vực học sâu và thị giác máy tính Để bắt đầu, bạn cần cài đặt ứng dụng LabelImg.
- Sau khi đã cài đặt xong, thì mở ứng dụng LabelImg bằng lệnh: python labelImg.py trên Command Promt.
- Giao diện LabelImg sẽ được hiển thị nhưHình 3.8 (Phần Phụ Lục).
- “Open Dir” để load các file ảnh cần gán nhãn.
- “Change Save Dir” để lưu file gán nhãn.
Để định nghĩa các nhãn cho từng đối tượng trong bài toán phân loại ảnh não MRI, cần chỉnh sửa tên trong file “predefined_classes.txt” Các nhãn tương ứng với các đối tượng được xác định như sau: pituitary - 0, meningioma - 1, glioma - 2, notumor - 3, như được minh họa trong Hình 3.9 (Phần Phụ Lục).
Chọn “Creat Rectbox” để vẽ hình chữ nhật quanh vật thể và gán nhãn cho đối tượng với tên gọi phù hợp Nhóm đã đặt tên nhãn tương ứng với từng loại ảnh cần huấn luyện: Glioma, Meningioma, Pituitary, và Notumor Cụ thể, Glioma được gán nhãn 2, Meningioma mang nhãn 1, Notumor có nhãn 3, và Pituitary được đánh dấu bằng nhãn 0.
Hình 3.10:Gán nhãn cho từng đối tượng trên LabelImg
Trong file nhãn, tên Class của đối tượng được ghi rõ, kèm theo các con số thể hiện tọa độ x, y, chiều cao (h), và chiều rộng (w) của Bounding box Các giá trị này lần lượt là 0.297852, 0.292969, 0.154297, 0.154297, và 0.27031, như minh họa trong Hình 3.11 (Phần Phụ Lục).
- Kết quả file sau khi gán nhãn xong sẽ được lưu dưới dạng file ‘.txt’ nhưHình 3.12 (Phần Phụ Lục).
MÔ HÌNH PHÂN LOẠI U NÃO
3.5.1 Mô hình YOLOv4 Ở đây, nhóm đã tiến hành mô phỏng mô hình YOLOv4 mong muốn thu được kết quả dự đoán phát hiện đối tượng và Bounding box sau khi huấn luyện. Để đẩy nhanh quá trình huấn luyện, thì nhóm sử dụng COLAB có GPU giúp tiết kiệm thời gian và tăng hiệu suất khi huấn luyện.
Kiến trúc của YOLOv4 gồm 3 phần chính nhưHình 3.13:
Hình 3.13:Cấu trúc mô hình YOLOv4
- Neck : SPP (Spatial Pyramid Pooling), PAN (Path Aggregation
Như vậy, trước khi huấn luyện cần chuẩn bị các file cần thiết phục vụ quá trình train dữ liệu như sau:
Đầu tiên, chúng ta cần tải xuống file nguồn của YOLOv4, trong đó nhóm đã sử dụng mô hình từ tác giả Alexey Bochkovskiy và điều chỉnh các thông số cũng như khai báo để phù hợp với yêu cầu của bài toán.
Cụ thể, ta sẽ vào từng file như sau: Đầu tiên, ta sẽ chuẩn bị dữ liệu train, với tập dữ liệu được đề cập ở
Phần 3.3, chia với tỷ lệ 20% Test - 80% Train (80% Train + 20% Validation).
Dữ liệu để huấn luyện mô hình YOLOv4 được lưu trữ trong một tệp tin có tên 'data', bao gồm hai loại tệp: ảnh gốc định dạng '.jpg' và tệp nhãn tương ứng với từng ảnh định dạng '.txt'.
The 'yolo.names' file contains the names of the objects we aim to identify, specifically four classes: Glioma, Meningioma, No tumor, and Pituitary As illustrated in Figure 3.14 (Appendix), this file consists of four lines arranged sequentially according to the class numbers assigned during the data labeling process.
Để tiếp tục, bạn cần tạo hai file ‘train.txt’ và ‘val.txt’ như mô tả trong Hình 3.15 (Phần Phụ Lục) File ‘train.txt’ sẽ bao gồm danh sách các file ảnh được sử dụng cho quá trình huấn luyện, trong khi file ‘val.txt’ sẽ chứa danh sách các file ảnh dùng để xác thực mô hình.
Dữ liệu được chia theo tỷ lệ 80% cho quá trình huấn luyện và 20% cho xác thực Các tệp 'train.txt' và 'val.txt' chứa đường dẫn đến các hình ảnh được sử dụng trong quá trình huấn luyện, như được thể hiện trong Hình 3.16 (Phần Phụ Lục).
Hai file ‘train.txt’ và ‘val.txt’ được lưu trong thư mục “darknet/data/data” như bên trên.
Tiếp theo đó là file ‘yolo.data’ nhưHình 3.17 (Phần Phụ Lục), file này sẽ gồm 5 dòng:
- classes = 4 là số lượng class, ở đây có 4 đối tượng cần phải train.
- train = train.txt là trỏ đến file train cần train.
- valid = val.txt là trỏ đến file val
- names = yolo.names là trỏ đến file names làm bên trên.
- backup = backup là đường dẫn sẽ lưu các file weights trong quá trình train.
Lưu file này vào thư mục ‘darknet’ và đi đến file tiếp theo Mở file
‘yolov4-custom.cfg’ (trong thư mục darknet/cfg/) File này dược gọi là file cấu hình nhưHình 3.18 (Phần Phụ Lục)bao gồm các phần chính sau:
- [net]: chứa thông tin cấu hình mạng, bao gồm kích thước đầu vào, lớp convolutional, lớp maxpooling, và thông tin về lớp đầu ra.
The convolutional layer contains essential information regarding the number of filters, kernel size, stride, activation function, padding, and Batch Normalization layers The quantity of convolutional layers and their parameters must align with the specific objectives of the model.
-[maxpooling]: được sử dụng để giảm kích thước của đầu vào.
Bài viết cung cấp thông tin chi tiết về số lượng lớp phân loại, số lượng Bounding box, kích thước của grid cell, số lượng anchor box, cùng các thông số về hàm mất mát và các siêu tham số thích ứng khác Tóm lại, lớp này đóng vai trò quan trọng trong việc lọc và xác định các đối tượng được phát hiện bởi mô hình mạng Nơ-ron.
YOLO (You Only Look Once) là một mô hình bao gồm các lớp detection, có nhiệm vụ phát hiện và phân loại đối tượng trong hình ảnh Mỗi lớp detection được cấu hình với thông tin về số lượng bounding box cần dự đoán cho từng ô lưới, cùng với các thông số tối ưu cho giá trị confidence nhằm đạt hiệu suất nhanh chóng và chính xác.
- [route]: các lớp này giúp kết nối các đối tượng phát hiện được ở các tầng trước đó để giúp mô hình có thêm thông tin.
- [shortcut]: được sử dụng để kết nối các lớp trước với lớp bị bỏ qua ở các tầng sau, giúp tăng độ chính xác của mô hình.
- [activation]: dùng để kích hoạt hàm tính toán, như ReLU hoặc
To calculate the values of the loss function, including focal loss layers and log (categorical cross-entropy), it is essential to modify specific lines in the file to meet the problem's requirements.
‘yolov4-custom.cfg’, File được lưu vào trong thư mục ‘darknet/cfg’,như sau:
- Dòng 20, sửa max_batches = max (< số class > * 2000, 6000) Nghĩa là nếu < số class > * 2000 mà nhỏ hơn 6000 thì max_batches = 6000 và ngược lại Vì vậy, max_batches = 8000.
- Dòng 22, steps = 80%, 90% số max_batches Vì vậy, steps = 6400,7200.
- Dòng 970, 1058, 1146, classes = 4 (Vì ở đây, ta train với 4 đối tượng: Glioma, Meningioma, Pituitary, No tumor).
- Dòng 963, 1051, 1139, filters = < (số class + 5) * 3>, có nghĩa là filters
Tập tin MakeFile là một công cụ quan trọng trong dự án YOLOv4 của Alexey, dùng để tự động hóa quá trình biên dịch mã nguồn C++ và các tệp tin liên quan cho huấn luyện và phát hiện đối tượng Tệp MakeFile cung cấp các lệnh cần thiết để biên dịch các thư viện như CUDA và CUDNN, cũng như các tệp tin mã nguồn của YOLOv4 và các công cụ liên quan khác.
3.5.2 Mô hình học sâu tự đề xuất
Mô hình học sâu tự đề xuất CNN được xây dựng với chuỗi các lớp tích chập và lớp lấy mẫu cực đại nhằm phân tích đặc trưng dữ liệu đầu vào Dữ liệu kích thước 240x240x3 sẽ được đưa vào mô hình và trải qua các lớp liên tiếp, trong đó đầu vào của mỗi lớp sau là đầu ra của lớp trước.
Mô hình được xây gồm 5 lớp tích chập xen kẽ các lớp lấy mẫu cực đại và các lớp chức năng như sau:
Mô hình học sâu tự đề xuất CNN được thiết kế để phân loại 4 loại ảnh MRI u não Bắt đầu với lớp tích chập 32 ma trận kích thước 3x3 kết hợp hàm kích hoạt ReLU và bước đệm =1, ảnh đầu vào có kích thước 240x240x3 sau khi qua lớp này sẽ tạo ra 32 ma trận đặc trưng kích thước 238x238 Tiếp theo là lớp lấy mẫu cực đại giúp giảm kích thước đầu ra và đơn giản hóa thông tin, với mặt nạ trượt 2x2, kích thước ma trận đầu ra giảm còn 119x119 Quy trình này tiếp tục với các lớp chập có 64, 128, 256 và 512 ma trận kích thước 3x3, cùng lớp lấy mẫu cực đại 2x2, cho ra các kích thước đầu ra lần lượt là 58x58x64, 28x28x128, 13x13x256 và 5x5x512.
Sau khi hoàn tất các lớp tích chập, lớp lấy mẫu trung bình được sử dụng để giảm kích thước đặc trưng từ 5x5x512 xuống 1x1x512 và sau đó chuyển đổi thành định dạng 1 chiều 1x12800 bằng lớp Flatten Để ngăn chặn hiện tượng overfitting, lớp Dropout 0.5 được áp dụng sau lớp Flatten, giúp tắt ngẫu nhiên một số nơ-ron trong quá trình huấn luyện Tiếp theo, vector đặc trưng 1x12800 được đưa vào lớp Dense với 256 nơ-ron và hàm kích hoạt ReLU, cho phép mô hình học các mối quan hệ phức tạp giữa các đặc trưng Cuối cùng, lớp Dense với 4 nơ-ron sử dụng hàm Softmax để tính xác suất cho 4 lớp đầu ra, với tổng xác suất bằng 1 Kết quả là một vector 4 giá trị, mỗi giá trị đại diện cho xác suất của một lớp, và lớp có xác suất cao nhất sẽ được xem là dự đoán của mô hình cho ảnh đầu vào.
THUẬT TOÁN PHÂN VÙNG U NÃO
3.6.1 Thuật toán phân vùng dựa trên mạng nơ - ron
Mạng U-Net là kiến trúc mạng nơ-ron phổ biến trong xử lý ảnh, đặc biệt hiệu quả cho bài toán phân vùng ảnh Dữ liệu huấn luyện được sử dụng lần đầu tiên bởi tác giả Nikhil Tomar và Jenny.
Luiciav [17] đã thực hiện một lần huấn luyện với dữ liệu được tăng cường Tập dữ liệu huấn luyện được chia thành 80% ảnh Train và 20% ảnh Validation Số lượng ảnh Test, tổng cộng 906 ảnh, sẽ được lấy từ tập dữ liệu đã đề cập ở Phần 3.3.
Mask tương ứng với ảnh MRI là 906 ảnh.
Hình 3.21:Một số ảnh MRI u não sử dung trong đề tài
Hình 3.22:Một số ảnh Mask tương ứng với ảnh MRI sử dụng trong đề tài
Trong mô hình mạng U-Net, ảnh đầu vào, bao gồm ảnh gốc và ảnh mask, được resize về kích thước 256x256x3 Sau đó, cả hai ảnh này sẽ được chuyển đổi kiểu dữ liệu sang float32 Do ảnh gốc có dạng 3 chiều, ảnh mask sẽ được thêm một chiều để phù hợp với hình dạng đầu ra của mô hình.
Để phân vùng các đối tượng trong ảnh, hình ảnh cần được resize về kích thước 256x256x3 Mạng U-Net được xây dựng với các lớp chính bao gồm Convolutional, MaxPooling, Up-Convolutional, Skip-Connection và Activation.
Mô hình U-Net là một kiến trúc mạng nơ-ron quan trọng trong phân vùng ảnh, đặc biệt là trong việc phân tích ảnh u não Lớp Convolutional 2D đóng vai trò chủ chốt, thực hiện quá trình tích chập trên ảnh đầu vào để trích xuất các feature maps Số lượng kernel (num_filters) và kích thước kernel là hai đối số chính trong quá trình này Để đảm bảo kích thước của các feature maps không bị giảm do tích chập, padding được sử dụng nhằm giữ lại các cạnh ngoài cùng của ảnh gốc.
Lớp Activation định hình đầu ra từ các lớp trước bằng cách áp dụng hàm kích hoạt đặc trưng Trong trường hợp này, hàm ReLU được sử dụng để kích hoạt các đặc trưng của lớp Convolutional 2D.
Lớp BatchNormalization giúp giảm overfitting và tăng tốc độ học bằng cách chuẩn hóa dữ liệu trong quá trình mô hình Nó được áp dụng lên đầu ra của mỗi lớp Activation trước khi chuyển đến lớp tiếp theo, cụ thể là lớp MaxPool2D.
Lớp MaxPool2D là một công cụ quan trọng trong việc giảm kích thước của các feature maps bằng cách chọn giá trị lớn nhất trong các cửa sổ trượt Đối số của lớp này là kích thước cửa sổ, giúp tối ưu hóa quá trình xử lý và giảm kích thước hiệu quả.
Lớp Con2DTranspose là một công cụ quan trọng trong việc tăng kích thước của feature maps thông qua các phép giãn nở và tăng mật độ Đối số đầu tiên xác định số lượng kernel, trong khi đối số thứ hai quy định kích thước kernel Một yếu tố quan trọng khác là đối số strides, cho phép lớp này thực hiện giãn nở cả về chiều rộng lẫn chiều cao của feature maps.
Lớp Concatennate được sử dụng để kết nối các feature maps giữa lớp decoder và encoder, giúp truyền tải thông tin về vị trí và đặc trưng của đối tượng Điều này không chỉ giúp mô hình học được thông tin vị trí của đối tượng trên ảnh mà còn cải thiện chất lượng phân đoạn Đối số của lớp này là các feature maps cần được kết nối lại với nhau.
Lớp Convolutional 2D cuối cùng được sử dụng để tạo ra bản đồ phân đoạn nhị phân với hàm kích hoạt Sigmoid Đối số đầu tiên là số lượng kernel dùng để tích chập đầu vào, trong khi đối số thứ hai là kích thước kernel Hàm kích hoạt Sigmoid giúp chuyển đổi đầu vào thành dạng phân đoạn nhị phân.
3.6.2 Thuật toán phân vùng GraphCut - pinpoint Ở một số trường hợp, mô hình phân vùng ảnh khối u sai vị trí, do ảnh có một số đặc điểm như màu sắc của khối u và các mô não không rõ ràng, dễ nhầm lẫn Vì vậy, để khắc phục tình trạng trên, nhóm đã đưa ra phương hướng giải quyết vấn đề trên Cụ thể, nhóm tận dụng kết quả phân loại ảnh não từ mô hình mạng YOLOv4, vì khi đưa ảnh đầu vào mô hình dự đoán thì sẽ nhận được đầu ra là tên đối tượng và toạ độ Bounding box trên đối tượng đó Vì vậy, khi phân vùng đối tượng đó trong Bounding box sẽ giới hạn diện tích phân vùng và tránh trường hợp phân vùng sai vị trí Để giải quyết trường hợp trên, đề tài sử dụng thuật toán GraphCut – pinpoint - được cải thiện nhược điểm của thuật toán GraphCut trước đó, là một phương pháp phân vùng ảnh dựa kỹ thuật cắt đồ thị kết hợp với cơ chế tìm kiếm và lựa chọn pixel chính xác (Pinpoint).
Các bước tiến hành thuật toán GraphCut - pinpoint phân vùng ảnh u não như sau:
Bước đầu tiên là gán tọa độ của Bounding box từ kết quả phân loại sau khi huấn luyện vào một biến mới có tên là ‘rect’ Biến này sẽ chứa giá trị nguyên được biểu diễn dưới dạng ‘List’.
- bbox = [xmin,ymin, xmax, ymin ], bbox là Bounding box sau khi phân loại.
Với (x,y) là toạ độ góc trên bên trái của Bounding box và w, h là chiều rộng và chiều cao của Bounding box.
Hình 3.25:Lưu lại giá trị Bounding box sau khi YOLOv4 phân loại
Bước 2: Tạo một Mask với kích thước bằng kích thước ảnh đầu vào, giá trị mặc định là 0 Ảnh Mask được tạo ra dưới dạng một ma trận numpy (array) có kích thước tương ứng với hai chiều của hình ảnh gốc (orig_image) và kiểu dữ liệu là unit8 (unsigned integer, không âm), với tất cả các giá trị ban đầu được đặt là 0 Kết quả khởi tạo sẽ tạo ra một ma trận trống chứa toàn bộ giá trị 0, như minh họa trong Hình 3.26 Để khởi tạo một mask, ta sử dụng.
Kết quả sẽ thu được một mặt nạ Mask có kích thước bằng với kích thước ảnh đầu vào.
Hình 3.26:Tạo Mask bằng kích thước ảnh đầu vào Đặt giá trị là 3 cho vùng bên trong Bounding box, trong mask:
Trong phương pháp GraphCut - pinpoint có 4 giá trị mask có thể nhận:
‘cv2.GC_BGD’: Giá trị 0 được sử dụng được xác định các điểm ảnh thuộc về vùng nền.
‘cv2.GC_FGD’: Giá trị 1 được sử dụng được xác định các điểm ảnh thuộc về vùng đối tượng.
‘cv2.GC_PR_BGD’: Giá trị 2 được sử dụng để xác định vùng xung quanh vùng nền.
‘cv2.GC_PR_FGD’: Giá trị 3 được sử dụng để xác định vùng xung quanh vùng đối tượng.
- Bước 3: Tạo điểm “Pinpoint” cho vùng đối tượng (điểm giữa của
Trong báo cáo này, chúng tôi xác định bán kính r của điểm Pinpoint cho các loại u não như sau: Glioma với bán kính 10 pixel, Meningioma là 15 pixel, và Pituitary cũng là 10 pixel Vùng nền xung quanh vùng đối tượng được xác định bằng bounding box, với bán kính phù hợp cho từng loại u.
Công thức tạo toạ độ điểm ‘Pinpoint’ cho vùng đối tượng - điểm giữa của Bounding box như sau:
PHƯƠNG PHÁP ĐÁNH GIÁ MÔ HÌNH PHÂN LOẠI VÀ PHÂN VÙNG U NÃO
Để đánh giá hiệu suất và độ chính xác của thuật toán phân vùng ảnh, cần sử dụng các thước đo phổ biến như độ chính xác (Accuracy), độ nhạy (Recall), độ chính xác (Precision), chỉ số F1 (F1-score) và ma trận nhầm (Confusion Matrix).
Trong đánh giá mô hình phân loại, các chỉ số True/False và Positive/Negative rất quan trọng để xác định độ chính xác của thuật toán phân vùng GraphCut - Pinpoint Mục tiêu của bài toán phân vùng ảnh là phân loại các pixel thành các nhóm, như pixel đối tượng và pixel nền Việc đánh giá chính xác các pixel được phân loại là cần thiết để đảm bảo rằng kết quả phân vùng đạt độ tin cậy và chính xác.
Ma trận nhầm lẫn hay ma trận lẫn là một bố cục bảng cụ thể cho phép hình dùng hiệu suất của một thuật toán phân loại.
Hình 3.28:Ma trận nhầm lẫn
Ma trận nhầm lẫn gồm có 4 chỉ số:
- TP (True Positive): Số lượng dự đoán Đúng là Positive.
- FP (False Positive): Số lượng dự đoán Sai là Positive.
- TN (True Negative): Số lượng dự đoán Đúng là Negative.
- FN (False Negative): Số lượng dự đoán Sai là Negative.
3.7.2 Độ chính xác, độ bao phủ, chỉ số dung hoà và chỉ số tương đồng
Khi xây dựng mô hình phân loại với tập dữ liệu có sự chênh lệch lớn giữa các lớp, ngoài bốn chỉ số chính, chúng ta cần xem xét tỷ lệ các trường hợp được dự đoán so với tổng số trường hợp Để đánh giá độ tin cậy của mô hình, các chỉ số thường được sử dụng bao gồm Accuracy, Precision, Recall, F1-score và Jaccard.
Độ chính xác (Accuracy) là tỷ lệ giữa số trường hợp dự báo đúng và tổng số trường hợp Mô hình có độ chính xác cao cho thấy khả năng dự đoán tốt hơn.
Để xác định số lượng trường hợp đúng trong các dự báo Positive, chỉ số Precision sẽ được sử dụng Precision càng cao, mô hình của chúng ta càng hiệu quả trong việc phân loại nhóm Positive.
Recall là chỉ số quan trọng trong việc đo lường hiệu suất dự báo trên nhóm mẫu Positive, với ý nghĩa tương tự như Precision Khi chỉ số Recall cao, tỷ lệ bỏ sót các mẫu Positive sẽ giảm, cho thấy độ chính xác trong việc phát hiện các trường hợp tích cực ngày càng tốt hơn.
Chỉ số Precision và Recall là hai yếu tố quan trọng trong đánh giá hiệu suất của mô hình, với giá trị càng cao càng tốt Để cân bằng giữa hai chỉ số này, chúng ta sử dụng F1-score; giá trị F1 càng cao thì hiệu suất càng tốt, với mức lý tưởng là F1 = 1, tức là Recall và Precision đều đạt giá trị 1.
Để đánh giá mức độ tương đồng giữa các dự đoán và nhãn thực tế của mô hình phân loại, chỉ số tương đồng Jaccard là một công cụ hữu ích Chỉ số Jaccard cao cho thấy hiệu suất của mô hình phân loại tốt hơn.
3.7.3 Thông số AP và mAP
Mô hình YOLO là một phương pháp phát hiện đối tượng, khác với mô hình phân loại Để đánh giá độ chính xác của các mô hình phân loại, người ta sử dụng ma trận nhầm lẫn (confusion matrix), nhưng không áp dụng cho mô hình phát hiện đối tượng như YOLO.
Để đánh giá độ chính xác của YOLO, chúng ta có thể áp dụng các phương pháp phù hợp với mô hình phát hiện đối tượng, như Mean Average Precision (mAP) và Average Recall (AR).
Công thức tính AP cho từng một lớp cụ thể trong YOLO như sau:
- R là tập hợp các giá trị Recall được tính toán trên tất cả các phát hiện của lớp đối tượng đó.
- Δr là độ chênh lệch giữa hai giá trị Recall liên tiếp trong tập R.
Để tính toán mAP (mean Average Precision), trước tiên cần xác định giá trị Precision P(r) tại mỗi giá trị r Tiếp theo, AP (Average Precision) cho tất cả các lớp đối tượng trong tập dữ liệu được tính toán, và cuối cùng, mAP được tính bằng cách lấy trung bình cộng của tất cả các AP này.
- n là số lớp đối tượng trong tập dữ liệu.
- APi là Average Precision của lớp đối tượng thứ i.
TÍNH KÍCH THƯỚC KHỐI U NÃO
Hiện nay, có một số bài báo đưa ra một số công thức tính diện tích u não như sau [19]:
- W và H lần lượt là chiều rộng và chiều cao của ảnh.
- pixel (1) là pixel màu trắng của khối u.
Công thức này là một phương pháp đơn giản thường dùng trong các nghiên cứu y học Tuy nhiên, việc xác định kích thước khối u bằng đơn vị mm² có thể không chính xác do nó phụ thuộc vào độ phân giải, tỷ lệ phóng đại và kích thước thực tế của hình ảnh.
Diện tích khối u chỉ có thể được tính bằng đơn vị pixel, thường được áp dụng trong phân tích hình ảnh y học Công thức xác định diện tích khối u não là tổng số pixel mang giá trị 1 (pixel màu trắng) trong ảnh nhị phân.
- W và H lần lượt là chiều rộng và chiều cao của ảnh.
- pixel(1) là pixel màu trắng thuộc vùng khối u sau khi được phân vùng. Công thức sẽ được biểu diễn bằng ngôn ngữ Python như sau:
- ‘binary_img’ là ảnh phân vùng chuyển sang ảnh nhị phân, bao gồm 2 giá trị pixel 1 và 0.
- Dùng hàm sum() để tính số pixel có giá trị bằng 1 trong ảnh binary_img.
Hàm 'regionprops()' được sử dụng để tính toán các thuộc tính của đối tượng, bao gồm diện tích, chu vi và vị trí Do đó, thuộc tính diện tích sẽ được truy cập thông qua 'props[0]', đại diện cho giá trị area của đối tượng.
KẾT QUẢ, ĐÁNH GIÁ VÀ NHẬN XÉT
GIỚI THIỆU
Sau thời gian nghiên cứu và áp dụng kiến thức vào đề tài “Xây dựng thuật toán phân vùng ảnh để phân loại và xác định kích thước khối u não”, nhóm đã đạt được kết quả khả quan, khẳng định tính đúng đắn của lý thuyết và thiết kế Bài viết sẽ trình bày kết quả mô phỏng và so sánh các mô hình phân loại u não, bao gồm mô hình CNN tự đề xuất và các mô hình hiện có như YOLOv4 và EfficientNetB0 Đồng thời, so sánh kết quả phân vùng giữa mô hình U-Net và thuật toán GraphCut - pinpoint Kết quả cho thấy việc xác định kích thước khối u não phụ thuộc vào phương pháp phân vùng và mô hình phân loại, do đó nhóm đã tiến hành huấn luyện với nhiều mô hình khác nhau và lựa chọn kỹ thuật phân vùng ảnh để tối ưu hóa hiệu quả.
TẬP DỮ LIỆU ĐƯỢC SỬ DỤNG
4.2.1 Dữ liệu sử dụng cho mô hình phân loại
Dữ liệu được sử dụng cho mô hình phân loại trong Phần 3.3 bao gồm 7023 ảnh từ tác giả Masoud Nickparva, nhằm huấn luyện các mô hình học sâu tự đề xuất như CNN, EfficientNetB0 và YOLOv4 Bảng 4.1 sẽ trình bày chi tiết cách chia dữ liệu để huấn luyện cho từng mô hình phân loại, giúp đảm bảo kết quả so sánh khách quan nhất.
Bảng 4.1:Chia dữ liệu huấn luyện cho các mô hình Phân loại
Dữ liệu Mô hình CNN YOLOv4 EFFICIENTNETB0
Bảng 4.1 trình bày phương pháp chia dữ liệu cho từng mô hình, trong đó bộ dữ liệu của Masoud Nickparvar bao gồm 7023 bức ảnh MRI não, bao gồm các loại u não như Glioma, Meningioma, Notumor và Pituitary Cách thức phân chia dữ liệu huấn luyện cho từng mô hình được mô tả chi tiết.
Mô hình học sâu tự đề xuất CNN:
- Tập Train (5712 ảnh: 90% Train + 10% Validation):
+ Glioma: 1189 ảnh + Meningioma: 1205 ảnh + Notumor: 1345 ảnh + Pituitary: 1311 ảnh
+ Glioma: 132 ảnh + Meningioma: 134 ảnh + Notumor: 160 ảnh + Pituitary: 146 ảnh
- Tập Train (5712 ảnh: 80% Train + 20% Validation):
+ Glioma: 1285 ảnh + Meningioma: 1339ảnh + Notumor: 1595 ảnh + Pituitary: 1457 ảnh
Validation (1033 ảnh, có thể trùng với ảnh Train):
+ Glioma: 251 ảnh + Meningioma: 256 ảnh + Notumor: 274 ảnh + Pituitary: 252 ảnh
- Tập Train (5712 ảnh: 80% Train + 20% Validation):
+ Glioma: 1114 ảnh + Meningioma: 1072 ảnh + Notumor: 1276 ảnh + Pituitary: 1165 ảnh
+ Glioma: 207 ảnh + Meningioma: 267 ảnh + Notumor: 319 ảnh + Pituitary: 292 ảnh
4.2.2 Dữ liệu sử dụng cho mô hình phân vùng
Dữ liệu cho mô hình phân vùng U-Net và GraphCut - Pinpoint được lấy từ tập Test gồm 906 ảnh của Masoud Nickparvar Trong lần đầu tiên, nhóm sử dụng dữ liệu Train từ bộ dữ liệu của Nikhil Tomar với 3064 ảnh để huấn luyện mô hình U-Net Ở lần thứ hai, nhóm đã tăng cường dữ liệu huấn luyện cho mô hình U-Net bằng cách sử dụng 2150 ảnh từ tác giả Jenny Luciav.
Bảng 4.2: Chia dữ liệu cho thuật toán phân vùng GraphCut - Pinpoint và huấn luyện cho mô hình U - Net
Bảng 4.2 trình bày dữ liệu và phương pháp phân chia dữ liệu cho mô hình phân vùng U-Net và thuật toán GraphCut - Pinpoint Mô hình U-Net sẽ trải qua hai lần huấn luyện với số lượng ảnh đào tạo khác nhau Cụ thể, lần đầu tiên, nhóm huấn luyện U-Net sử dụng 3970 ảnh, trong đó 20% dành cho kiểm tra và 80% cho đào tạo.
2 - nhóm huấn luyện U - Net với 6120 ảnh (15% Test và 85% Train).
- Tập Train:3064 ảnh (80% Train + 20 % Validation):
- Tập Train:5214 ảnh (80% Train + 20 % Validation):
Thuật toán GRAPHCUT - PINPOINT là một phương pháp sử dụng đồ thị để thực hiện phân vùng mà không cần quá trình huấn luyện Nhóm nghiên cứu đã áp dụng thuật toán này trên tập Test gồm 906 ảnh để đánh giá hiệu quả phân vùng Kết quả cho thấy khả năng phân vùng của thuật toán đạt được những kết quả đáng chú ý.
KẾT QUẢ PHÂN LOẠI U NÃO
Mô hình EfficientNetB0, được giới thiệu bởi tác giả Soit Ranjan Rath [20], đã được sử dụng trong báo cáo này Trong quá trình đào tạo, độ chính xác của mô hình được cải thiện qua từng lần học, với số lượng epoch là 20 và 30.
Hình 4.1 trình bày ma trận nhầm lẫn của mô hình EfficientNetB0 tại epoch thứ 20, cho thấy độ chính xác đánh giá mô hình cho từng loại bệnh Cụ thể, loại Notumor đạt 99.67% với 402 ảnh đúng, loại Meningioma có độ chính xác 93.17% với 285 ảnh đúng, và loại Glioma đạt 99.33%.
298 ảnh đúng, Pituitary đạt 99.67% với 299 ảnh đúng.
Hình 4.2:Biểu đồ biểu diễn chỉ số AP đánh giá mô hình EfficientNetB0 ở epoch = 20
Theo Hình 4.2, chỉ số AP của mô hình EfficientNetB0 sau 20 epoch cho thấy hiệu suất ấn tượng, với các lớp cao đều đạt trên 90% Đặc biệt, ảnh u não loại Glioma ghi nhận chỉ số AP cao nhất là 98.5%, trong khi loại Pituitary cũng đạt chỉ số đáng kể.
AP với 98.10%, kế tiếp là loại No tumor đạt 95.92%, cuối cùng là loại Meningioma đạt 93.45%.
Bảng 4.3: Số lượng và tỉ lệ phân loại của mô hình EfficientNetB0 khi epoch
Tỉ lệ % phân loại đúng 99.33% 93.17% 99.26% 99.67%
TừBảng 4.3, tỷ lệ dự đoán phân loại mà mô hình dự đoán sai nhiều nhất ở u não loại Meningioma là 7%, và mô hình dự đoán tương đối tốt ở các loại ảnh còn lại như No tumor, Glioma và Pituitary.
Dưới đây là kết quả mô hình EfficientNetB0 khi train ở epoch = 30.
Hình 4.3 trình bày ma trận nhầm lẫn của mô hình EfficientNetB0 tại epoch = 30, cho thấy kết quả đánh giá với độ chính xác cao cho từng loại Cụ thể, loại Notumor đạt 98% với 399 ảnh đúng, Meningioma đạt 90.8% với 278 ảnh đúng, Glioma đạt 98% với 294 ảnh đúng, và Pituitary đạt 99.67% với 299 ảnh đúng.
Theo Hình 4.4, chỉ số AP của mô hình EfficientNetB0 tại epoch 30 đã giảm từ 1 - 3% so với epoch 20 Cụ thể, hiệu suất đối với ảnh u não loại Glioma giảm 1.36% (từ 97.14% xuống còn 95.78%), loại Meningioma giảm 3.31% (từ 90.14% xuống còn 86.83%), loại Pituitary giảm 1.58% (từ 94% xuống còn 92.42%), và ảnh bình thường No tumor giảm 1.2% (từ 94.72% xuống còn 93.52%).
Bảng 4.4: Số lượng và tỉ lệ phân loại của mô hình EfficientNetB0 khi epoch0
Tỉ lệ % phân loại đúng 98% 90.8% 98% 99.67%
Mô hình dự đoán cho thấy sự sai lệch cao hơn khi huấn luyện ở epoch 20, với độ chính xác của ảnh u não loại Meningioma giảm 2.37%, loại Glioma giảm 1.33%, và loại No tumor giảm 1.26% so với epoch 20, trong khi ảnh Pituitary không thay đổi độ chính xác Điều này chỉ ra rằng mô hình bị overfitting khi được huấn luyện ở epoch 30.
Bảng 4.5:Chỉ số đánh giá hiệu suất mô hình EfficientNetB0 ở epoch = 20, 30
Accuracy F1 - score Jaccard Recall Precision
Mô hình bắt đầu bị overfitting khi số epoch là 30, theo Bảng 4.5 Để đạt được hiệu suất tốt nhất trong việc dự đoán ảnh u não, chúng ta sẽ sử dụng mô hình được huấn luyện ở epoch = 20.
Nhận xét mô hình EfficientNetB0:
Mô hình EfficientNetB0 của Sovit Ranjan Rath áp dụng kiến trúc phức tạp kết hợp với các kỹ thuật tối ưu hóa tự động và CNN để rút trích đặc trưng và phân loại ảnh Nó sử dụng mạng nơ-ron đa tầng (Multi-layer Perceptron) để thiết kế các khối mạng con tối ưu cho dữ liệu và yêu cầu phân loại Các khối mạng con khác nhau được sử dụng tùy thuộc vào kích thước đầu vào, giúp tối ưu hóa số lượng tham số và độ chính xác của mô hình Ngoài ra, EfficientNetB0 còn áp dụng các kỹ thuật tối ưu hóa như Dropconnect, hàm kích hoạt phi tuyến swish, hàm tối ưu hóa AdamW, và hỗ trợ EMA (Exponential Moving Average).
4.3.2 Mô hình YOLOv4 Đối với mô hình YOLOv4, nhóm cũng đã huấn luyện với dữ liệu được đề cập ở Phần 3.3 là 20% Test và 80 Train (80% Train + 20% Validation). Sau khi thực hiện ở huấn luyện ở vòng lặp 7500 nhận với giá trị loss 0.481611 Và để đánh giá hiệu suất mô hình YOLOv4 thì ta cần quan tâm đến
2 chỉ số quan trọng là AP và mAP sẽ được biểu diễn ởHình 4.5vàHình 4.6
Hình 4.5 trình bày chỉ số đánh giá AP của các loại u não sau 7500 vòng lặp huấn luyện Cụ thể, loại u não Pituitary đạt chỉ số AP cao nhất là 99.98% tại epoch 7500, trong khi loại Meningioma có chỉ số AP là 99.97% tại epoch 7000 Đối với loại u não Glioma, chỉ số AP cao nhất là 99.95% cũng ở epoch 7500 Đặc biệt, loại Notumor đạt chỉ số AP hoàn hảo 100% tại epoch 7500.
Hình 4.6:Biểu đồ biểu diễn chỉ số mAP - YOLOv4 sau khi train với 7500 vòng lặp
Biểu đồ mAP được thể hiện qua các giai đoạn epoch 1000, 2000, 3000, 5000, 6000, 7000 và 7500 cho thấy rằng tại epoch 7500, chỉ số mAP đạt cao nhất với giá trị 99.87% Do đó, nhóm đã quyết định sử dụng file trọng số tại epoch 7500 để thực hiện dự đoán phân loại.
Bảng 4.6:Số lượng và tỉ lệ phân loại của mô hình YOLOv4 với epoch = 7500
Tỉ lệ % phân loại đúng 91.33% 99.67% 100% 98.67%
Theo Bảng 4.6, kết quả phân loại YOLOv4 cho thấy độ chính xác trong việc dự đoán u não loại Glioma đạt 91.33% với 274 ảnh đúng Đối với u não loại Meningioma, độ chính xác là 100% với 405 ảnh đúng U não loại Pituitary có độ chính xác 98.67% với 296 ảnh đúng, trong khi dự đoán không có u não (Notumor) cũng đạt 100% với 405 ảnh đúng.
Bảng 4.7:Chỉ số đánh giá hiệu suất mô hình YOLOv4 ở epoch = 7500
Accuracy F1 - score Jaccard Recall Precision
Dựa vào Bảng 4.7, là chỉ số đánh giá trung bình với 7 file weight là
1000, 2000, 3000, 4000, 5000, 6000, 7000, 7500 của từng chỉ số Accuracy, F1
- score, Jaccard, Recall và Precision tương ứng Ta thấy, các chỉ số đều trên 90% từ đó mô hình YOLOv4 dựa đoán phân loại tương đối chính xác.
Nhận xét mô hình YOLOv4:
Mô hình YOLOv4 tích hợp đầy đủ các bước phân loại, định vị và phát hiện đối tượng trong ảnh, giúp tăng độ chính xác phân loại giữa 4 loại MRI u não bằng cách sử dụng thông tin vị trí và diện tích của các đối tượng Khác với các mô hình phân loại thông thường, YOLOv4 không bỏ sót chi tiết quan trọng về vị trí và diện tích, mà chỉ xem xét những đặc trưng chung Đặc biệt, YOLOv4 được thiết kế để tăng tốc độ xử lý, giảm thời gian phân loại ảnh, rất hữu ích trong các tác vụ yêu cầu xử lý nhanh và chính xác.
4.3.3 Mô hình học sâu tự đề xuất
Trong quá trình đào tạo mô hình, độ chính xác được cải thiện theo số lần học được theo dõi như sau với từngepoch = 50, 100, 120
Hình 4.7 cho thấy ma trận nhầm lẫn của mô hình CNN sau 50 epoch, với kết quả phân loại u não như sau: loại Glioma đạt độ chính xác 25.33% với 76 ảnh đúng, loại Meninigioma đạt độ chính xác 36.27% với 111 ảnh đúng, loại Pituitary đạt độ chính xác cao 91.337% với 274 ảnh đúng, và dự đoán không có u não (Notumor) đạt độ chính xác 94.81% với 384 ảnh đúng.
Bảng 4.8:Số lượng và tỉ lệ phân loại của mô hình CNN khi epoch = 50
Tỉ lệ % phân loại đúng 25.33% 36.27% 94.81% 91.33%
Từ Bảng 4.8,sau khi huấn luyện mô hình CNN tự đề xuất ở epoch = 50, ta thấy số lương ảnh dự đoán sai của các loại Glioma, Meningioma là rất cao.
Tỷ lệ dự đoán sai của Glioma và Meningioma lần lượt là 74.67% và 63.73%.
Mô hình dự đoán ở 2 loại ảnh bình thường Notumor và Pituitary tương đối cao.
KẾT QUẢ PHÂN VÙNG U NÃO
4.4.1 Thuật toán phân vùng dựa trên mạng nơ - ron
Kết quả sau khi mô hình huấn luyện lần 1 huấn luyện với bộ dữ liệu
Nikhil Tomar đã sử dụng 3064 ảnh để huấn luyện mô hình U-Net Sau 100 epoch, giá trị validation loss đã ổn định ở mức 0.189 Để đạt hiệu suất phân vùng tối ưu, nhóm nghiên cứu đã quyết định ngừng huấn luyện tại epoch này.
Hình 4.11 cho thấy biểu đồ đánh giá các chỉ số Loss và Dice coefficient trên tập validation trước khi thực hiện tăng cường dữ liệu Giá trị validation loss duy trì ổn định ở mức 0.189, trong khi chỉ số Dice coefficient đạt 80.9% Để đánh giá hiệu suất của mô hình U-Net, nhóm nghiên cứu đã sử dụng 906 ảnh Test từ tập dữ liệu phân loại đã đề cập ở Phần 3.6 Kết quả đánh giá hiệu suất mô hình trước khi tăng cường dữ liệu được trình bày trong Bảng 4.13.
Bảng 4.13: Chỉ số đánh giá hiệu suất mô hình U - Net trước khi tăng cường dữ liệu
Theo Bảng 4.13, các chỉ số đánh giá hiệu suất của mô hình vẫn còn thấp, chưa đạt 80% Nguyên nhân có thể do dữ liệu huấn luyện chưa đủ và ảnh test quá khác biệt so với ảnh train, dẫn đến khả năng phân vùng chính xác kém Kết quả trước và sau khi phân vùng của mô hình U-Net, trước khi tăng cường dữ liệu, được trình bày trong Hình 4.12, 4.13, 4.14 cho từng loại ảnh u não như Glioma, Meningioma và Pituitary Mỗi hình sẽ được trình bày từ trái sang phải, bao gồm ảnh gốc, ảnh mask tương ứng với loại u não, và ảnh sau khi phân vùng.
Hình 4.12:Ảnh trước và sau phân vùng u não loại Glioma mô hình U - Net trước khi tăng cường dữ liệu
Hình 4.13:Ảnh trước và sau phân vùng u não loại Meningioma mô hình U -
Net trước khi tăng cường dữ liệu
Mô hình U-Net đã cho kết quả phân vùng tương đối tốt trên ảnh u não loại Glioma và Pituitary, như thể hiện trong Hình 4.12 và 4.14 Tuy nhiên, đối với u não loại Meningioma, kết quả phân vùng vẫn chưa đạt yêu cầu, như thấy trong Hình 4.13.
Để nâng cao độ chính xác trong việc phân vùng của mô hình U-Net, nhóm nghiên cứu đã mở rộng dữ liệu huấn luyện từ 3064 ảnh lên 5214 ảnh, sử dụng bộ dữ liệu của Jenny Vega với 2150 ảnh Việc chia nhỏ dữ liệu này nhằm tối ưu hóa quá trình huấn luyện mô hình.
U - Net được đề cập ởPhần 4.4.2, với tỷ lệ 80% Train và 20% Validation Tức là, 4172 ảnh Train và 1042 ảnh Validation.
Trong quá trình huấn luyện mô hình U-Net với dữ liệu đã được tăng cường trong 150 epochs, giá trị validation loss đã đạt đến mức bão hòa là 0.0635 tại epoch thứ 131, như thể hiện trong Hình 4.15.
Hình 4.15 cho thấy biểu đồ đánh giá các chỉ số Loss và Dice coefficient trên tập validation sau khi tăng cường dữ liệu Kết quả huấn luyện mô hình đã đạt trạng thái bão hòa ở epoch thứ 131, với giá trị validation loss là 0.0635 và chỉ số Dice coefficient của tập Validation đạt 93.66% Để đánh giá hiệu suất của mô hình U-Net, nhóm nghiên cứu đã sử dụng 906 ảnh từ tập dữ liệu Test đã được đề cập ở Phần 3.3.
Bảng 4.14: Chỉ số đánh giá hiệu suất mô hình U - Net sau khi tăng cường dữ liệu
Bảng 4.14 trình bày kết quả đánh giá hiệu suất phân vùng trên tập Test với 906 hình ảnh của U-Net, sau khi dữ liệu được tăng cường từ 3064 hình ảnh lên 5214 hình ảnh để huấn luyện Các chỉ số hiệu suất đã tăng lên 0.1%.
Kết quả phân vùng của mô hình U-Net sau khi tăng cường dữ liệu được thể hiện qua các hình 4.16, 4.17, 4.18 cho từng loại ảnh u não, bao gồm Glioma, Meningioma và Pituitary Mỗi hình ảnh sẽ được trình bày từ trái sang phải, bắt đầu với ảnh gốc, tiếp theo là ảnh mask tương ứng với loại u não, và cuối cùng là ảnh sau khi phân vùng.
Hình 4.16:Ảnh trước và sau phân vùng u não loại Glioma mô hình U - Net sau khi tăng cường dữ liệu
Hình 4.17:Ảnh trước và sau phân vùng u não loại Meningioma mô hình U -
Net sau khi tăng cường dữ liệu
Hình 4.18:Ảnh trước và sau phân vùng u não loại Pituitary mô hình U - Net sau khi tăng cường dữ liệu
Hình 4.16, 4.17 và 4.18 cho thấy sự khác biệt rõ rệt trong kết quả phân vùng của mô hình U-Net trước và sau khi áp dụng tăng cường dữ liệu Mô hình đã phân vùng chính xác và đầy đủ hơn, chứng tỏ hiệu quả của phương pháp tăng cường dữ liệu.
Bảng 4.15: So sánh hiệu suất đánh giá trước và sau khi tăng cường dữ liệu mô hình U - Net
Nhận xét mô hình phân vùng U - Net:
Dựa vào Bảng 4.15, hiệu suất đánh giá sau khi tăng cường dữ liệu không có sự thay đổi đáng kể Nhóm nghiên cứu nhận thấy rằng số lượng ảnh trong tập huấn luyện vẫn còn hạn chế, ảnh hưởng đến độ chính xác của kết quả Nguyên nhân dẫn đến hiệu suất thấp có thể là do tập dữ liệu huấn luyện chưa đủ lớn Tuy nhiên, từ Hình 4.16, 4.17 và 4.18, có thể thấy sự cải thiện rõ rệt, với mô hình thực hiện phân vùng nhanh chóng và tương đối chính xác, cho thấy ảnh phân vùng gần giống với ảnh Mask.
4.4.2 Thuật toán phân vùng GraphCut - Pinpoint
Nhóm nghiên cứu đã cải tiến thuật toán phân vùng GraphCut - Pinpoint bằng cách điều chỉnh kích thước bán kính r của điểm “pinpoint” cho các vùng đối tượng, nhằm phù hợp hơn với từng loại u và tối ưu hóa quy trình tính toán phân vùng.
Do đó, đối với loại u não Glioma: r = 15; u não Meningioma: r = 10; u não
Pituitary: r = 15 Cùng với số lần học n = 5 giúp cho thuật toán học tập tối đa trên dữ liệu và tạo ra kết quả phân vùng chính xác nhất.
Kết quả phân vùng u não bằng thuật toán GraphCut - Pinpoint được thể hiện qua các hình ảnh trong Hình 4.19, 4.20, 4.21, tương ứng với các loại u não Glioma, Meningioma và Pituitary Mỗi hình ảnh sẽ được trình bày từ trái sang phải, bao gồm ảnh gốc, ảnh mask tương ứng với loại u não, và ảnh sau khi phân vùng, giúp người xem dễ dàng so sánh kết quả trước và sau quá trình phân vùng.
Hình 4.19:Ảnh trước và sau phân vùng u não loại Glioma dùng thuật toán
Hình 4.20:Ảnh trước và sau phân vùng u não loại Meningioma dùng thuật toán GraphCut - Pinpoint
Hình 4.21: Ảnh trước và sau phân vùng u não loại Pituitary dùng thuật toán
Thuật toán GraphCut - Pinpoint đã cho thấy khả năng phân vùng chính xác và hiệu quả hơn trên hình ảnh của các loại u não như Glioma, Meningioma và Pituitary, như thể hiện trong Hình 4.19, 4.20, và 4.21, so với mô hình U-Net đã được trình bày trước đó.
Nhận xét thuật toán GraphCut - Pinpoint:
Sau khi tiến hành kiểm tra với ảnh từ tập dữ liệu của mô hình phân loại ở Phần 3.3, nhóm đã thử nghiệm với 906 ảnh, bao gồm các loại u não như Glioma, Meningioma và Pituitary Kết quả được trình bày trong Bảng 4.16, cho thấy chỉ số đánh giá hiệu suất của thuật toán phân vùng GraphCut - Pinpoint.