1. Trang chủ
  2. » Luận Văn - Báo Cáo

Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực

59 11 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Ứng Dụng Mô Hình FasterRCNN Phát Hiện Vùng Bất Thường Trên Ảnh CT Ngực
Người hướng dẫn TS. Trần Nguyễn Minh Thư
Trường học Trường Đại Học Cần Thơ
Chuyên ngành Công Nghệ Thông Tin
Thể loại luận văn
Năm xuất bản 2020
Thành phố Cần Thơ
Định dạng
Số trang 59
Dung lượng 3,11 MB

Cấu trúc

  • 1. Đặt vấn đề (11)
  • 2. Lịch sử giải quyết vấn đề (11)
  • 3. Mục tiêu đề tài (12)
  • 4. Đối tượng và phạm vi nghiên cứu (12)
  • 5. Phương pháp nghiên cứu (12)
  • 7. Bố cục luận văn (12)
  • CHƯƠNG 1.............................................................................................................. 9 (13)
    • 1.1. Mô tả chi tiết bài toán (13)
      • 1.1.1 Chụp CT và ảnh CT ngực (13)
      • 1.1.2 Dữ liệu Dicom (13)
      • 1.1.3 Nhận diện vùng bất thường trên ảnh CT ngực (15)
    • 1.2. Vấn đề và giải pháp liên quan đến bài toán (16)
      • 1.2.1 Mạng Nơ-ron nhân tạo (16)
      • 1.2.2 Thị giác máy tính (0)
      • 1.2.3 Mô hình phát hiện vùng trong ảnh (24)
    • 1.3. Các thư viện hỗ trợ cho mô hình Faster-RCNN (28)
      • 1.3.1 Thư viện Tensorflow (28)
      • 1.3.2 Thư viện Keras (28)
      • 1.3.3 Thư viện SimpleITK (30)
  • CHƯƠNG 2............................................................................................................ 28 (32)
    • 2.1. Tổng thể hệ thiết kế hệ thống (32)
    • 2.2. Cài đặt hệ thống (32)
      • 2.2.1 Thu thập và xử lý dữ liệu (32)
      • 2.2.2 Quá trình xử lý rút trích đặc trưng từ ảnh (35)
      • 2.2.3 Xử lý đặc trưng qua Region Proposal Network (RPN) (36)
      • 2.2.4 Quá trình xử lý nhận diện vùng bất thường (39)
  • CHƯƠNG 3............................................................................................................ 38 (42)
    • 3.1 Dữ liệu và môi trường thực nghiệm (42)
    • 3.2 Kết quả đánh giá (44)
      • 3.2.1 Đánh giá thời gian thực nghiệm (0)
      • 3.2.2 Đánh giá tổng quát (0)
      • 3.3.1 Đánh giá dữ liệu (0)
      • 3.3.2 Nhược điểm hệ thống (0)
    • 1. Kết quả đạt được (58)
    • 2. Hướng phát triển (58)
  • TÀI LIỆU THAM KHẢO (59)

Nội dung

ỨNG DỤNG MÔ HÌNH FASTERRCNN PHÁT HIỆN VÙNG BẤT THƯỜNG TRÊN ẢNH CT NGỰC Giáo viên hướng dẫn: TS.Trần Nguyễn Minh Thư Cần Thơ, 062020 NHẬN XÉT CỦA GIẢNG VIÊN Cần Thơ, ngày tháng năm (GVHD ký và ghi rõ họ tên) LỜI CẢM ƠN Để có được bài luận văn này, em xin được bày tỏ lòng biết ơn chân thành và sâu sắc đến Cô TS.Trần Nguyễn Minh Thư – người đã trực tiếp tận tình hướng dẫn, giúp đỡ em. Trong suốt quá trình thực hiện luận văn, nhờ những sự chỉ bảo và hướng dẫn quý giá đó mà bài luận văn này được hoàn thành một cách tốt nhất. Em cũng xin gửi lời cám ơn chân thành đến các Thầy Cô Giảng viên Đại học Cần Thơ, đặc biệt là các Thầy Cô ở Khoa CNTT TT, những người đã truyền đạt những kiến thức quý báu trong thời gian qua. Em cũng xin chân thành cảm ơn bạn bè cùng với gia đình đã luôn động viên, khích lệ và tạo điều kiện giúp đỡ trong suốt quá trình thực hiện để em có thể hoàn thành bài luận văn một cách tốt nhất. Tuy có nhiều cố gắng trong quá trình thực hiện luận văn, nhưng không thể tránh khỏi những sai sót. Em rất mong nhận được sự đóng góp ý kiến quý báu của quý Thầy Cô và các bạn để bài luận văn hoàn thiện hơn. Cần Thơ, ngày 27 tháng 06 năm 2020 Người viết Đề tài: Ứng dụng mô hình FasterRCNN phát hiện vùng bất thường trên ảnh CT ngực MỤC LỤC PHẦN GIỚI THIỆU 7 1. Đặt vấn đề 7 2. Lịch sử giải quyết vấn đề 7 3. Mục tiêu đề tài 8 4. Đối tượng và phạm vi nghiên cứu 8 5. Phương pháp nghiên cứu 8 7. Bố cục luận văn 8 PHẦN NỘI DUNG 9 CHƯƠNG 1 9 MÔ TẢ BÀI TOÁN 9 1.1. Mô tả chi tiết bài toán 9 1.1.1 Chụp CT và ảnh CT ngực 9 1.1.2 Dữ liệu Dicom 9 1.1.3 Nhận diện vùng bất thường trên ảnh CT ngực 11 1.2. Vấn đề và giải pháp liên quan đến bài toán 12 1.2.1 Mạng Nơron nhân tạo 12 1.2.2 Thị giác máy tính 13 1.2.3 Mô hình phát hiện vùng trong ảnh 20 1.3. Các thư viện hỗ trợ cho mô hình FasterRCNN 24 1.3.1 Thư viện Tensorflow. 24 1.3.2 Thư viện Keras 24 1.3.3 Thư viện SimpleITK 26 CHƯƠNG 2 28 THIẾT KẾ HỆ THỐNG 28 2.1.Tổng thể hệ thiết kế hệ thống 28 2.2. Cài đặt hệ thống 28 2.2.1 Thu thập và xử lý dữ liệu 28 2.2.2 Quá trình xử lý rút trích đặc trưng từ ảnh 31 2.2.3 Xử lý đặc trưng qua Region Proposal Network (RPN) 32 1 Đề tài: Ứng dụng mô hình FasterRCNN phát hiện vùng bất thường trên ảnh CT ngực 2.2.4 Quá trình xử lý nhận diện vùng bất thường 35 CHƯƠNG 3 38 KIỂM THỬ VÀ ĐÁNH GIÁ 38 3.1 Dữ liệu và môi trường thực nghiệm 38 3.2 Kết quả đánh giá 40 3.2.1 Đánh giá thời gian thực nghiệm 40 3.2.2 Đánh giá tổng quát 41 3.3.1 Đánh giá dữ liệu 46 3.3.2 Nhược điểm hệ thống 53 PHẦN KẾT LUẬN 54 1. Kết quả đạt được 54 2. Hướng phát triển 54 TÀI LIỆU THAM KHẢO 55

Lịch sử giải quyết vấn đề

Nhận dạng và phát hiện đối tượng đã được nghiên cứu từ lâu bởi các nhà khoa học trên toàn cầu, bao gồm Mỹ, Australia và Đức Họ đã phát triển các giải pháp để nhận diện và phát hiện bất thường thông qua việc sử dụng hình ảnh số, tiếp theo là hình ảnh CT và hình ảnh 3D.

Vào năm 2018, Wentao Zhu và các cộng sự đã phát triển một hệ thống chẩn đoán ung thư phổi tự động bằng cách áp dụng máy học vào phân tích hình ảnh CT.

Hệ thống phân loại khối u thành lành tính và ác tính đã được nghiên cứu thành công trên hình ảnh 3D từ CT, sử dụng cơ sở dữ liệu LIDC-IDRI và LUNA16 Nhiệm vụ của nhóm là phát hiện vị trí và kích thước của từng khối u trong hình ảnh Giải pháp này đạt độ chính xác 90.44%.

In 2016, the Lung Nodule Analysis 16 (LUNA16) competition was organized by Colin Jacobs, Arnaud Arindra Adiyoso Setio, Bram van Ginneken from Radboud University Medical Center in Nijmegen, Netherlands, and Alberto Traverso from the Polytechnic University.

