1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Bài tập lớn môn thị giác máy tính Đề tài tạo Ảnh cơ bản bằng python và opencv

21 12 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Định dạng
Số trang 21
Dung lượng 0,99 MB

Nội dung

LỜI MỞ ĐẦUTrong thời đại công nghệ 4.0 hiện nay, trí tuệ nhân tạo và thị giác máy tính đangngày càng trở thành những lĩnh vực quan trọng trong việc phát triển các ứng dụng và hệ thống th

Trang 1

TRƯỜNG ĐẠI HỌC PHƯƠNG ĐÔNG

KHOA CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG

BÀI TẬP LỚN MÔN: THỊ GIÁC MÁY TÍNH

ĐỀ TÀI : TẠO ẢNH CƠ BẢN BẰNG PYTHON VÀ OPENCV

Giảng viên hướng dẫn: Th.S Lê Hiến Mai

Sinh viên thực hiện : Kiều Thị Vân – 521100186

Quách Việt Anh - 521100128 Lớp: 521100C

Hà Nội - 2024

Trang 2

MỤC LỤC

LỜI CẢM ƠN 4

LỜI MỞ ĐẦU 5

CHƯƠNG 1 : TỔNG QUAN VỀ THỊ GIÁC MÁY TÍNH 6

1 Các khái niệm của Thị giác máy tính 6

1.1.1 Lịch sử phát triển của Thị giác máy tính 6

1.1.2 Thị giác máy tính là gì? 7

1.1.3 Cách thức hoạt động của Thị giác máy tính 10

CHƯƠNG 2 : TỔNG QUAN VỀ CẢM BIẾN HÌNH ẢNH 12

2.1 Cảm biến hình ảnh 12

2.1.1 Cảm biến hình ảnh là gì ? 12

2.1.2 Ưu điểm và ứng dụng của cảm biến hình ảnh 13

2.1.3 Cấu tạo , nguyên lý hoạt động và phân loại cảm biến hình ảnh 14

2.1.4 Phân loại cảm biến hình ảnh 16

2.2 Cảm biến CCD và CMOS 16

2.2.1 Cảm biến CCD 16

2.2.1.1 Giới thiệu về CCD 16

2.2.1.2 Cấu trúc CCD 19

2.2.1.3 Phạm vi quang phổ 23

2.2.1.4 CCD trong không gian 23

2.2.2 Cảm biến CMOS 24

2.2.2.1 Tổng quan CMOS 24

2.2.2.2 CMOS trong không gian và ứng dụng 28

Trang 3

CHƯƠNG 3 : XU HƯỚNG PHÁT TRIỂN TRONG CÔNG NGHỆ CẢM

BIẾN HÌNH ẢNH 32

3.1 Xu hướng phát triển của công nghệ cảm biến hình ảnh 32

3.1.1 Cảm biến hình ảnh đa phổ (Multispectral and Hyperspectral Imaging)32 3.1.2 Tích hợp Trí tuệ nhân tạo (AI) và Học máy (Machine Learning) 33

3.1.3 Cảm biến hình ảnh 3D và Thực tế ảo (VR), Thực tế tăng cường (AR) 34 3.1.4 Cảm biến hình ảnh với độ phân giải cực cao 36

3.2 Các yếu tố tác động đến sự phát triển công nghệ cảm biến hình ảnh 37

3.2.1 Tiến bộ trong công nghệ bán dẫn 37

3.2.2 Nhu cầu và ứng dụng thực tế 38

3.2.3 Công nghệ xử lý hình ảnh và AI 39

KẾT LUẬN 40

TÀI LIỆU THAM KHẢO 41

Trang 5

LỜI MỞ ĐẦU

Trong thời đại công nghệ 4.0 hiện nay, trí tuệ nhân tạo và thị giác máy tính đangngày càng trở thành những lĩnh vực quan trọng trong việc phát triển các ứng dụng

và hệ thống thông minh Một trong những công cụ mạnh mẽ và phổ biến nhất được

sử dụng trong thị giác máy tính là OpenCV (Open Source Computer VisionLibrary), một thư viện mã nguồn mở hỗ trợ xử lý ảnh và video OpenCV cung cấpcác công cụ giúp máy tính có thể "nhìn thấy" và phân tích hình ảnh từ các cảm biếnthị giác, giúp giải quyết nhiều vấn đề trong các ứng dụng nhận diện đối tượng,phân loại hình ảnh, theo dõi chuyển động và nhiều ứng dụng khác