LUNA16, một cuộc thi lớn trong lĩnh vực deep learning cho y học, được tổ chức bởi INFN tại Torino, Ý Mục tiêu của cuộc thi là phát triển các thuật toán tiên tiến nhằm nâng cao khả năng nhận diện và phát hiện vùng bệnh cũng như khối u trên hình ảnh CT ngực.

Mục tiêu đề tài

Mục tiêu của nghiên cứu này là phát triển mô hình ứng dụng để nhận dạng và phát hiện khối u trong ảnh CT Nghiên cứu sẽ tập trung vào các bước cần thiết cho quá trình nhận dạng, đồng thời tìm hiểu các thuật toán và mô hình có khả năng phát hiện và nhận dạng trên hình ảnh Qua đó, nghiên cứu sẽ so sánh và đánh giá hiệu quả của các mô hình dựa trên phương pháp đã được thực hiện.

Phương pháp nghiên cứu

Phương pháp xây dựng mô hình phát hiện và phân loại khối u sử dụng Faster R-CNN, với các đặc trưng được rút trích từ VGG16 Mô hình này đánh giá thông qua mạng Region Proposal Network (RPN) và áp dụng máy học để xác định khối u trên hình ảnh CT.

Bố cục luận văn

Bài viết này sẽ giới thiệu tổng quan về đề tài nghiên cứu, bao gồm việc đặt vấn đề và lịch sử giải quyết vấn đề Mục tiêu của đề tài sẽ được nêu rõ, cùng với đối tượng và phạm vi nghiên cứu Nội dung nghiên cứu sẽ được phân tích chi tiết, kèm theo phương pháp nghiên cứu được áp dụng Cuối cùng, bài viết sẽ trình bày bố cục của luận văn một cách logic và mạch lạc.

Phần nội dung: Nội dung chính của đề tài được chia làm 3 chương

Chương 1: Mô tả tổng quan.

Chương 2: Cài đặt và thiêt kế hệ thống

Chương 3: Kiểm tra và đánh giá

Trình bày kết quả đạt được và hướng phát triển hệ thống.

9

Mô tả chi tiết bài toán

1.1.1 Chụp CT và ảnh CT ngực

Kể từ những năm 1970, chụp ảnh CT đã trở thành công cụ thiết yếu trong chẩn đoán hình ảnh Gần đây, phương pháp này được áp dụng để chẩn đoán và sàng lọc các bệnh lý, như ung thư phổi và bệnh tim Chụp CT sử dụng công nghệ xử lý máy tính để kết hợp nhiều phép đo tia X từ các góc khác nhau, tạo ra hình ảnh cắt ngang của đối tượng mà không cần phẫu thuật Ngoài ra, các loại CT như chụp cắt lớp phát xạ positron (PET) và chụp cắt lớp phát xạ đơn photon (SPECT) cũng được sử dụng rộng rãi trong y tế.

CT sử dụng tia X để phân tích cấu trúc và thành phần của vật thể thông qua việc đo lường mức độ hấp thụ năng lượng Máy CT quét xung quanh cơ thể bệnh nhân, phát ra tia X và ghi nhận dữ liệu hấp thụ để tạo ra hình ảnh chi tiết.

X của các cấu trúc khác nhau trong cơ thể được thu thập và sử dụng để kết hợp với hình ảnh máy tính của cơ thể, tạo ra mô hình trong không gian 2 chiều hoặc 3 chiều.

Chụp CT ngực là phương pháp X quang chi tiết giúp theo dõi và phát hiện bất thường trong phổi và ngực, từ đó phòng ngừa các bệnh nguy hiểm Phương pháp này có vai trò quan trọng trong y học, giúp xác định nguyên nhân các triệu chứng như khó thở và đau ngực, cũng như phát hiện các vấn đề về phổi như khối u, tràn dịch màng phổi, phổi thuyên tắc, khí phế thũng, lao, viêm phổi, và chấn thương ngực Ngoài ra, chụp CT ngực còn hỗ trợ chẩn đoán các bệnh liên quan đến lá phổi như ung thư, khối viêm, và dị vật, đồng thời xác định vị trí khối u và dị vật để định hướng cho phẫu thuật và xạ trị.

Hình ảnh chụp CT đóng vai trò quan trọng trong việc chuẩn đoán bệnh và là tư liệu quý giá cho sinh viên, nghiên cứu sinh cũng như các cuộc nghiên cứu về bệnh lý Hiện nay, sự phát triển trong lưu trữ hình ảnh y tế đã cho phép các ảnh CT và hình ảnh y khoa khác được lưu trữ dưới dạng tập tin DICOM, giúp người dùng dễ dàng truy cập thông tin liên quan như hình ảnh, thông tin bệnh nhân và giới tính.

Tiêu chuẩn DICOM (Digital Imaging and Communications in Medicine) 2 là công cụ quan trọng trong việc xử lý, lưu trữ và truyền tải hình ảnh y tế DICOM cho phép tích hợp các thiết bị hình ảnh như máy quét, máy chủ và máy in, giúp bệnh viện và các ứng dụng nhỏ hơn dễ dàng quản lý hình ảnh y tế Các tệp DICOM có thể được trao đổi giữa các hệ thống có khả năng nhận dữ liệu hình ảnh và thông tin bệnh nhân theo định dạng DICOM Tiêu chuẩn này quy định cấu trúc tập tin và giao thức truyền thông sử dụng nền tảng TCP/IP, cho phép giao tiếp hiệu quả giữa các hệ thống DICOM hỗ trợ nhiều phương thức hình ảnh như X quang, siêu âm, chụp CT và MRI, đồng thời bao gồm các giao thức trao đổi hình ảnh, nén hình ảnh và ảo hóa 3 chiều, cũng như cung cấp công cụ trình bày và báo cáo trong y khoa.

DICOM là định dạng dữ liệu chuyên biệt cho hình ảnh y tế, trong đó nhóm thông tin vào các tập dữ liệu hình ảnh Ví dụ, một tệp hình ảnh chụp CT ngực có thể chứa ID bệnh nhân, đảm bảo rằng hình ảnh không bị tách rời khỏi thông tin quan trọng này Tương tự như định dạng JPEG, DICOM cũng cho phép nhúng các thẻ để xác định và mô tả hình ảnh Dữ liệu trong DICOM bao gồm nhiều thuộc tính như tên bệnh nhân, ID và các thuộc tính đặc biệt chứa dữ liệu pixel của hình ảnh.

Hình ảnh 1: thông tin dữ liệu của Dicom phần header 3

2 https://en.wikipedia.org/wiki/DICOM

3 https://people.cas.sc.edu/rorden/dicom/index.html

1.1.3 Nhận diện vùng bất thường trên ảnh CT ngực

Khối u hay khối mô tân sinh là vùng mô bất thường có thể rắn hoặc chứa dịch Mặc dù không phải tất cả khối u đều là ung thư, nhưng việc khám bác sĩ khi phát hiện khối u là cần thiết Các chuyên gia định nghĩa khối u là sự phát triển quá mức của tế bào, khi các tế bào phân chia nhiều hơn cần thiết hoặc không chết theo chu trình bình thường Trong cơ thể khỏe mạnh, tế bào mới hình thành để thay thế tế bào cũ, nhưng trong trường hợp ung thư, sự hình thành tế bào mới diễn ra khi không cần thiết, dẫn đến sự phát triển của các khối u.

Khối u có thể có kích thước từ nhỏ đến lớn do sự phát triển của tế bào và được chia thành hai loại chính: khối u lành tính và khối u ác tính, trong đó khối u ác tính có khả năng lây lan sang các vùng khác Các khối u này có thể xuất hiện ở hầu hết mọi nơi trên cơ thể, và một số khối u lành tính có thể tiến triển thành tiền ung thư và sau đó trở thành ác tính Tuy nhiên, không phải lúc nào cũng dễ dàng xác định được hướng tiến triển của khối u trong tương lai.

Khối u phổi hình thành do sự phân chia và phát triển bất thường của tế bào trong mô phổi hoặc đường hô hấp, dẫn đến sự tích tụ của khối u Quá trình này xảy ra khi các tế bào phân chia nhanh chóng nhưng không chết đi Nếu khối u có kích thước 3cm hoặc nhỏ hơn, nó thường được gọi là nốt phổi; ngược lại, nếu đường kính lớn hơn 3cm, nó được gọi là khối u.

Hình ảnh 2 cho thấy khối u có kích thước từ 3mm trở lên Việc xác định khối u trên ảnh CT ngực đang phát triển theo xu hướng trí tuệ nhân tạo và thị giác máy tính, đóng vai trò quan trọng trong y khoa để phát hiện bệnh tật ở các khu vực khác nhau Nghiên cứu này tập trung vào việc xây dựng mô hình phát hiện vùng bất thường trên ảnh CT ngực, sử dụng mô hình Faster-RCNN và tập dữ liệu LUNA16 để huấn luyện.

5 https://pubmed.ncbi.nlm.nih.gov/21452728/

Vấn đề và giải pháp liên quan đến bài toán

1.2.1 Mạng Nơ-ron nhân tạo

1.2.1.1 Khái niệm về mạng nơ-ron nhân tạo

Mạng nơ-ron nhân tạo (ANN) là một mô hình phức tạp bao gồm nhiều đơn vị xử lý, được thiết kế để mô phỏng quá trình học tập và tính toán của bộ não con người.

Nó được hình thành từ nhiều phần tử xử lý (nơ-ron) kết nối qua các liên kết (trọng số liên kết), hoạt động như một thể thống nhất để giải quyết các vấn đề cụ thể.

Một mạng nơ-ron nhân tạo được thiết kế đặc biệt cho các ứng dụng như nhận dạng mẫu và phân loại dữ liệu Quá trình học diễn ra thông qua việc sử dụng tập mẫu huấn luyện để cải thiện khả năng nhận diện và phân loại của mạng.

Học là quá trình điều chỉnh trọng số kết nối giữa các nơ-ron cơ bản trong một nơ-ron nhân tạo, như được minh họa trong Hình ảnh 3.

Hình ảnh 3: Thành phần cơ bản của nơ-ron nhân tạo 7

Các đầu vào (Inputs) của nơ-ron là các tín hiệu được đưa vào dưới dạng vector m chiều, kết nối với các trọng số liên kết (w1, w2, …, wm) Trọng số liên kết đóng vai trò quan trọng trong mạng nơ-ron nhân tạo (ANN), thể hiện mức độ quan trọng của dữ liệu đầu vào trong quá trình xử lý thông tin và chuyển đổi dữ liệu giữa các tầng.

Hàm kết hợp, hay còn gọi là hàm mạng (net), thực hiện việc tính tổng các trọng số của tất cả các đầu vào được cung cấp cho mỗi nơ-ron Công thức tính hàm tổng của nơ-ron thường được áp dụng để xác định giá trị đầu ra.

 Độ lệch (bias): thường được đưa vào như một thành phần của hàm truyền.

6 https://en.wikipedia.org/wiki/Artificial_neural_network

Hàm kích hoạt (hay còn gọi là hàm truyền) là một thành phần quan trọng trong mạng nơ-ron, dùng để giới hạn phạm vi đầu ra của mỗi nơ-ron Hàm này nhận đầu vào từ kết quả của hàm tổng và ngưỡng đã cho, thường giới hạn trong khoảng [0,1] hoặc [-1,1] Có nhiều loại hàm truyền khác nhau, bao gồm cả các hàm tuyến tính và phi tuyến, giúp tối ưu hóa quá trình học của mô hình.

 Đầu ra: là tính hiệu đầu ra của một nơ-ron.

1.2.1.2 Mạng nơ-ron đa tầng

Mạng nơ-ron đa tầng (Multi Layer Perceptron - MLP) là một mô hình phổ biến, kết hợp nhiều mạng thành một cấu trúc phức tạp Mạng MLP bao gồm các perceptron được chia thành nhiều lớp, trong đó có ba lớp chính: lớp đầu vào, lớp ẩn và lớp đầu ra Kiến trúc của MLP cho phép đầu vào là các vector trong không gian p chiều và đầu ra là các vector trong không gian q chiều Mỗi nơ-ron ở lớp sau liên kết với tất cả các nơ-ron ở lớp trước, với đầu ra của nơ-ron trước trở thành đầu vào cho nơ-ron sau.

Hình ảnh 4: Mô hình Multi Layer Perceptron (MLP) 9 1.2.2 Thị giác máy tính

Thị giác máy tính là lĩnh vực khoa học máy tính giúp máy tính "nhìn và hiểu" nội dung ảnh số, bao gồm hình ảnh và phim Quá trình này mô phỏng thị giác con người qua các giai đoạn như thu nhận thông tin, xử lý ảnh kỹ thuật số, và phân tích dữ liệu hình ảnh Nhận diện hình ảnh giải quyết vấn đề biểu tượng thông tin từ dữ liệu hình ảnh bằng cách sử dụng các mô hình được phát triển từ lý thuyết học, thống kê, vật lý và y học.

8 https://en.wikipedia.org/wiki/Multilayer_perceptron

9 https://dominhhai.github.io/vi/2018/04/nn-intro/

10 https://vi.wikipedia.org/wiki/Thị_giác_máy_tính

Nhận dạng đối tượng là thuật ngữ chỉ các nhiệm vụ thị giác máy tính liên quan đến việc xác định và phân loại các đối tượng trong ảnh kỹ thuật số Hiện nay, nhiều mô hình và dữ liệu đã được phát triển, mang lại hiệu quả cao trong việc phân loại hình ảnh Mặc dù còn nhiều thách thức, nhưng các nghiên cứu và giải pháp đã được đưa ra để cải thiện quá trình này Tìm vị trí của đối tượng trong hình ảnh cũng rất quan trọng, ví dụ như việc cắt xén ảnh thông minh dựa trên vị trí của đối tượng, giúp tối ưu hóa quy trình xử lý Kết hợp giữa phân loại và định vị không chỉ giúp xác định vị trí mà còn phân loại đối tượng thành nhiều loại khác nhau Vấn đề phát hiện và phân loại đồng thời là một khía cạnh quan trọng trong nhận dạng đối tượng.

CNN (Mạng nơ-ron tích chập) 11 là sự kết hợp giữa mạng nơ-ron đa tầng và thị giác máy tính, được thiết kế để phân tích và xử lý hình ảnh Các lớp trong CNN thường bao gồm nhiều lớp chập kết hợp với phép nhân, giúp tối ưu hóa khả năng nhận diện và phân loại hình ảnh.

Tích chập là một phép toán trong toán học, đặc biệt trong giải tích hàm, thực hiện trên hai hàm số f và g để tạo ra một hàm số thứ ba Phép toán này có ứng dụng rộng rãi trong các lĩnh vực như xác suất, thống kê, thị giác máy tính, xử lý ảnh, xử lý tín hiệu, kỹ thuật điện, học máy và phương trình vi phân Ví dụ, trong hình ảnh minh họa, ảnh CT ngực được xem như một hàm số đầu vào, trong khi mặt nạ mạng đã được xử lý trước đó là hàm số thứ hai Khi thực hiện phép toán tích chập giữa hai hàm này, kết quả thu được là một ảnh mới, cho phép đánh giá và cải thiện kết quả, như thể hiện trong hình ảnh cuối cùng, cho thấy kích thước của khối u thông qua việc phân tích kết quả đã thực hiện.

11 https://en.wikipedia.org/wiki/Convolutional_neural_network

12 https://towardsdatascience.com/basics-of-the-classic-cnn-a3dce1225add

13 https://vi.wikipedia.org/wiki/Tính_chập

Hình ảnh 6: Phép tính chập trên ảnh CT ngực 14 Hình a: hình ảnh đầu vào của ảnh CT ngực.

Hinh b: mặt nạ mạng khi qua quá trình xử lý.

Hình c: kết quả của việc phép toán chập của hình a và hình b.

Lớp tính chập (Convolution layer) là lớp đầu tiên trong mạng nơ-ron để trích xuất đặc trưng từ dữ liệu đầu vào Để thực hiện điều này, ma trận trọng số đầu vào sẽ được nhân với ma trận kernel vuông kích thước k x k, trong đó k là một số lẻ (1, 3, 5, ) Cụ thể, nếu ma trận đầu vào có kích thước (W1, H1, D1) và có K kernel với kích thước F, số bước di chuyển S và số vòng điệp P, ta có thể tính toán kích thước ma trận đầu ra bằng công thức W2 = (W1 – F + 2P)/S + 1 và H2 = (H1 – F + 2P)/S.

Ma trận đầu vào (I) có kích thước 7x7x1 và ma trận kernel (K) kích thước 3x3x1 Để thực hiện phép nhân giữa các phần tử của ma trận kernel và ma trận đầu vào, chúng ta sẽ thu được ma trận kết quả có kích thước (I*K).

Strides là số bước di chuyển của ma trận kernel trên ma trận đầu vào Khi stride bằng 1, ma trận kernel di chuyển 1 ô, trong khi với stride bằng 2, nó di chuyển 2 ô.