Tạo ảnh cơ bản và xử lý ảnh đơn giản là những bước đầu tiên trong việc làm quenvới OpenCV và thị giác máy tính Việc hiểu và thao tác với các ảnh cơ bản là nềntảng quan trọng cho việc phát triển các kỹ thuật phức tạp hơn trong xử lý và phântích hình ảnh Những tác vụ như tạo ảnh đen trắng, tạo các hình học đơn giản, thaotác với các kênh màu, và các phép toán xử lý ảnh cơ bản là bước khởi đầu để làmviệc với các bài toán trong thị giác máy tính

Đề tài nghiên cứu "Tạo ảnh cơ bản bằng Python và OpenCV" sẽ cung cấp nhữngkiến thức cơ bản và những kỹ thuật cần thiết để xây dựng và xử lý các loại ảnh cơbản Cụ thể, bài nghiên cứu sẽ đi sâu vào các vấn đề như:

Cài đặt và sử dụng thư viện OpenCV: Cài đặt môi trường phát triển, sử dụngOpenCV để tạo và xử lý ảnh

Các thao tác cơ bản với ảnh: Tạo ảnh đơn giản, vẽ các hình học cơ bản như đườngthẳng, hình chữ nhật, vòng tròn, và thêm văn bản lên ảnh

Các kỹ thuật tiền xử lý ảnh: Làm mờ ảnh, chuyển ảnh sang ảnh xám, phát hiện biên

và các thao tác cơ bản khác

Việc nghiên cứu và làm chủ những kỹ thuật này không chỉ giúp người học nắm bắtđược các khái niệm cơ bản mà còn tạo tiền đề vững chắc cho việc phát triển cácứng dụng thị giác máy tính phức tạp hơn, phục vụ cho các lĩnh vực như nhận diệnkhuôn mặt, phân loại ảnh, xe tự lái, và nhiều ứng dụng AI khác

Trang 6

Với mục tiêu cung cấp cái nhìn tổng quan về việc tạo ảnh và xử lý ảnh cơ bản, bàinghiên cứu này sẽ là bước đầu quan trọng giúp người học tiếp cận và phát triển cácứng dụng trong lĩnh vực thị giác máy tính sử dụng Python và OpenCV.

CHƯƠNG 1 : TỔNG QUAN VỀ THỊ GIÁC MÁY TÍNH

1 Định nghĩa thị giác máy tính

Thị giác máy tính (Computer Vision) có thể được định nghĩa là một lĩnh vựcnghiên cứu trong AI, nơi máy tính sử dụng các thuật toán để nhận diện và hiểuhình ảnh hoặc video Nói cách khác, thị giác máy tính là sự kết hợp của các kỹthuật xử lý ảnh và học máy nhằm giúp máy tính có thể mô phỏng khả năng nhậnthức thị giác của con người

Trang 7

Mục tiêu chính của thị giác máy tính là giúp máy tính không chỉ nhận diện các đốitượng trong ảnh, mà còn có thể phân tích và ra quyết định dựa trên các hình ảnh

đó Thị giác máy tính có thể bao gồm việc nhận diện, phân loại, phân đoạn, theo

dõi chuyển động và các tác vụ phức tạp khác

2 Lịch sử của thị giác máy tính

Công nghệ thị giác máy tính được khai mở lần đầu tiên vào năm 1966 khi hai nhàkhoa học máy tính tiên phong trong lĩnh vực trí tuệ nhân tạo là Seymour Papert vàMarvin Minsky khởi xướng dự án mang tên “Thị giác Mùa Hè” Hoạt động nàykéo dài trong khoảng hai tháng và có đến 10 người tham gia nhằm mục tiêu pháttriển một hệ thống máy tính có khả năng nhận biết và phân biệt các đối tượng trongmột bức ảnh

Nhiệm vụ này đòi hỏi hệ thống phải có khả năng xác định từng pixel thuộc về đốitượng nào, điều này được xem là một thách thức đáng kể khi so sánh với khả năngthị giác tự nhiên của con người khi được nâng cao bởi hàng tỷ năm tiến hóa vàkiến thức sâu rộng về thế giới Trong khi con người có thể dễ dàng xử lý và hiểucác hình ảnh, thì đối với máy tính, thế giới chỉ là một tập hợp các số liệu, điều này

đã tạo ra một bài toán phức tạp

Bên cạnh đó, trong thời kỳ này, trí tuệ nhân tạo chỉ tập trung vào những quy tắc AI,