Hình ảnh 8: Thực hiện tride bằng 1 16

Các thư viện hỗ trợ cho mô hình Faster-RCNN

Sự phát triển của trí tuệ nhân tạo đã thúc đẩy nghiên cứu về các công nghệ tiên tiến từ các công ty lớn như Google và Facebook TensorFlow, phần mềm mã nguồn mở được phát triển bởi Google, chuyên về máy học và học sâu, cung cấp một hệ sinh thái toàn diện với các công cụ, thư viện và tài nguyên cộng đồng Điều này giúp các nhà nghiên cứu đẩy mạnh công nghệ ML và cho phép các nhà phát triển dễ dàng xây dựng và triển khai ứng dụng TensorFlow còn hỗ trợ tính toán song song trên nhiều loại máy tính, bao gồm cả CPU và GPU, mang lại sự linh hoạt cho người dùng.

Keras và TensorFlow là hai thư viện mã nguồn mở được phát triển bởi các kỹ sư nghiên cứu học sâu của Google Thư viện Keras được viết bằng ngôn ngữ Python, giúp đơn giản hóa quá trình xây dựng và huấn luyện các mô hình học máy.

26 https://vi.wikipedia.org/wiki/TensorFlow

Keras là một API bậc cao được sử dụng trong nghiên cứu mạng nơ-ron, tương thích với các thư viện học sâu lớn như TensorFlow, CNTK và Theano Nó không xử lý các tiến trình ở tầng thấp như tensor hay convolution, mà dựa vào một thư viện tối ưu hóa tốt để làm "backend" Keras mang lại nhiều ưu điểm cho người dùng trong việc phát triển mô hình học máy.

Thư viện Keras nổi bật với tính dễ sử dụng và khả năng xây dựng mô hình nhanh chóng, giúp giảm tải công việc cho người dùng Keras cung cấp các API nhất quán và đơn giản, giảm thiểu số yêu cầu thực hiện cho máy, đồng thời cung cấp thông tin rõ ràng khi gặp lỗi trong quá trình cài đặt.

Keras là một công cụ mạnh mẽ cho phép người dùng xây dựng các mô hình học sâu trên nhiều nền tảng, bao gồm điện thoại thông minh (iOS và Android), web và Máy ảo Java Nó hỗ trợ đào tạo phân tán trên các cụm GPU và TPU, chủ yếu thông qua CUDA Các mô hình được tạo ra bằng Keras thường có cấu trúc dễ hiểu, thường là chuỗi liên tiếp độc lập hoặc đồ thị độc lập, giúp người dùng dễ dàng triển khai và phát triển.

- Ngoài việc thực hiện trên chuẩn nơ-ron Keras còn hỗ trợ cho Convolutional Neural Network (CNN) và Recurrent Neural Network (RNN) và có thể kết hợp cả 2.

Kiến trúc dữ liệu cơ bản của Keras được tổ chức theo kiểu mô hình, với mô hình đơn giản nhất là mô hình tuần tự (Sequential), trong đó các lớp được sắp xếp theo thứ tự Keras cung cấp các phân lớp giúp người dùng xây dựng mô hình một cách nhanh chóng và dễ dàng.

Mô hình Keras bao gồm hai loại chính: mô hình xây dựng tuần tự và lớp mô hình, cả hai đều hỗ trợ các phương thức như layers (danh sách các lớp) và input (đầu vào của tensors) Lớp model cho phép cấu hình mô hình và trả về nội dung cấu hình thông qua các hàm get_config và from_config Keras cũng hỗ trợ thiết lập giá trị trọng số từ mảng danh sách trong thư viện Numpy qua hàm load_weight và lưu trữ dữ liệu trọng số bằng hàm save_weight, với các tập dữ liệu thường tuân theo chuẩn HPF5 hoặc h5py.

Các layer là thành phần cơ bản của mạng nơ-ron, có nhiệm vụ trích xuất những đặc trưng quan trọng từ dữ liệu đầu vào Khi hoạt động hiệu quả, những đặc trưng này sẽ cung cấp thông tin có giá trị cho việc xây dựng mô hình.

28 https://en.wikipedia.org/wiki/Keras

30 https://keras.io/models/about-keras-models/

Trong các mô hình deep learning, các layer thường được liên kết đơn giản với nhau Trong mạng nơ-ron, lớp Fatten của Keras có chức năng chuyển đổi ảnh 2 chiều hoặc 3 chiều thành mảng 1 chiều, tương tự như việc cắt từng dòng và nối lại để tạo thành một mảng Sau khi chuyển đổi, phần mạng nơ-ron sẽ sử dụng lớp Dense, nơi các nơ-ron được kết nối hoàn toàn, nghĩa là mỗi nơ-ron trong lớp này kết hợp với tất cả các lớp trước và sau, tương ứng với quá trình thực hiện của hàm output.

= activation(dot(input, kernel) + bias) ở đây hàm activation là hàm kích hoạt thông qua các thông số, kernel là ma trận trọng số được tạo ra bởi layer

SimpleITK là một thư viện mã nguồn mở chuyên dùng cho phân tích hình ảnh, được phát triển dựa trên nền tảng Insight Toolkit (ITK) Thư viện này hỗ trợ xử lý ảnh đa chiều và phân đoạn ảnh, đặc biệt trong lĩnh vực y tế với các hình ảnh từ CT và MRI, cho phép chuyển đổi thành ảnh số Được viết bằng C++, SimpleITK cũng được phát triển cho nhiều ngôn ngữ khác như Java và Python Nguyên lý hoạt động của SimpleITK dựa trên việc xác định các điểm được sắp xếp theo các yếu tố trong không gian vật lý.

1 Origin: vị trí tọa độ bắt đầu của tất cả pixel là không

2 Spacing: khoảng cách giữa các pixel

3 Size: số điểm pixel theo mỗi chiều

4 Direction matrix: là một trận cosine hướng của mỗi trục tương ứng với các cột ma trận.

Hình ảnh 20: Biểu diễn ảnh thông qua simpleITK 32

32 https://simpleitk.readthedocs.io/en/v1.2.4/Documentation/docs/source/fundamentalConcepts.htm l

28

Tổng thể hệ thiết kế hệ thống

Hệ thống được phát triển nhằm mục đích dự đoán và đánh giá các vùng bệnh trên ảnh CT ngực, sử dụng kiến trúc Faster-RCNN Kiến trúc này khá phức tạp do yêu cầu xử lý qua nhiều giai đoạn khác nhau.

Hình ảnh 21: Kiến trúc của Faster RCNN trên ảnh CT ngực

Kiến trúc Faster-RCNN sử dụng VGG16 để rút trích đặc trưng từ ảnh CT có kích thước 512x512x3 Các đặc trưng này được xử lý qua mạng Region Proposal Network (RPN) nhằm xác định các khung (bounding boxes) chứa đối tượng Sau khi xác định khung và đặc trưng hình ảnh, quá trình xử lý Region of Interest (ROI) sẽ trích xuất các đặc trưng từ những khung này Kết quả cuối cùng là các “tensor” tương ứng, được phân loại qua mô-đun R-CNN để xác định sự hiện diện của ung thư và điều chỉnh khung nhận diện.

Cài đặt hệ thống

2.2.1 Thu thập và xử lý dữ liệu

Tập dữ liệu LUNA16 bao gồm 888 ảnh CT 3D và 1186 khối u, với mỗi khối u được xác định bởi tọa độ x, y, z cùng kích thước thực tế trên ảnh Dữ liệu ảnh được lưu trữ ở định dạng mhd, chứa các thông số quan trọng như origin, spacing, và direction matrix Để chuyển đổi các thông số này sang vị trí tọa ảnh số, chúng tôi sử dụng thư viện SimpleITK.

Hình ảnh 22: xử lý dữ liệu

Dữ liệu LUNA16 được xử lý 2D để áp dụng vào Faster-RCNN như Hình ảnh 22

Hàm ReadImage của SimpleITK được sử dụng để lấy các thông số như origin, spacing và size từ tập tin mhd trong bộ dữ liệu LUNA Sau khi thu thập được thông tin ảnh, hàm GetArrayFromImage sẽ chuyển đổi hình ảnh thành định dạng 3D với kích thước 512x512xN Tiếp theo, dữ liệu của vùng bệnh sẽ được trích xuất từ hai tập Annotation và Candidates, bao gồm seriesuid (mã bệnh nhân), coordx, coordy, coordz (tọa độ vùng bệnh) và diameter_mm (kích thước vùng bệnh), cùng với class để xác định liệu vùng đó có phải là vùng bệnh hay không Cuối cùng, dữ liệu thực sẽ được chuyển đổi sang dữ liệu chuẩn số học của ảnh theo các công thức đã cho, trong đó origin là vị trí tọa độ bắt đầu của tất cả các pixel và spacing là khoảng cách giữa các pixel.