để nhận diện một đối tượng trong hình ảnh các lập trình viên phải xây dựng một bộquy tắc cụ thể Trong khi đó, thế giới vạn vật lại đa dạng với nhiều góc độ khácnhau như ánh sáng, bối cảnh, hình dáng,…Do đó, việc chỉ xây dựng quy tắc khôngthể áp dụng bởi lẽ mỗi trường hợp lại yêu cầu một tập quy tắc riêng biệt

Điến cuối cùng, dự án thị giác mùa hè không đạt được những kết quả như mongđời, và chỉ để lại một vài tiến bộ hạn chế Tuy nhiên, không dừng lại ở đó, vào nămTuy nhiên, vào năm 1979, Kunihiko Fukushima, một nhà khoa học người NhậtBản, đã giới thiệu neocognitron một kiến trúc thị giác máy tính lấy cảm hứng từnghiên cứu về cấu trúc thần kinh của thị giác con người Mặc dù neocognitron

Trang 8

chưa thể thực hiện các nhiệm vụ thị giác phức tạp, tuy nhiên, chính điều này đã đặtnền móng cho những bước tiến về sau trong lịch sử của thị giác máy tính, mở rahướng đi mới cho ngành công nghiệp này.

3 Thị giác máy tính hoạt động như thế nào?

Đây được xem là một ứng dụng đột phá của trí tuệ nhân tạo (AI), công nghệ thịgiác máy tính có khả năng mô phỏng cách thức mà bộ não con người phân biệt vàphân loại các đối tượng trong thế giới quan sát Sau khi đã được thiết lập và làmquen với lượng lớn dữ liệu hình ảnh, máy tính đã học được cách nhận diện và hiểucác mẫu hoặc đối tượng cụ thể Điều này được thực hiện nhờ vào các thuật toánhọc máy (ML), cho phép máy tính phát hiện và học hỏi từ những kiểu mẫu thườngthấy trong dữ liệu hình ảnh và video, sau đó áp dụng những hiểu biết này để nhậndiện chính xác các hình ảnh mới chưa từng thấy

Ví dụ như: Thông qua việc phân tích hàng hình ảnh về ô tô, máy tính dần phát triểnmột mô hình nhận dạng cho phép nó nhận diện các phương tiện trong hình ảnh mộtcách chính xác

Trang 9

Hiện nay lĩnh vực thị giác máy tính có những công nghệ chủ yếu được ứng dụngchủ yếu là: Học sâu, mạng nơ ron tích hợp.

3.1 Học sâu

Trong đó, học sâu là một nhánh của học máy, công nghệ này sử dụng mạng nơ-ron

để mô phỏng hoạt động của não bộ Mạng nơ-ron học sâu được cấu thành từ hàng loạt các tầng của nơ-ron nhân tạo giữ vai trò thực hiện phức tạp các phép toán toán học để tự động phân tích và học hỏi từ những đặc điểm khác nhau của dữ liệu hình ảnh Qua quá trình này, máy tính có thể dần dần xây dựng một lớp hiểu biết ngày càng sâu sắc về nội dung hình ảnh, cho phép chúng nhận diện và phân loại các đối tượng một cách chính xác và hiệu quả

3.2 Mạng nơ-ron hồi quy

Mạng Nơ-ron Hồi Quy (RNN) là một kiến trúc mạng nơ-ron đặc biệt, được thiết kế

để xử lý và phân tích dữ liệu chuỗi, cho phép nó hiểu và kết nối thông tin qua thờigian Khác biệt chính giữa RNN và các kiến trúc như CNN là khả năng của RNNtrong việc xử lý những dữ liệu dạng chuỗi như video, trong đó mỗi khung hình là

Trang 10

một phần của một chuỗi liên tục, và có mối liên kết động với những khung hìnhtrước và sau nó Điều này giúp RNN trở nên lý tưởng cho việc phân tích video, nơiviệc nhận diện và hiểu được sự phát triển của các sự kiện qua thời gian là cần thiết,cung cấp khả năng phân tích sâu sắc về mối liên kết và sự tiến triển giữa các hìnhảnh trong một chuỗi.

3.3 Mạng nơ-ron tích chập

Mạng Nơ-ron Tích Chập (CNN) là một kiến trúc trí tuệ nhân tạo mạnh mẽ được thiết kế để xử lý và phân loại dữ liệu hình ảnh với độ chính xác cao Tại trung tâm của nó, CNN làm việc bằng cách gán nhãn cho từng pixel của hình ảnh với một giátrị cụ thể, quá trình này cũng cho phép nó thực hiện các phép tính chuyên sâu, được gọi là phép toán chập, để phân tích và hiểu bản chất của hình ảnh