Với tọa độ của ảnh số đã chuẩn hóa, dữ liệu ảnh 3D sẽ được kết hợp, bắt đầu bằng việc tách ảnh 2D tại chiều thứ 3 với tọa độ z để thu được ảnh số 2D Kết quả này sẽ được chuẩn hóa sang ảnh xám trong khoảng (0,1) với các thông số maxHU = 400 và minHU = -1000 Trị số HU (Hounsfield) biểu thị mức độ hấp thụ tia X trên hình ảnh CT cho mỗi pixel, và các mức HU sẽ được minh họa trong Hình ảnh 23.

33 https://simpleitk.readthedocs.io/en/v1.2.4/Documentation/docs/source/fundamentalConcepts.html

34 https://simpleitk.readthedocs.io/en/v1.2.4/Documentation/docs/source/fundamentalConcepts.html

Hình ảnh 23: Chuẩn Hounsfield trên ảnh chụp CT 35

Quá trình rút trích đặc trưng được thực hiện trên mô hình VGG16 với ảnh RGB, trong đó ảnh xám được chuyển đổi thành ảnh RGB bằng cách nhân với 255 và sử dụng hàm stack của thư viện Numpy để tạo số chiều cho ảnh Sau khi chuyển đổi, ảnh được lưu theo định dạng PNG Tiếp theo, để đánh giá ảnh, ta xác định vùng đánh giá theo các tọa độ x1, y1, x2, y2, với các giá trị (1, 2, 1, 2 = −, +, −, +) Ví dụ, hình ảnh bệnh nhân có serieuid: 112740418331256326754121315800 có tọa độ chuẩn hóa x, y, z = (333, 327, 113) và r =.

20, ta tiến hành lọc ảnh 2D ở tọa độ chiều thứ 3 là 113.

35 https://www.kaggle.com/fabmilo/full-preprocessing-tutorial

36 https://luna16.grand-challenge.org/

Hình ảnh 24: Xử lý dữ liệu và xác định vị trí vùng bệnh

Khi đã xử lý toàn bộ dữ liệu, dữ liệu thực nghiệm này sẽ là 1176/1186 ảnh

Trong bộ dữ liệu gồm 10 ảnh bị hư, mỗi ảnh thể hiện một khối u và được lưu theo định dạng (địa chỉ ảnh, x1, y1, x2, y2, class) Dữ liệu được sắp xếp ngẫu nhiên, trong đó 80% (950 ảnh) sẽ được sử dụng cho quá trình huấn luyện, còn 20% (236 ảnh) còn lại sẽ được dùng để kiểm tra và đánh giá.

2.2.2 Quá trình xử lý rút trích đặc trưng từ ảnh

Quá trình rút trích đặc trưng từ hình ảnh được thực hiện hiệu quả nhờ vào các kiến trúc mạng như VGG16 và ZF Trong nghiên cứu này, kiến trúc VGG-16 được áp dụng để trích xuất đặc trưng từ hình ảnh CT ngực VGG-16 yêu cầu đầu vào là ảnh RGB với kích thước 224 x 224 x 3 Việc sử dụng kết quả từ lớp trung gian trong quá trình rút trích đảm bảo rằng việc điều chỉnh kích thước đầu vào không ảnh hưởng đến kết quả cuối cùng.

Sau khi rút trích đặc trưng hình ảnh từ lớp thứ 13 của kiến trúc VGG-16, đặc trưng này được áp dụng để đánh giá hình ảnh Quá trình này làm giảm kích thước ảnh 16 lần theo chiều ngang và chiều rộng, trong khi chiều sâu vẫn giữ nguyên ở mức 512 Kích thước tổng quát của ảnh sau khi rút trích đặc trưng sẽ là 32 x 32 x 512.

Hình ảnh 25: Trích xuất dữ liệu sử dụng VGG16 37

2.2.3 Xử lý đặc trưng qua Region Proposal Network (RPN)

Sau khi đã trích xuất đặt trưng ảnh là 32 x 32 x 512, trong đó mỗi điểm trong

Kích thước 32 x 32 (1024) thể hiện vị trí, với các đặc trưng được rút trích thông qua cửa sổ trượt kích thước (3x3) Mỗi điểm trên cửa sổ trượt sẽ được tạo ra từ quá trình này.

Trong nghiên cứu này, chúng tôi sử dụng 9 anchor với các tỉ lệ khung khác nhau, bao gồm kích thước 32px, 64px và 128px Do kích thước của các khối u trong ảnh khá nhỏ, các anchor được chọn sẽ có tỷ lệ 1:1, 1:2 và 2:1 Kết quả là mỗi hình ảnh sẽ có tổng cộng 9126 anchor (32*32*9).

37 https://blog.csdn.net/majinlei121/article/details/53870433

Hình ảnh 26: Kích thước của anchor

Hình ảnh 27: Một vị trí Anchor tham chiếu đến ảnh gốc

Xử lý trên cửa sổ trượt là một phần quan trọng của mạng RPN, được triển khai hiệu quả thông qua cách tích chập hoàn toàn Chúng ta sử dụng song song hai lớp chập kernel 1x1 với 9 bộ (1x9) để phân lớp đầu ra, nhằm xác định xác suất cho mỗi đặc trưng có chứa một đối tượng trong 9 anchor tại điểm đó Đồng thời, lớp chập kernel 1x1 với 36 bộ (4x9) cũng được áp dụng để nâng cao khả năng phân loại.

9) thực hiện cho việc dự đoán hồi quy khung của khối u, đầu ra sẽ cho 4 hệ số hồi quy (hệ số hồi quy dùng để cải thiện tọa độ của các anchor cho mỗi đối tượng) của 9 anchor tại mỗi điểm biểu diễn trên những đặc trưng (32x32).

Hình ảnh 28: Quá trình từ trích xuất đặc trưng qua tiền xử lý RPN

Quá trình thực hiện RPN bao gồm hai phần dự đoán dựa trên các đặc trưng đã được rút trích và việc điều chỉnh khung của đối tượng Mỗi anchor sẽ được gán nhãn dương (positive) với giá trị 1 nếu nó có độ giao nhau với giá trị thực, hoặc nằm trong khung của IoU lớn hơn 0.7, được gọi là tiền cảnh (foreground) Điều kiện này thường đủ để xác định các anchor dương, trong khi điều kiện đầu tiên được áp dụng khi điều kiện thứ hai không thể xác định Ngoài ra, những anchor không dương sẽ được gán nhãn âm (negative) với giá trị 0 nếu tỉ lệ IoU thấp hơn 0.3 với giá trị thực, được gọi là nền (background).

Hình ảnh 29: đặc trưng của Anchor

Hình ảnh 30: Ví dụ kết quả của RPN Sau khi dán nhãn cho các anchor thì ta sẽ áp dụng mini batch với kích thước

Việc thực hiện 512 bước giúp cân bằng giữa background và foreground RPN được huấn luyện theo phương pháp end-to-end với stochastic gradient descent và tốc độ học là 0.01 Để đánh giá mất mát, chúng ta sẽ áp dụng hàm kích hoạt sigmoid cho đặc trưng phân lớp, sử dụng tất cả các anchor đã chọn trong mini batch để tính toán mất mát phân lớp bằng binary cross entropy.

Mất mát phân lớp RPN = ∑ ( , ∗) (5)

Hàm mất mát phân lớp được sử dụng để tính toán tổn thất trong mô hình RPN, với giá trị mặc định là 1.0 cho phân lớp Kích thước mini batch được chọn là 512, và hàm binary_crossentropy của Keras sẽ được áp dụng để tính toán giá trị tham số này.

Trong bài viết này, chúng ta xem xét vị trí của từng anchor trong mini-batch, với p[i] là xác suất dự đoán của anchor thứ i với nhãn đúng Các giá trị 0 và 1 được sử dụng để biểu thị các vị trí của anchor, và do số lượng kernel cho phân lớp là 9, chúng ta sẽ có 9 điểm thể hiện có hoặc không có Ví dụ, p[0,1,0,0,0,0,0,1,0] cho thấy rằng ở vị trí thứ 2 và thứ 8 có sự hiện diện của anchor.