Giống như một họa sĩ phác thảo bức tranh từ những đường nét đơn giản nhất đến các chi tiết phức tạp, CNN bắt đầu từ việc nhận diện các đặc điểm cơ bản như đường nét và hình dạng, trước khi tiến tới nhận diện các yếu tố tinh tế hơn như màu sắc, kết cấu và mô hình Qua mỗi vòng lặp, mạng nơ-ron này tinh chỉnh và cảithiện dự đoán của mình, từ đó nâng cao độ chính xác và khả năng nhận biết hình ảnh

Trang 11

4 Tầm quan trọng của thị giác máy tính

Công nghệ thị giác máy tính không chỉ được xem là một bước tiến lớn trong côngnghệ xử lý hình ảnh, mà nó còn trở nên quan trọng nhờ khả năng tự động hóa vàtinh gọn quy trình làm việc, giảm thiểu bớt những công đoạn thủ công rườm rà và

dễ xảy ra lỗi Nếu như trước đây, việc áp dụng những công nghệ như nhận diệnkhuôn mặt luôn đòi hỏi công sức lớn từ phía nhà phát triển, từ việc đánh dấu thủcông hàng ngàn hình ảnh với những đặc điểm cụ thể đến việc xử lý dữ liệu hìnhảnh không có cấu trúc và phức tạp, làm cho quy trình này không chỉ mất thời gian

mà còn tốn kém và khó khăn trong việc tiếp cận cho hầu hết các tổ chức

Tuy nhiên, giờ đây với sự phát triển vượt bậc trong công nghệ và sự gia tăng mạnh

mẽ về sức mạnh điện toán, thị giác máy tính giờ đây không chỉ cải thiện về mặt quy mô và độ chính xác trong xử lý dữ liệu hình ảnh mà còn trở nên dễ dàng tiếp cận hơn bao giờ hết Nhờ vào sức mạnh của điện toán đám mây, công nghệ này giờđây đã trở nên khả thi và tiện lợi cho mọi tổ chức, từ việc xác minh danh tính, kiểmduyệt nội dung, đến phân tích video phát trực tuyến và phát hiện lỗi, mở ra một thếgiới mới của khả năng tự động hóa và hiệu quả

Trang 12

5 Các ứng dụng của thị giác máy tính

5.1 Đo lường

Thị giác máy tính đã cách mạng hóa lĩnh vực đo lường, biến những gì từng phụthuộc vào các thiết bị đo lường cơ học hoặc laser phức tạp trở thành quy trình đơngiản và chính xác hơn rất nhiều Trong phạm vi được kiểm soát, với ánh sáng phùhợp và cung cấp đủ dữ liệu tham khảo, hệ thống thị giác máy tính có thể học vàthực hiện các phép đo chính xác đến mức đáng kinh ngạc

Điều này đã mở ra khả năng đo lường kích thước các bộ phận, kiểm tra độ thẳng,

độ song song, và nhiều yếu tố khác mà không cần đến sự can thiệp trực tiếp củacon người Công nghệ này không chỉ tăng cường hiệu quả và độ chính xác trongviệc đo lường mà còn giảm thiểu rủi ro sai sót, mang lại lợi ích to lớn cho nhiềungành công nghiệp từ sản xuất, xây dựng cho đến nghiên cứu khoa học

Công nghệ này mang đến hiệu quả và độ chính xác cao trong việc đo lường

5.2 Đọc mã và ký tự (OCR)

Trang 13

tìm kiếm dễ dàng hơn Tiêu biểu nhất là hiện nay, camera điện thoại thông minhcủa chúng ta đã có thể nhận diện và chuyển đổi văn bản trực tiếp trong thời gianthực

Điều này đặc biệt hữu ích trong các ứng dụng dịch thuật: chỉ cần hướng cameracủa điện thoại vào một đoạn văn bản, và công nghệ OCR sẽ tự động nhận dạng,nhập văn bản vào hệ thống, và sau đó dịch nó sang ngôn ngữ mong muốn Sử dụngthuật toán OCR độ chính xác cao, thị giác máy tính không chỉ cung cấp khả năngnhận dạng văn bản một cách nhanh chóng và chính xác mà còn mở ra những khảnăng mới trong việc tương tác và hiểu biết thông tin trên khắp thế giới

5.3 Phát hiện lỗi