38

Dữ liệu và môi trường thực nghiệm

Chuẩn hóa hình ảnh y khoa trong ảnh số là cần thiết để áp dụng mô hình Faster-RCNN cho việc phát hiện khối u Mục tiêu là đáp ứng các yêu cầu đã được đề ra trong phần đặc tả và thiết kế, sử dụng bộ dữ liệu LUNA16 và môi trường thực hiện phù hợp.

Môi trường để thực hiện việc thu thập xử lý dữ liệu được thực trên máy tính Asus, processor intel core i5, tốc độ 2,20 GHz, 8RAM, hệ điều hành window 10

Môi trường để trực hiện huấn luyện mô hình Faster-RCNN, Colab-Pro được thực hiện để huấn luận mô hình, với GPU: [T4,T100,K80s].

Viện Ung thư Quốc gia Hoa Kỳ (NCI) đã thành lập Hiệp hội cơ sở dữ liệu hình ảnh phổi (LIDC) nhằm nghiên cứu và phát hiện khối u phổi LIDC phát triển một cơ sở dữ liệu quốc tế có thể truy cập để đào tạo và đánh giá các phương pháp CAD trong việc phát hiện và chẩn đoán ung thư phổi Cơ sở dữ liệu này cho phép đánh giá hiệu suất của các phương pháp CAD trong việc phát hiện và phân loại kích thước khối u theo không gian và thời gian LIDC cung cấp thông tin chi tiết về sự hiện diện và kích thước của khối u phổi, với mỗi ảnh trong cơ sở dữ liệu được chú thích cẩn thận bởi các chuyên gia Qua nhiều nghiên cứu, quá trình đánh giá kết quả đã có nhiều cải tiến trong việc phát hiện và xác định kích thước của các khối u phổi.

Cơ sở dữ liệu LIDC/IDRI được thiết lập để phục vụ cộng đồng nghiên cứu hình ảnh y tế quốc tế, cung cấp một nguồn tài nguyên tham khảo quý giá Đây là một công cụ nghiên cứu hữu ích với nhiều ứng dụng rõ ràng trong lĩnh vực y tế.

Hình ảnh 35: Nốt (Khối u) có trong phổi 41

40 https://wiki.cancerimagingarchive.net/display/Public/LIDC-IDRI

41 https://pubmed.ncbi.nlm.nih.gov/21452728/

Cơ sở dữ liệu LIDC/IDRI cung cấp hình ảnh CT ngực với 1018 lần chụp, cho phép truy cập công khai và miễn phí Mỗi hình ảnh đều đi kèm với các chú thích từ các bác sĩ X quang có kinh nghiệm, giúp người dùng hiểu rõ hơn về các nốt (khối u) nhỏ kích thước 42.

CT ngực và các chú thích XML đã được phát triển để hỗ trợ các phương pháp CAD trong việc phát hiện, phân loại và đánh giá nốt phổi Cuộc thi Lung Nodule Analysis 16 (LUNA16), do Colin Jacobs và các cộng sự tại Trung tâm y tế Đại học Radboud, Hà Lan, cùng Alberto Traverso từ Đại học Bách khoa Torino, Ý tổ chức, là một cuộc thi mở với hình ảnh và tiêu chuẩn tham khảo được công khai Mục tiêu của LUNA16 là tạo cơ hội cho người tham gia thử nghiệm thuật toán trên cơ sở dữ liệu chung với quy trình đánh giá tiêu chuẩn hóa, nhằm thúc đẩy tiến bộ khoa học và cung cấp thông tin về hiệu suất của các thuật toán CAD hiện đại.

Bộ dữ liệu LUNA16, phục vụ cho thử thách Phân tích Nốt Phổi 2016, bao gồm 888 CT scan với độ dày lát trên 3 mm, được thu thập từ LIDC-IDRI và lưu trữ dưới định dạng MetaImage (mhd/raw) Mỗi tệp mhd đi kèm với một tệp nhị phân raw chứa dữ liệu pixel Tệp chú thích là một tệp csv, mỗi dòng ghi lại SeriesInstanceUID của quét, tọa độ x, y, z của từng phát hiện cùng với đường kính tính bằng mm, tổng cộng chứa 1186 nốt Ngoài ra, tệp candidates cũng là tệp csv, cung cấp thông tin về vị trí và kích thước của từng khối u.

42 https://pubmed.ncbi.nlm.nih.gov/21452728/

Kết quả đánh giá

3.2.1 Đánh giá thời gian huấn luyện

Mô hình được huấn luyện trên Colab với tổng thời gian là 12 giờ 49 phút cho 34 lần huấn luyện dữ liệu, sử dụng 950 ảnh Kết quả thu được bao gồm các giá trị mất mát để đánh giá hiệu suất, cụ thể là Loss RPN classifier, Loss RPN regression, Loss Detector classifier, và Loss Detector regression, với giá trị mất mát tổng thể đạt 0.1011.

Thời STT Thời gian (s) STT Thời gian(s) STT gian(s)

Thời gian trung bình để đánh giá mỗi ảnh có vùng bất thường nhỏ hơn 3mm là 1428 ms, trong khi mô hình gốc mất tới 200 giây để đánh giá các vùng lớn Điều này cho thấy rằng việc tối ưu thời gian đánh giá cho các vùng bất thường nhỏ là một thách thức so với các ảnh có vùng lớn.

3.2.2 Đánh giá giá trị mất mát tổng thể

Mất mát tổng thể = mất mát RPN + mất mát RCNN

Mất mát RPN = mất mát phân lớp RPN + mất mát RPN regression

Mất mát RCNN = mất mát RCNN + mất mát RPN regression

A Đánh giá mất mát trên phân lớp RPN

Mất mát phân lớp RPN = ∑ ( , ∗) (4)

STT Giá trị STT Giá trị STT Giá trị

Bảng 2: Đánh giá mất mát trên phân lớp RPN

Hình ảnh 37: Đánh giá độ mất mát trên phân lớp RPN

Giá trị mất mát của phân lớp RPN đã được xác định với giá trị tiệm cận từ lần lập thứ 25, cho thấy sự gần gũi với giá trị tại lần lập thứ 34.

B Đánh giá mất mất trên RPN Regression

Mất mát của RPN regression = ∑ ∗ ( , ∗) (5)

STT Giá trị STT Giá trị STT Giá trị

Bảng 3: đánh giá độ mất mát trên RPN Regression

Hình ảnh 38: Đánh giá độ mất mát của RPN Regression

Về đánh giá độ mất mát của RPN Regression cho thấy giá trị từ lần lập thứ

23 đến lần lập cuối không có sự thay đổi nhiều về mặt đánh giá RPN Regression

C Đánh giá mất mát trên phân lớp R-CNN

Mất mát phân lớp RCNN = =∑i Lcls(pi, p ∗ i) (10)

STT Giá trị STT Giá trị STT Giá trị

Bảng 4: Đánh giá độ mát mát phân lớp trên R-CNN

Đánh giá độ mất mát trên phân lớp R-CNN cho thấy rằng trong quá trình đánh giá, giá trị càng về sau càng gần với giá trị tiệm cận Tuy nhiên, sự thay đổi của các giá trị này vẫn khá nhỏ so với giá trị đánh giá tổng thể.

D Đánh giá mất mát Regression trên R-CNN

Mất mát trên RCNN regression = ∑ ∗ ( , ∗ ) (11)

STT Giá trị STT Giá trị STT Giá trị

12 0.0194 24 0.0145 Bảng 5: Đánh giá độ mất mát Regression trên R-CNN

Hình ảnh 40: Đánh giá độ mất mát Regression trên R-CNN

E Đánh giá mất mát tổng quát

STT Giá trị STT Giá trị STT Giá trị

Bảng 6: Đánh giá giá trị mất mát ĐÁNH GIÁ MẤT MÁT TỔNG THỂ

Hình ảnh 41: Đánh giá độ mất mát tổng thể

Giá trị đánh giá tổng quát của mô hình Faster-RCNN trên dữ liệu ảnh CT đã gần đạt giá trị tiệm cận sau 34 lần thử nghiệm Những thay đổi nhỏ trong các giá trị giữa lần lập thứ 25 và lần lập thứ 34 cho thấy mô hình đã đạt được các thông số cần thiết trong quá trình đánh giá.

3.2.3.1 Đánh giá tập dữ liệu LUNA16

Tập dữ liệu LUNA16 bao gồm 236 ảnh CT chứa khối u, trong đó có 169 ảnh với khối u nhỏ từ 3-5 mm Thời gian đánh giá toàn bộ dữ liệu kiểm thử là 6 phút 20 giây Mô hình đã xác định các khu vực bất thường trong hình ảnh, tuy nhiên, một số ảnh có nhiều hơn một vùng bất thường nhưng chỉ được gán đúng một nhãn Do đó, những ảnh có hai vùng bất thường sẽ được nhân đôi và mỗi ảnh sẽ được gán một vùng bất thường Trong số 236 ảnh kiểm tra, chỉ có 12 ảnh thực sự có đúng một vùng bất thường.

Kết quả kiểm tra cho thấy:

- 12 ảnh có 1 vùng bất thường: dự đoán đúng vùng bất thường

- 119 ảnh thực sự có nhiều hơn 1 vùng bất thường: dự đoán đúng nhiều hơn 1 vùng bất thường

- 105 ảnh dự đoán sai: sai vị trí vùng bất thường

Hình ảnh 42 cho thấy việc đánh giá có thể phát hiện nhiều hơn một vùng bất thường Cụ thể, ảnh 42.a và 42.b là hai phiên bản của cùng một bức ảnh nhưng được gán nhãn ở hai vị trí khác nhau Đồng thời, ảnh 42.c cung cấp đánh giá lại cho hai vùng bất thường đó có trong bức ảnh.

(a) (b) Ảnh CT cùng ảnh nhưng lại có 2 nhãn dán tại 2 vị trí khác nhau

(c) (a): Hình ảnh số 88 trong tập dữ liệu kiểm thử.

(b): Hình ảnh số 89 trong bộ tập dữ liệu kiểm thử.

(c): Hình ảnh đánh giá kết quả của hình ảnh.

Hình ảnh 42 cho thấy quá trình kiểm thử ảnh CT ngực trong tập dữ liệu kiểm thử số 89 Nhãn dữ liệu đánh giá chỉ có một, tuy nhiên, việc đánh giá dữ liệu lại gặp phải lỗi.

Bài viết đánh giá các vị trí nhận diện cụ thể của hai khối u trong hình ảnh, với mỗi hình ảnh chỉ có một nhãn duy nhất Tuy nhiên, sự hiện diện của nhiều vị trí khối u trong cùng một hình có thể ảnh hưởng đến quá trình đánh giá hình ảnh.

Ví dụ (Hình 43): đánh giá vùng bất thường có kích thước nhỏ (>= 3mm).

(c) (a): Hình ảnh gốc ảnh số 40 (b): Hình ảnh số 40 được dán nhãn (c): Hình ảnh đánh giá kết quả của hình ảnh.

Hình ảnh 43 cho thấy quá trình kiểm thử ảnh CT ngực trong tập dữ liệu kiểm thử số 40 Nhãn dữ liệu đánh giá có kích thước khu vực rất nhỏ (3-5 mm), dẫn đến việc không xác định chính xác vị trí của khối u trong ảnh Bên cạnh việc đánh giá trên ảnh, còn có hai vị trí mà nhãn không được ghi nhận.

3.2.3.2 Đánh giá dữ liệu thực tế

Dữ liệu nghiên cứu được thu thập từ Đại học Y Dược Cần Thơ, bao gồm 5 bộ ảnh CT ngực của bệnh nhân, mỗi bộ chứa từ 10 đến 15 ảnh được chọn ngẫu nhiên Mỗi bộ ảnh được đánh giá qua mô hình, và kết quả đánh giá sẽ được các bác sĩ chuyên gia tại ĐHYD Cần Thơ xem xét với độ chính xác từng ảnh.

Hình ảnh 44: Ảnh IM000190 của bệnh nhân BN05 được nhóm bác sĩ đánh giá với độ chính xác trung bình là 70%

Bệnh nhân Ảnh/ Độ chính xác 0% -100% Trung Bình Độ lệch

Bảng 7: Đánh giá độ chính xác của bác sĩ qua ảnh CT ngực BN05

Nghiên cứu mô hình được đánh giá bởi nhóm bác sĩ cho thấy hiệu quả cao trong việc phát hiện vùng bất thường trên ảnh CT ngực của bệnh nhân BN05, đạt độ chính xác trung bình 52.5% với độ lệch 3% Tuy nhiên, đánh giá hình ảnh cũng chỉ ra rằng mô hình đã sai khi nhận diện một vật lạ trong ảnh là vùng bất thường.

Hình ảnh 45: Ảnh chụp CT bệnh nhân BN07 qua mô hình

Bệnh nhân Ảnh/ Độ chính xác 0% -100% Trung Bình Độ lệch

Bảng 8: Đánh giá độ chính xác của bác sĩ qua ảnh CT ngực BN07

Đánh giá của nhóm bác sĩ cho thấy mô hình đã nhận diện chính xác các ảnh CT có vùng bất thường với tỷ lệ đạt 66,66% Tuy nhiên, mô hình cũng gặp khó khăn trong việc đánh giá chính xác những vị trí có vùng bất thường do chúng có đặc trưng tương tự với các vùng bình thường.

Hình ảnh 46: Ảnh chụp CT bệnh nhân BN06 qua mô hình

Bệnh nhân Ảnh/ Độ chính xác 0% -100% Trung Bình Độ lệch

Bảng 9: Đánh giá độ chính xác của bác sĩ qua ảnh CT ngực BN06

Việc đánh giá ảnh CT ngực của bệnh nhân BN06 cho thấy mô hình đã phát hiện những vùng bất thường, tuy nhiên, đánh giá không hoàn toàn chính xác do sự chồng lấn với các vùng khác Mô hình đã xác định sai một số vùng bất thường, nhưng trong trường hợp khác, việc sử dụng hình ảnh lá cắt từ ảnh 3D đã giúp xác định chính xác vị trí của vùng bất thường.

Bệnh nhân Ảnh/ Độ chính xác 0% -100% Trung Bình Độ lệch

Bảng 10: Đánh giá độ chính xác của bác sĩ qua ảnh CT ngực BN11

Bệnh nhân Ảnh/ Độ chính xác 0% -100% Trung Bình Độ lệch

Bảng 11: Đánh giá độ chính xác của bác sĩ qua ảnh CT ngực BN24

Quá trình đánh giá của nhóm bác sĩ cho thấy độ chính xác trung bình của 5 bộ ảnh dữ liệu đạt trên 70% đối với các vùng ảnh có bất thường Tuy nhiên, một số đánh giá sai xảy ra do sự hiện diện của vật lạ, đặc trưng vùng khác tương tự với vùng bất thường, và các vùng bất thường nằm gần vùng không bất thường, tạo thành vùng lớn Kết quả này chỉ ra rằng mô hình có khả năng đánh giá các vùng bệnh trong ảnh CT ngực.

Kết quả đạt được

Việc xử lý ảnh số hóa cho phép chúng ta khai thác dữ liệu từ ảnh CT ngực và các hình ảnh y khoa khác, phục vụ hiệu quả cho các nghiên cứu liên quan đến hình ảnh y khoa.

Mô hình Faster-RCNN được xây dựng để phát hiện vùng bất thường trên ảnh CT ngực, với các thử nghiệm thực hiện trên hai tập dữ liệu: LUNA và dữ liệu thu thập tại Bệnh viện Đại học Y Dược Cần Thơ.

Mô hình Faster-RCNN gốc thường được sử dụng để nhận diện các đối tượng lớn như xe và con người Trong nghiên cứu này, Faster-RCNN đã được áp dụng thành công để phát hiện các vùng bất thường nhỏ (>= 3mm) Thời gian đánh giá cho thấy mô hình đạt 1428ms cho mỗi ảnh trên dữ liệu LUNA16, gấp 5 lần so với mô hình gốc khi đánh giá trên tập dữ liệu lớn Tuy nhiên, tập dữ liệu LUNA trong nghiên cứu chỉ ra các vùng bất thường mà chưa xác định được bệnh cụ thể tương ứng.

Hướng phát triển

Xây dựng mô hình nhận biết và phân loại được bệnh cụ thể trong hình ảnh

CT ngực và ảnh y khoa đóng vai trò quan trọng trong việc chẩn đoán và điều trị bệnh Việc áp dụng bộ dữ liệu từ các bệnh nhân tại Việt Nam sẽ nâng cao độ chính xác trong đánh giá y tế, đáp ứng nhu cầu và đặc điểm của người Việt.