Tương tự như đọc mã, phát hiện lỗi cũng là một trong những ứng dụng làm nổi bậclên tầm quan trọng của thị giác máy tính Nếu như trước đây, việc kiểm tra và nhậndiện các lỗi sản phẩm thường phụ thuộc vào sự đánh giá của con người, điều nàykhông chỉ tốn kém về mặt nhân lực mà còn gặp khó khăn trong việc duy trì độchính xác, đặc biệt là với những khối lượng công việc lớn

Giờ đây, công nghệ này đã mang đến giải pháp tự động hóa, có khả năng phát hiệncác khiếm khuyết siêu nhỏ như vết nứt trên bề mặt kim loại, sai sót trong sơn, hay

Trang 14

lỗi in ấn, với độ chính xác vượt trội, nhận diện được những lỗi nhỏ tới 0,05mm.Sức mạnh của thị giác máy tính trong ứng dụng này đến từ các thuật toán tiên tiến,được tối ưu hóa và huấn luyện đặc biệt để phân biệt giữa hình ảnh có lỗi và không

có lỗi, biến nó thành “bộ não thông minh” chuyên biệt cho mỗi tình huống cụ thể,đảm bảo chất lượng và hiệu quả sản phẩm ở mức cao nhất

5.4 Vận hành tự động

Hơn thế nữa, ngày nay thị giác máy tính đã trở thành một yếu tố không thể thiếutrong quá trình phát triển và vận hành những dự án xe tự lái thành công Công nghệnày, kết hợp với trí tuệ nhân tạo (AI), đã làm cho các phương tiện không chỉ có khảnăng tự học từ dữ liệu và thông tin thu thập được về hành vi lái xe của con người

mà còn tự động thực hiện nhiều nhiệm vụ phức tạp Những chiếc xe này có khảnăng tự điều chỉnh tốc độ, tìm kiếm làn đường, phát hiện các tình huống nguy hiểm

và hiểu các tín hiệu giao thông, cung cấp một tầm nhìn mới cho tương lai của giaothông vận tải Sự tiến bộ nhanh chóng trong công nghệ này hứa hẹn sẽ mở ranhững cơ hội mới, nâng cao độ an toàn và hiệu quả của việc vận hành phương tiệntrong thập kỷ tới

5.5 Nhận dạng mẫu và xử lý hình ảnh

Trong lĩnh vực y tế, khả năng nhận dạng mẫu và xử lý hình ảnh của thị giác máytính đã trở thành công cụ không thể thiếu, giúp nâng cao chất lượng chẩn đoán vàcan thiệp y khoa Các hình ảnh y khoa, từ X-quang đến chụp cộng hưởng từ (MRI),đóng một vai trò quan trọng trong việc hỗ trợ các bác sĩ và chuyên gia y tế hiểu rõhơn về tình trạng sức khỏe của bệnh nhân, từ đó đề xuất các phương án điều trịhiệu quả và cá nhân hóa

Trang 15

Bên cạnh đó, công nghệ này còn làm cơ sở cho các nền tảng hỗ trợ phẫu thuật,chẳng hạn như tạo hình ảnh 3D chính xác của hộp sọ, giúp các bác sĩ phẫu thuậtnão xác định vị trí và kích thước của khối u một cách chính xác, hoặc phân tích cácnốt trong phổi để chẩn đoán sớm bệnh ung thư phổi Thông qua quá trình sử dụngthị giác máy tính, các nhà khoa học và bác sĩ có thể phát hiện các bệnh lý một cáchsớm nhất, đưa ra quyết định điều trị kịp thời, giảm thiểu rủi ro cho bệnh nhân vàtăng cơ hội hồi phục và chữa lành.

5.6 Theo dõi đối tượng

Theo dõi đối tượng là quá trình ứng dụng công nghệ học sâu để nhận dạng và duytrì liên tục vị trí của các đối tượng cụ thể trong loạt hình ảnh hoặc video Quy trìnhnày bắt đầu với việc phát hiện đối tượng, đối tượng sẽ được đánh dấu bằng mộtkhung viền và được gán một mã nhận dạng duy nhất (ID) Sau đó, vị trí của đốitượng được theo dõi xuyên suốt các khung hình liên tiếp, cho phép theo dõi chuyểnđộng và hành vi của đối tượng qua thời gian

Công nghệ học sâu được ứng dụng nổi bậc trong việc xây dựng nền tảng theo dõi

đối tượng

Ngày đăng: 29/11/2024, 20:54

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w