Nhiều vùng bất thường nhỏ hơn 3mm xuất hiện ở các bộ phận cơ thể, từ đó giúp xây dựng mô hình đánh giá hiệu quả Mô hình này cải thiện thời gian đánh giá cho những vùng bất thường, góp phần nâng cao độ chính xác trong chẩn đoán.

Mô hình Faster-RCNN trong nghiên cứu này hiện chỉ được áp dụng cho ảnh CT ngực Trong tương lai, chúng tôi sẽ mở rộng phát triển mô hình để đánh giá trên nhiều loại ảnh y khoa khác, bao gồm MRI và các vùng khác như não, bụng, và các chi.

Ngày đăng: 19/10/2021, 20:45

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] W. Zhu, C. Liu, W. Fan and X. Xie, "Deeplung: Deep 3d dual path nets for automated pulmonary nodule detection and classification," in 2018 IEEE Winter Conference on Applications of Computer Vision (WACV), 2018 Sách, tạp chí
Tiêu đề: Deeplung: Deep 3d dual path nets for automatedpulmonary nodule detection and classification
[3] S. Ren, K. He, R. Girshick and J. Sun, "Faster r-cnn: Towards real-time object detection with region proposal networks," in Advances in neural information processing systems, 2015 Sách, tạp chí
Tiêu đề: Faster r-cnn: Towards real-time objectdetection with region proposal networks
[4] R. Girshick, J. Donahue, T. Darrell and J. Malik, "Rich feature hierarchies for accurate object detection and semantic segmentation," in Proceedings of the IEEE conference on computer vision and pattern recognition, 2014 Sách, tạp chí
Tiêu đề: Rich feature hierarchies for accurateobject detection and semantic segmentation
[5] M. F. McNitt-Gray, S. G. Armato III, C. R. Meyer, A. P. Reeves, G. McLennan, R. C.Pais, J. Freymann, M. S. Brown, R. M. Engelmann, P. H. Bland and others, "The Lung Image Database Consortium (LIDC) data collection process for nodule detection and annotation," Academic radiology, vol. 14, p. 1464–1474, 2007 Sách, tạp chí
Tiêu đề: The LungImage Database Consortium (LIDC) data collection process for nodule detection andannotation
[6] A. A. A. Setio, A. Traverso, T. De Bel, M. S. N. Berens, C. van den Bogaard, P. Cerello, H. Chen, Q. Dou, M. E. Fantacci, B. Geurts and others, "Validation, comparison, and combination of algorithms for automatic detection of pulmonary nodules in computed tomography images: the LUNA16 challenge," Medical image analysis, vol. 42, p. 1–13, 2017 Sách, tạp chí
Tiêu đề: Validation, comparison, andcombination of algorithms for automatic detection of pulmonary nodules in computedtomography images: the LUNA16 challenge

HÌNH ẢNH LIÊN QUAN

Mạng nơ-ron nhân tạo (Artifical Neural Network – ANN) 6 là một mô hình chứa nhiều đơn vị xử lý, giả lập quá trình học tập tính toán của bộ não con người - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
ng nơ-ron nhân tạo (Artifical Neural Network – ANN) 6 là một mô hình chứa nhiều đơn vị xử lý, giả lập quá trình học tập tính toán của bộ não con người (Trang 16)
Hình ảnh 5: Mô hình mạng nơ-ron tính chập 12 - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 5: Mô hình mạng nơ-ron tính chập 12 (Trang 18)
Hình ảnh 6: Phép tính chập trên ảnh CT ngực 14 Hình a: hình ảnh đầu vào của ảnh CT ngực. - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 6: Phép tính chập trên ảnh CT ngực 14 Hình a: hình ảnh đầu vào của ảnh CT ngực (Trang 19)
Hình ảnh 7: Quá trình chập mạng 15 - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 7: Quá trình chập mạng 15 (Trang 20)
Hình ảnh 8: Thực hiện tride bằng 116 - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 8: Thực hiện tride bằng 116 (Trang 20)
Hình ảnh 12: Fully connected layer 20 - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 12: Fully connected layer 20 (Trang 22)
- VGGNet 23: (Hình ảnh 14) mạng CNNs tốt nhất năm 2015 được phát triển bởi Karen Simonyan và Andrew Zisserman - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
et 23: (Hình ảnh 14) mạng CNNs tốt nhất năm 2015 được phát triển bởi Karen Simonyan và Andrew Zisserman (Trang 23)
Hình ảnh 16: Hình về ảnh thật và dự đoán của bounding box (khung màu xanh là vị trí thật, màu tím là vị trí dự đoán) - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 16: Hình về ảnh thật và dự đoán của bounding box (khung màu xanh là vị trí thật, màu tím là vị trí dự đoán) (Trang 25)
Hình ảnh 18: Kiến trúc mô hình fast RCNN[2] - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 18: Kiến trúc mô hình fast RCNN[2] (Trang 27)
Hình ảnh 19: Kiến trúc mô hình faster RCNN[3] - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 19: Kiến trúc mô hình faster RCNN[3] (Trang 28)
Hình ảnh 20: Biểu diễn ảnh thông qua simpleITK 32 - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 20: Biểu diễn ảnh thông qua simpleITK 32 (Trang 31)
Hình ảnh 21: Kiến trúc của FasterRCNN trên ảnh CT ngực - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 21: Kiến trúc của FasterRCNN trên ảnh CT ngực (Trang 32)
Hình ảnh 22: xử lý dữ liệu - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 22: xử lý dữ liệu (Trang 33)
Hình ảnh 23: Chuẩn Hounsfield trên ảnh chụp CT 35 - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 23: Chuẩn Hounsfield trên ảnh chụp CT 35 (Trang 34)
Hình ảnh 24: Xử lý dữ liệu và xác định vị trí vùng bệnh - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 24: Xử lý dữ liệu và xác định vị trí vùng bệnh (Trang 35)
Hình ảnh 25: Trích xuất dữ liệu sử dụng VGG16 37 - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 25: Trích xuất dữ liệu sử dụng VGG16 37 (Trang 36)
Hình ảnh 27: Một vị trí Anchor tham chiếu đến ảnh gốc - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 27: Một vị trí Anchor tham chiếu đến ảnh gốc (Trang 37)
Hình ảnh 26: Kích thước của anchor - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 26: Kích thước của anchor (Trang 37)
Hình ảnh 32: NMS cho trên FasterRCNN 24 - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 32: NMS cho trên FasterRCNN 24 (Trang 40)
Hình ảnh 33: Xử lý đặc trưng thông qua Region of Interest (RoI) - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 33: Xử lý đặc trưng thông qua Region of Interest (RoI) (Trang 40)
Hình ảnh 34: Xử lý nhận nhận diện đối vùng bất thường - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 34: Xử lý nhận nhận diện đối vùng bất thường (Trang 41)
Hình ảnh 36: Nốt (khối u) có kích thước nhỏ 42 - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 36: Nốt (khối u) có kích thước nhỏ 42 (Trang 43)
Hình ảnh 37: Đánh giá độ mất mát trên phân lớp RPN - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 37: Đánh giá độ mất mát trên phân lớp RPN (Trang 45)
Hình ảnh 38: Đánh giá độ mất mát của RPN Regression - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 38: Đánh giá độ mất mát của RPN Regression (Trang 46)
Hình ảnh 39: Đánh giá độ mất mát phân lớp trên R-CNN - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 39: Đánh giá độ mất mát phân lớp trên R-CNN (Trang 47)
Hình ảnh 40: Đánh giá độ mất mát Regression trên R-CNN - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
nh ảnh 40: Đánh giá độ mất mát Regression trên R-CNN (Trang 48)
Ví dụ (Hình 43): đánh giá vùng bất thường có kích thước nhỏ (>= 3mm). - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
d ụ (Hình 43): đánh giá vùng bất thường có kích thước nhỏ (>= 3mm) (Trang 52)
Bảng 7: Đánh giá độ chính xác của bác sĩ qua ảnh CT ngực BN05 - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
Bảng 7 Đánh giá độ chính xác của bác sĩ qua ảnh CT ngực BN05 (Trang 53)
Bảng 8: Đánh giá độ chính xác của bác sĩ qua ảnh CT ngực BN07 - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
Bảng 8 Đánh giá độ chính xác của bác sĩ qua ảnh CT ngực BN07 (Trang 54)
Bảng 9: Đánh giá độ chính xác của bác sĩ qua ảnh CT ngực BN06 - Ứng dụng mô hình fasterRCNN phát hiện vùng bất thường trên ảnh CT ngực
Bảng 9 Đánh giá độ chính xác của bác sĩ qua ảnh CT ngực BN06 (Trang 55)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w