Thông báo

Tất cả đồ án đều đã qua kiểm duyệt kỹ của chính Thầy/ Cô chuyên ngành kỹ thuật để xứng đáng là một trong những website đồ án thuộc khối ngành kỹ thuật uy tín & chất lượng.

Đảm bảo hoàn tiền 100% và huỷ đồ án khỏi hệ thống với những đồ án kém chất lượng.

ĐỒ ÁN TỐT NGHIỆP ĐỀ TÀI ỨNG DỤNG THỊ GIÁC ROBOT TRONG PHÂN LOẠI SẢN PHẨM TRÁI CÂY

mã tài liệu 300600300250
nguồn huongdandoan.com
đánh giá 5.0
mô tả 1450 MB Bao gồm tất cả file 3d solidwork, thuyết minh file word, báo cáo bằng power point ,đầy đủ bản vẻ 3d, thiết kế CAD trên 2D ( bản vẽ tổng quan, sơ đồ điện, sơ đồ giải thuật...) và nhiều tài liệu khác liên quan đến ĐỒ ÁN TỐT NGHIỆP ĐỀ TÀI ỨNG DỤNG THỊ GIÁC ROBOT TRONG PHÂN LOẠI SẢN PHẨM TRÁI CÂY
giá 3,995,000 VNĐ
download đồ án

NỘI DUNG ĐỒ ÁN

ĐỒ ÁN TỐT NGHIỆP ĐỀ TÀI ỨNG DỤNG THỊ GIÁC ROBOT TRONG PHÂN LOẠI SẢN PHẨM TRÁI CÂY

MỤC LỤC

LỜI CẢM ƠN.. 5

DANH MỤC HÌNH ẢNH.. 8

LỜI NÓI ĐẦU.. 10

CHƯƠNG I: TỔNG QUAN LÝ THUYẾT. 1

1.1     Các khái niệm cơ bản. 1

1.2     Ứng dụng tự động hóa trong sản xuất công nghiệp. 2

1.3     Lịch sử ban đầu của hệ thống tự động. 3

1.4     Sự phát triển của hệ thống tự động thông minh trong thế kỷ 20. 4

1.5     Hệ thống tự động thông minh trong sản xuất4

1.5.1     Dây chuyền phân loại sản phẩm.. 4

1.5.2     Một số máy trong hệ dây chuyền phân loại sản phẩm.. 5

1.6     Tự động hóa thế giới và Việt Nam.. 6

CHƯƠNG II: THIẾT KẾ CƠ KHÍ8

2.1     Phương án thiết kế hệ thống. 8

2.2     Phần mềm sử dụng. 8

2.2.1     Phần mềm Auto CAD.. 8

2.2.2     Phần mềm thiết kế Solidworks. 10

2.2.3     Phần mềm pycham.. 11

2.2.4     Ngôn ngữ lập trình python. 13

2.2.5     Phần mềm Arduino IDE.. 15

2.3     Tổng quan về xử lý ảnh. 21

2.3.1.    Phương pháp thu nhận ảnh. 23

2.3.2.    Giới thiệu về thư viện OpenCV.. 23

2.4     Lựa chọn linh kiện. 35

2.4.1     Cảm biến. 35

2.4.2     Băng tải38

2.4.3     Nguồn tổ ong. 44

2.4.4     Bộ chuyển đổi nguồn 5V 5V.. 45

2.4.5     Động cơ servo. 46

2.4.6     Relay. 49

2.4.7     Động cơ bước. 50

2.4.8     Mạch điều khiển động cơ bước TB6600. 51

2.4.9     Webcam Logitech HD C270. 53

2.5     Tìm hiểu về board arduino mega 2560. 53

2.5.1     Thành phần Arduino Mega. 53

2.5.2     Các tính năng mới của Arduino Mega. 54

2.5.3     Quyền lực của Arduino Mega. 57

2.6     Tổng quan về Robot Scara. 59

CHƯƠNG III: THIẾT KẾ HỆ THỐNG.. 61

3.1     Động học thuận của robot61

3.2     Động học ngược. 65

3.3     Sơ đồ khối của hệ thống. 68

3.4     Lưu đồ giải thuật68

3.5     Sơ đồ điện. 70

3.6     Khai báo chân thiết bị70

3.7     Mô hình tổng quan hệ thống. 71

CHƯƠNG IV: KHẢO SÁT - ĐÁNH GIÁ KẾT QUẢ.. 72

4.1     Đánh giá. 72

4.2     Hướng phát triển đề tài72

4.3     Kết luận. 72

TÀI LIỆU THAM KHẢO.. 73

 

DANH MỤC HÌNH ẢNH

Hình 1. 1: Tự động hóa. 6

Hình 1. 2: Robot lắp ráp khung ô tô. 8

Hình 1. 3: Máy phân loại khối lượng công nghiệp. 10

Hình 1. 4: Ứng dụng phân loại theo mã vạch trong hàng hóa. 11

Hình 2. 1: Phần mềm Auto CAD.. 9

Hình 2. 2: Ảnh minh họa cho Auto CAD.. 9

Hình 2. 3: Auto CAD trong cơ khí10

Hình 2. 4: Phần mềm Solidworks. 11

Hình 2. 5: PYCHAM.. 12

Hình 2. 6: Ngôn ngữ  python. 13

Hình 2. 7: Arduino IDE - Phần mềm lập trình mã nguồn mở. 16

Hình 2. 8: Code C/C++. 16

Hình 2. 9: Tương thích với bo mạch Arduino. 17

Hình 2. 10: Giao diện đơn giản, dễ sử dụng. 17

Hình 2. 11: Nút kiểm tra lỗi (Verify)18

Hình 2. 12: Nút tải code vào bo mạch (Upload)18

Hình 2. 13: Vùng lập trình. 19

Hình 2. 14: Thanh Menu. 19

Hình 2. 15: Hỗ trợ nhiều nền tảng khác nhau. 20

Hình 2. 16: Cấu trúc của một chương trình Arduino. 20

Hình 2. 17: Giao điện phần mềm IDE. 21

Hình 2. 18: Xử lý ảnh. 22

Hình 2. 19: Thư viện openCV.. 24

Hình 2. 20: Cảm biến quang. 37

Hình 2. 21: Băng tải PVC.. 38

Hình 2. 22: Băng tải xích. 39

Hình 2. 23: Băng tải con lăn. 39

Hình 2. 24: Băng tải dạng lưới39

Hình 2. 25: Các loại băng tải thông dụng.40

Hình 2. 26: Băng tải trong phân loại hàng trong công nghiệp.40

Hình 2. 27: Băng chuyền trong nhà máy sản xuất Bia.41

Hình 2. 28: Các thành phần của băng tải.41

Hình 2. 29: Động cơ giảm tốc 370CH.. 44

Hình 2. 30: Nguồn tổ ong 24V 3A.. 44

Hình 2.31: Bộ chuyển đổi nguồn 5V 5A.. 45

Hình 2.32: Động cơ DC Servo MG 996R.. 48

Hình 2. 33: Relay HH52P.50

Hình 2. 34: Động cơ bước size 42. 51

Hình 2. 35: Driver TB6600. 52

Hình 2. 36: Webcam Logitech C270. 53

Hình 2. 37: Sơ đồ chân của Mega. 55

Hình 2. 38: Robot Scara. 60

Hình 3.1: Sơ đồ khối hệ thống. 68

Hình 3.2: Lưu đồ giải thuật69

Hình 3.3: Sơ đồ điện kết nối70

Hình 3. 4: Mô hình tổng quan hệ thống. 71

LỜI NÓI ĐẦU

  1. Tính cấp thiết của đề tài

Thế giới hiện nay đang trong quá trình cách mạng công nghiệp 4.0, nó mang đến cho nhận loại cơ hội để thay đổi bộ mặt các nền kinh tế. Cùng với đó là những hứa hẹn về cuộc ‘đổi đời’ của các doanh nghiệp tại Việt Nam. Tự động hóa và robot là một xu hướng quan trọng của tương lai nền công nghiệp. Tự động hóa đem lại  mức độ  chính  xác  và năng xuất cao hơn. Công nghệ này thậm chí có thể hoạt động tốt ở một  số môi trường  làm việc khắc nhiệt không an toàn với  con  người. Ngành  công nghiệp robot trên thế giới hiện nay đang phát triển rất mạnh mẽ với rất nhiều hãng sản xuất robot công nghiệp khác nhau. Có rất nhiều quốc gia trên thế giới nghiên cứ về lĩnh vực này như là : Nhật Bản, Mỹ, Úc, Nga... Và các kết quả đạt được khiến con  người không  phải  không ngạc nhiên.  Các sản phẩm là robot công nghiệp được ứng dụng hết sức rộng rãi trên nhiều lĩnh vực khác nhau, robot cũng được ứng dụng trong các môi trường rất đa dạng như trong công xưởng, ngoài vũ trụ, dưới biển hay thậm chí là trong các đường ống nước thải. Mục đích để phục vụ sản xuất, thậm chí phục vụ nhu cầu giải trí cũng như chăm sóc con người. Trên thị trường cũng có nhiều mô hình robot phục vụ học tập và nghiên cứu với giá thành hợp lý. Với sự phát triển mạnh mẽ về công nghiệp máy tính và cách mạng công nghiệp 4.0 trên thế giới cũng như ở nước ta. Công nghiệp tự động hóa và robot cũng phát triển nở rộ đi kèm theo đó là nhu cầu về nguồn lao động có trình độ có thể làm chủ được công nghệ. Do vậy em chọn đề tài “Thiết kế hệ thống robot phân loại sản phẩm trái cây”, để nghiên cứu tìm hiểu về nguyên lý hoạt động của robot và áp dụng xử lý ảnh vào mô hình, vận dụng các kiến thức đã học.

  1.  Mục đích của đề tài

Mục đính của đề tài là nghiên cứu về cấu tạo và các phương pháp điều khiển thích hợp trên cơ sở ứng dụng các kỹ thuật tiên ứng dụng các kỹ thuật tiên tiến và xây dựng những giải pháp phần cứng cũng như phần mềm để chế tạo bộ điều khiển cánh tay robot 4 bậc. Vận dụng các kiến thức đã học và tìm hiểu xây dựng mô hình cánh tay robot có thể hoạt động và lập trình được xử lý ảnh để phân loại hình ảnh. Nhằm làm chủ kỹ thuật chế tạo robot, có thể áp dụng vào phòng thí nghiệm của các trường cao đẳng, đại học cũng như ứng dụng trong sản xuất công nghiệp.

  1. Đối tượng và phạm vi nghiên cứu

- Nghiên cứu cơ sở khoa học và thực tiễn về chế tạo, điều khiển robot.

- Nghiên cứu và ứng dụng các phần gia công cơ khí để chế tạo cánh tay robot.

- Nghiên cứu và ứng dụng vi điều khiển để điều khiển cánh tay robot.

- Phạm vi nghiên cứu cánh tay robot mô hình gắp vật nhẹ từ 0.5kg trở xuống.

-Đối tượng nghiên cứu của đề tài là mô hình cánh tay robot 4 bậc sử dụng arduino để điều khiển.

- Nghiên cứu tổng quan về cấu tạo nguyên lý hoạt động của cánh tay robot và mạch điều khiển. Vận dụng kiến thức để vận hành và lập trình điều khiển cánh tay robot.

- Nghiên cứu về hệ thống phân loại dung xử lý ảnh kết hợp với arduino

  1. Ý nghĩa khoa học thực tiễn của đề tài.

Kết quả nghiên cứu của đề tài có thể được ứng dụng xây dựng cánh tay  robot tự động gắp và phân loại sản phẩm dựa theo hình ảnh. Ngoài ra cánh tay máy còn có thể ứng dụng vào hàn, cắt hay chỉ đơn giản là nâng vật nặng.

Mô hình kết quả của đề tài có thể làm thiết bị thí nghiệm thực hành tốt và trực quan cho sinh viên

  1. Kế hoạch thực hiện

Bước 1: Tìm hiểu về phương pháp cánh tay robot gắp vật.

Bước 2: Thu thập các dữ liệu liên quan.

Bước 3: Tìm hiểu về nguyên lí làm việc.

Bước 4: Lên ý tưởng về thiết kế điều khiển cho robot.

Bước 5: Thi công lắp đặt cánh tay robot.

Bước 6: Vận hành, thử nghiệm đánh giá giải thuật thực tế.

Bước 7: Thu thập dữ liệu thực tế.

Bước 8: Chỉnh sửa và hoàn thành cánh tay robot.

 

CHƯƠNG I: TỔNG QUAN LÝ THUYẾT

1.1   Các khái niệm cơ bản

Tự động hóa là việc tạo ra và ứng dụng các công nghệ để sản xuất, cung cấp hàng hóa và dịch vụ với sự can thiệp tối thiểu của con người. Việc thực hiện các công nghệ, kỹ thuật và quy trình tự động hóa nâng cao hiệu quả, độ tin cậy và / hoặc tốc độ của nhiều tác vụ mà trước đây con người thực hiện.

Hình 1. 1: Tự động hóa

Khái niệm “Tự động hóa” (Automation) có lẽ sẽ quen thuộc với những ai làm về kỹ thuật. Bắt nguồn từ “Tự động” (Automatic) và dần trở nên phổ biến từ năm 1947, khi tập đoàn General Motors của Mỹ thành lập Bộ phận Tự động hóa.

Tự động hóa mang con người đến với nền văn minh công nghiệp. Công nghệ tự động hóa công nghiệp giúp các doanh nghiệp tăng cường an toàn, tiết kiệm thời gian, thúc đẩy sản xuất chất lượng, giảm giám sát và hạ giá thành.

Tất cả những lợi ích này đưa các công ty đến năng suất cao hơn, hiệu quả cao hơn và lợi nhuận nhiều hơn.

1. Đảm bảo an toàn

An toàn tại nơi làm việc là một vấn đề quan trọng để bảo vệ nhân viên, nhà cung cấp và khách hàng của doanh nghiệp. Tự động hóa có thể giúp tăng cường các quy trình an toàn bằng cách trang bị thêm các thiết bị cũ hơn. Điều này cho phép máy móc tự động thực hiện các tác vụ mà không cần nhiều sự can thiệp của con người.

2. Tiết kiệm thời gian

Thông thường, công nghệ tự động hóa công nghiệp cho phép các dây chuyền sản xuất và các quy trình khác của cơ sở hoạt động hiệu quả và đáng tin cậy hơn. Điều này có nghĩa là công ty có thể sản xuất các sản phẩm và dịch vụ nhanh hơn, đáp ứng hoặc vượt quá mong đợi của khách hàng.

3. Sản xuất chất lượng

Sản xuất sản phẩm của doanh nghiệp nhanh hơn chẳng có nghĩa lý gì nếu doanh nghiệp đưa lỗi hoặc các vấn đề chất lượng vào quy trình của mình. Vẻ đẹp của nó là nó không chỉ đẩy nhanh quá trình sản xuất mà còn giảm thiểu các vấn đề về dây chuyền. Nhờ đó, chất lượng sản phẩm của sẽ cao, hạn chế tối đa sai sót trong quá trình sản xuất. Đây là tất cả những gì tiên tiến mà tự động hóa công nghiệp mang lại.

4. Giảm giám sát

Tự động hóa công nghiệp là một cách hiệu quả hơn nhiều để giám sát tài sản và thiết bị. Trong nhiều trường hợp, công nghệ có thể cung cấp khả năng giám sát suốt ngày đêm, cũng như ghi lại dữ liệu theo các khoảng thời gian được lập trình mà không cần sự tương tác của con người. Điều đó có nghĩa là các kỹ thuật viên bảo trì có thể được triển khai trên các nhiệm vụ cấp cao hơn, trong khi chất lượng giám sát được cải thiện.

5. Chi phí thấp hơn

Khi tự động hóa công nghiệp làm giảm  các yêu cầu bảo trì khẩn cấp và thời gian ngừng hoạt động, nó sẽ giảm chi phí cho tổ chức của bạn. Ngoài ra, nó thường thúc đẩy sản xuất và hiệu quả. Như vậy, doanh nghiệp có thể sản xuất được nhiều hơn mà mức tài chính chi trả lại được tiết kiệm một cách đáng kể.

1.2   Ứng dụng tự động hóa trong sản xuất công nghiệp

Tự động hóa công nghiệp (Automation Industry) là sự nâng cao công nghệ của các hệ thống và máy móc được sử dụng cho các ngành như sản xuất và chế tạo. Mục đích là để hạn chế các thủ tục do con người thực hiện.

Tự động hóa công nghiệp được sử dụng bởi nhiều công ty và ngành công nghiệp để tạo ra các quy trình hiệu quả hơn thông qua việc áp dụng các công nghệ khác nhau. Các khía cạnh của ứng dụng công nghiệp đang thay thế các nhiệm vụ do các cá nhân hoàn thành trước đây. Điều này cho phép các nhiệm vụ lặp đi lặp lại và chính xác được hoàn thành với ít lỗi hơn và giải phóng sức lao động của con người.

Các thành phần chủ yếu của tự động hóa trong công nghiệp gồm:

Hình 1. 2: Robot lắp ráp khung ô tô

Robot công nghiệp (ABB, UNIVERSAL, YASKAWA,…)

Servo, Biến tần, Drive (Mitsubishi, Delta, Yaskawa, Panasonic…)

PLC – màn hình HMI (ABB, Siemens, Rockwell, Omron, Panasonic, Schneider, Mitsubishi, Detal, Keyence

Cảm biến áp suất, đầu đo nhiệt độ, hành trình, nồng độ

Camera chụp tự động, các cơ cấu chấp hành như động cơ, van, xylanh thủy lực khí nén, thiết bị đóng cắt.., các thiết bị chỉ báo như bảng LED, LCD…

Những bộ điều khiển được tích hợp thêm các bộ vi xử lý và trí tuệ nhân tạo đang ngày càng tinh vi và có những đột phá công nghệ không ngừng

1.3   Lịch sử ban đầu của hệ thống tự động

Từ những lúc bắt đầu, khái niệm về robot và sự phát triển tự động hóa chưa được công nhận rộng rãi trên thế giới. Bởi vì lúc đó hầu hết tất cả mọi người đều cảm thấy mơ hồ về những khái niệm công nghệ như robot tự động.

Vào năm 1913, Công ty Ford Motor đã giới thiệu một hệ thống dây chuyền tự động lắp ráp và sản xuất xe hơi. Những hệ thống tự động này được coi là sự tiên phong trong việc áp dụng tự động hóa vào trong sản xuất. Trước đó, một chiếc xe hơi đã được chế tạo bởi đội ngũ công nhân lành nghề với ít kinh nghiệm cũng như trình độ kỹ năng không cao. Sau đó, nhờ việc áp dụng hệ thống tự động hóa vào sản xuất đã cải thiện hiệu suất cũng như tăng doanh thu cho công ty. Hơn nữa, hệ thống tự động thông minh này còn tiết kiệm thời gian lắp ráp xe từ 12 giờ một xe xuống còn hơn một tiếng rưỡi một xe.

1.4   Sự phát triển của hệ thống tự động thông minh trong thế kỷ 20

Trong những năm đầu 1930, Nhật Bản là nước đi đầu trong việc phát triển và áp dụng tự động hóa. Đó cũng là tiền đề cho việc tự động hóa được áp dụng nhiều hơn trong ngành công nghiệp sản xuất hiện nay. Đến thời điểm này, hầu hết mọi người trên thế giới đã thay đổi cái nhìn và bắt đầu đánh giá cao lợi ích của các hệ thống tự động thông minh. Từ năm 1939 đến năm 1945 khi chiến tranh thế giới diễn ra, tự động hóa đã được áp dụng trong máy bay chiến đấu, máy bay hạ cánh, tàu chiến và xe tăng.

Nhật Bản đã đầu hàng Mỹ và các lực lượng đồng minh vào năm 1945, sau đó một chương trình tái thiết công nghiệp được bắt đầu. Dựa trên những chương trình công nghệ để phát triển thêm lợi ích, ứng dụng thay thế cho những phương thức lỗi thời. Những điều đó đã giúp Nhật Bản trở thành quốc gia hàng đầu thế giới khi nói về tự động hóa. Hàng loạt hãng xe ô tô như Honda, Toyota, Nissan đều có thể sản xuất các loại xe chất lượng cao dựa vào các hệ thống tự động.

1.5   Hệ thống tự động thông minh trong sản xuất

1.5.1          Dây chuyền phân loại sản phẩm

Dây chuyền phân loại sản phẩm là dây chuyền hoàn toàn tự động được sử dụng để phục vụ và hỗ trợ dây chuyền phân loại – đóng gói, xếp dỡ, xuất nhập kho và bưu kiện. Các dây chuyền phân loại sản phẩm theo mã vạch, kích thước, khối lượng, màu sắc và các tiêu chí khác theo yêu cầu của khách hàng với độ chính xác và tự động hóa cao.

Ưu điểm của dây chuyền phân loại sản phẩm

Trước đây, phương pháp phân loại sản phẩm truyền thống yêu cầu không gian làm việc rộng, số lượng người tham gia phân loại nhiều, thời gian làm việc kéo dài, dễ xảy ra sai sót. Như vậy, dây chuyền phân loại sản phẩm tự động do cơ chế làm việc linh hoạt nên giảm 80% số lượng lao động, năng suất tăng gấp 3-5 lần so với phân loại truyền thống.

Dây chuyền phân loại sản phẩm hoạt động theo cơ chế phân loại sản phẩm với máy phân loại, cảm biến nhận dạng sản phẩm, camera kiểm tra sản phẩm, cân điện tử, hệ thống đo lường, cơ cấu chọn và vận chuyển: Băng tải, băng chuyền, bẫy, đòn bẩy, dải phân cách, băng tải góc, cần gạt…Hệ thống băng tải xương cá, hệ thống trung tâm và điều khiển trung tâm kết nối dữ liệu từ xa.

Dây chuyền phân loại sản phẩm được sử dụng trong nhiều ngành công nghiệp: chế biến nông sản, rau củ quả, nhà máy sản xuất linh kiện điện tử, cơ khí, kho vận, bưu điện, thương mại điện tử trong việc phân loại bưu phẩm, bưu kiện …

Với một số dây chuyền phân loại sản phẩm nông sản, nhựa, chi tiết dạng hạt, sợi, máy phân loại có cấu tạo nhỏ gọn và thực hiện đầy đủ các chức năng phân loại chọn sản phẩm có camera và cơ cấu kiểm tra sản phẩm khi chuyển qua băng tải, phễu chứa. Ứng dụng chính của dây chuyền này là ngành thực phẩm và đồ uống.

1.5.2          Một số máy trong hệ dây chuyền phân loại sản phẩm

Phân loại sản phẩm theo trọng lượng

Máy phân loại sản phẩm theo trọng lượng thường dùng để phân loại, kiểm soát sản phẩm theo nguyên tắc kiểm tra trọng lượng sản phẩm sau đó phân loại thành từng nhóm theo yêu cầu.

Hình 1. 3: Máy phân loại khối lượng công nghiệp

Máy phân loại mã vạch

Máy phân loại sản phẩm bằng mã vạch rất thường được sử dụng trong các công ty logistics, nó được sử dụng để phân loại các gói hàng, bưu kiện, sản phẩm đóng gói và sử dụng mã QR hoặc mã vạch.

Với thông tin lưu trữ được sử dụng trong mã số mã vạch, hệ thống có thể dễ dàng phân loại và lựa chọn sản phẩm để lưu trữ theo các yêu cầu đã nêu.

Hình 1. 4: Ứng dụng phân loại theo mã vạch trong hàng hóa

Đặc Điểm

Với đơn hàng là sản phẩm điện tử, công nghệ : Hệ thống phân loại sẽ phân loại sản phẩm theo Lô Sản Xuất, Ngày Sản Xuất, Model ….

Với các sản phẩm nông sản đóng gói : hệ thống sẽ phân loại theo hạn sử dụng, số lô chế biến ……

Hệ thống phân thoại sản phẩm theo mã vạch có thể đạt năng suất tới ~10,000 sản phẩm/h. Năng suất có thể cao hơn việc phân thoại thủ công từ 3 – 5 lần.

1.6   Tự động hóa thế giới và Việt Nam

Tự động hóa là một trong những xu hướng phát triển công nghệ quan trọng trong thời đại hiện tại. Việt Nam và nhiều nước khác trên thế giới đang đầu tư và phát triển mạnh mẽ trong lĩnh vực này.

Tuy nhiên, so sánh mức độ tự động hóa của Việt Nam với các nước ngoài là rất khó, bởi vì mức độ tự động hóa của một quốc gia phụ thuộc vào nhiều yếu tố khác nhau nhưng chủ yếu là sự phát triển của kinh tế, đầu tư vào công nghệ, giáo dục và đào tạo nhân lực trong lĩnh vực này.

Tuy nhiên, theo một số chỉ số và báo cáo thống kê, Việt Nam đang tiến bộ vượt bậc trong việc áp dụng tự động hóa trong sản xuất và quản lý hệ thống. Ví dụ, theo báo cáo của Tổ chức Hợp tác và Phát triển Kinh tế (OECD), mức độ tự động hóa của ngành công nghiệp Việt Nam đã tăng từ 7% vào năm 2000 lên hơn 40% vào năm 2018.

Tuy nhiên, vẫn còn nhiều thách thức trong việc phát triển tự động hóa ở Việt Nam, bao gồm đầu tư vào hệ thống hạ tầng kỹ thuật, nâng cao năng lực và trình độ của lao động, và tăng cường quản lý và kiểm soát chất lượng trong sản xuất.

Tóm lại, mặc dù Việt Nam đang phát triển rất nhanh trong lĩnh vực tự động hóa, nhưng vẫn còn nhiều việc cần làm để cải thiện và tăng cường mức độ tự động hóa của quốc gia này, và cần phải học hỏi và áp dụng các kinh nghiệm từ các nước phát triển khác trên thế giới.

CHƯƠNG II: THIẾT KẾ CƠ KHÍ

2.1   Phương án thiết kế hệ thống        

Phương án 1: Sử dụng băng tải để vận chuyển sản phẩm. Để phân loại được sản phẩm theo hình ảnh trên băng tải, ta có thể sử dụng cảm biến màu. Khi sản phẩm cần phân loại đi qua sẽ được cảm biến phát hiện màu. Sử dụng hai servo để phân loại các sản phẩm vào thùng chứa sản phẩm.

- Ưu điểm: Ít bị nhiễu do ánh sáng, môi trường, nhiệt độ.

- Nhược điểm: Thời gian tác động của servo còn chậm

Phương án 2: Sử dụng băng tải để vận chuyển sản phẩm. Để phân loại được sản phẩm theo màu sắc trên băng tải, ta có thể sử dụng camera để nhận diện màu sắc của sản phẩm. Khi sản phẩm cần phân loại đi qua sẽ được camera sẽ phát hiện màu cần nhận dạng. Sử dụng hai servo để phân loại các sản phẩm vào thùng chứa sản phẩm.

- Ưu điểm: Ứng dụng webcam, camera để phân loại sản phẩm là phương pháp có giá thành rẻ, phân loại màu đa dạng, có khả năng quan sát rộng trên một đơn vị diện tích vật thể. Hệ thống có thể thực hiện, vận hành và sửa chữa dễ dàng.

- Nhược điểm: Dễ bị nhiễu do ánh sáng, môi trường, nhiệt độ.

Phương án 3: sử dụng băng tải vận chuyển phôi. Để phân loại được sản phẩm theo hình ảnh trên băng tải, ta có thể sử dụng camera để nhận diện hình ảnh của sản phẩm. Khi sản phẩm cần phân loại đi qua sẽ được camera sẽ phát hiện màu và hình dáng cần nhận dạng. Sử dụng cánh tay robot để phân loại các sản phẩm vào thùng chứa sản phẩm.

- Ưu điểm: Ứng dụng webcam, camera để phân loại sản phẩm là phương pháp có giá thành rẻ, phân loại màu và hình dạng đa dạng, có khả năng quan sát rộng trên một đơn vị diện tích vật thể. Hệ thống có thể thực hiện, vận hành và sửa chữa dễ dàng. Có ứng dụng tay robot để phân loại

- Nhược điểm: Dễ bị nhiễu do ánh sáng, môi trường, nhiệt độ.

Nhận xét: Dựa trên các phân tích trên em lựa chọn sử dụng phương án 3 để thiết kế mô hình.

2.2   Phần mềm sử dụng

2.2.1      Phần mềm Auto CAD

AutoCAD (viết tắt của Automatic Computer Aided Design) là một ứng dụng phần mềm được phát triển bởi Autodesk cho phép thiết kế và soạn thảo với sự hỗ trợ máy tính (CAD). Phần mềm này được sử dụng để tạo bản vẽ 2D và 3D, cho phép người dùng khái niệm hoá các ý tưởng, tạo ra các thiết kế và bản vẽ theo mức độ chính xác kỹ thuật cần thiết. Thậm chí, AutoCAD có thể thực hiện tính toán và mô phỏng thiết kế nhanh chóng trên một loạt các ngành công nghiệp.

Hình 2. 1: Phần mềm Auto CAD

  AutoCAD là một sản phẩm chủ lực của Autodesk, đi đầu trong ngành công nghiệp CAD. Phiên bản AutoCAD đầu tiên đã được trình diễn tại Comdex năm 1982, và được phát hành vào tháng 12 cùng năm. Bản phát hành đã chứng tỏ sự rung chuyển mạnh mẽ đối với ngành công nghiệp CAD. AutoCAD cũng là một trong những gói CAD đầu tiên chạy trên PC và có sẵn cho khách hàng trên toàn thế giới.

Hình 2. 2: Ảnh minh họa cho Auto CAD

Kỹ thuật cơ khí:

AutoCAD giúp thực thi hiệu quả, giảm thiểu lỗi tối đa các bản vẽ của thành phần kỹ thuật, thiết kế cơ sở hạ tầng và phân tích các hệ thống HVAC đóng vai trò chính trong hầu hết các lĩnh vực kỹ thuật, các ngành kỹ thuật, cơ khí, hệ thống và kỹ thuật điện. AutoCAD cũng là một trong những phần mềm thiết kế cung cấp cho các chuyên gia ngành kỹ thuật cơ khí các công cụ soạn thảo độc đáo có thể được sử dụng để đưa các ý tưởng kỹ thuật của họ vào thực tế với độ chính xác mà họ yêu cầu. Từ đó, AutoCAD trở thành phần mềm để thiết kế các thành phần cơ khí, phân tích các hệ thống điện và đường ống và giải quyết các vấn đề thiết kế có thể phát sinh.

 

Hình 2. 3: Auto CAD trong cơ khí

2.2.2      Phần mềm thiết kế Solidworks

Solidworks là một phần mềm thiết kế 3D mạnh mẽ và tích hợp nhiều công cụ hỗ trợ đa dạng nên rất được các kỹ sư tín nhiệm. Đồng thời, phần mềm được ứng dụng rộng rãi vào các lĩnh vực từ xây dựng, đường ống, kiến trúc, nội thất, ...

Trải qua nhiều phiên bản, Solidworks đã có nhiều bước tiến vượt trội về tính năng, hiệu suất cũng như đáp ứng trên cả mong đợi nhu cầu thiết kế bản vẽ 3D chuyên nghiệp cho các ngành kỹ thuật, công nghiệp.

Ưu điểm của solidworks:

Giao diện trực quan

Phần mềm thiết kế này có giao diện khá trực quan, hỗ trợ người thiết kế tiện dụng làm quen ngay từ các thao tác thứ nhất. Đã có sẵn nền tảng Cad 3D thì việc làm quen với solidworks là hoàn toàn không khó.

Hình 2. 4: Phần mềm Solidworks

Xử lý nhanh

Điều này còn tùy thuộc vào cấu hình máy tính. Nhưng nếu như so sánh với một số đối thủ cùng trang lứa như Inventor 2012-2015 thì theo nhóm em cảm giác là solidworks 2013 nhanh và mượt mà hơn.

Tuyệt vời trong việc thiết kế khuôn

Với solidworks, việc chia lõi khuôn, tách khuôn, hay lắp ráp và mô phỏng khuôn. Thậm chí, nếu biết làm chính xác quy trình và có kinh nghiệm xử lý, thì có thể làm nhiều khuôn khác nhau mà chỉ cần các thao tác thay đổi nhỏ từ khuôn khác.

2.2.3      Phần mềm pycham

Pycharm là một nền tảng kết kết hợp được JetBrains phát triển như một IDE (Môi trường phát triển tích hợp) để phát triển các ứng dụng cho lập trình trong Python. Một số ứng dụng lớn như Tweeter, Facebook, Amazon và Pinterest sử dụng Pycharm để làm IDE Python của họ. Bài viết dưới đây sẽ giới thiệu chi tiết cho bạn về Pycharm cũng như hướng dẫn cách cài đặt và sử dụng Pycharm.

Các tính năng của pycharm

Pycharm có thể chạy trên Windows, Linux, hoặc Mac OS. Ngoài ra, nó cũng chứa các Mô đun và các gói giúp các lập trình viên phát triển phần mềm bằng Python trong thời gian ngắn với ít công sức hơn. Hơn nữa, nó cũng có khả năng tùy chỉnh theo yêu cầu của nhà phát triển.

Hình 2. 5: PYCHAM

Khi cài đặt Pycharm, LTV có thể sử dụng một số tính năng sau:

Trình chỉnh sửa mã thông minh:

- Giúp các lập trình viên viết mã chất lượng cao

- Bao gồm các lược đồ màu cho các từ khóa, lớp và hàm. Điều này giúp tăng khả năng đọc và hiểu mã

- Xác định lỗi một cách dễ dàng

- Cung cấp tính năng tự động hoàn thiện và hướng dẫn hoàn thiện mã.

Điều hướng mã

- Giúp các nhà phát triển trong việc chỉnh sửa và nâng cao mã với ít nỗ lực và thời gian hơn

- Với việc điều hướng mã, nhà phát triển có thể dễ dàng điều hướng một lớp,hàm hoặc tệp

- LTV có thể xác định vị trí của một phần tử, một ký hiệu hoặc một biến trong mã nguồn trong thời gian ngắn khi sử dụng Pycharm

- Bằng việc sử dụng chế độ thấu kính, nhà phát triển có thể kiểm tra và gỡ lỗi toàn bộ mã nguồn.

Tái cấu trúc

- Sử dụng Pycharm có lợi thế là thực hiện các thay đổi hiệu quả và nhanh chóng đối với cả biến cục bộ và biến toàn cục

- Tái cấu trúc trong Pycharm cho phép các nhà phát triển cải thiện cấu trúc bên trong mà không thay đổi hiệu suất bên ngoài của mã

- Nó cũng cho phép phân chia các lớp với các chức năng mở rộng hơn

2.2.4      Ngôn ngữ lập trình python

Python là ngôn ngữ lập trình hướng đối tượng, cấp cao, mạnh mẽ, được tạo ra bởi Guido van Rossum. Nó dễ dàng để tìm hiểu và đang nổi lên như một trong những ngôn ngữ lập trình nhập môn tốt nhất cho người lần đầu tiếp xúc với ngôn ngữ lập trình. Python hoàn toàn tạo kiểu động và sử dụng cơ chế cấp phát bộ nhớ tự động. Python có cấu trúc dữ liệu cấp cao mạnh mẽ và cách tiếp cận đơn giản nhưng hiệu quả đối với lập trình hướng đối tượng. Cú pháp lệnh của Python là điểm cộng vô cùng lớn vì sự rõ ràng, dễ hiểu và cách gõ linh động làm cho nó nhanh chóng trở thành một ngôn ngữ lý tưởng để viết script và phát triển ứng dụng trong nhiều lĩnh vực, ở hầu hết các nền tảng.

Hình 2. 6: Ngôn ngữ  python

Lịch sử của Python

Python là một ngôn ngữ khá cũ được tạo ra bởi Guido Van Rossum. Thiết kế bắt đầu vào cuối những năm 1980 và được phát hành lần đầu tiên vào tháng 2 năm 1991.

Vào cuối những năm 1980, Guido Van Rossum làm việc trong Amoeba, phân phối một nhóm hệ điều hành. Ông muốn sử dụng một ngôn ngữ thông dịch như ABC (ABC có cú pháp rất dễ hiểu) để truy cập vào những cuộc gọi hệ thống Amoeba. Vì vậy, ông quyết định tạo ra một ngôn ngữ mở rộng. Điều này đã dẫn đến một thiết kế của ngôn ngữ mới, chính là Python sau này.

Tính năng chính của Python

Ngôn ngữ lập trình đơn giản, dễ học: Python có cú pháp rất đơn giản, rõ ràng. Nó dễ đọc và viết hơn rất nhiều khi so sánh với những ngôn ngữ lập trình khác như C++, Java, C#. Python làm cho việc lập trình trở nên thú vị, cho phép bạn tập trung vào những giải pháp chứ không phải cú pháp.

Miễn phí, mã nguồn mở: Bạn có thể tự do sử dụng và phân phối Python, thậm chí là dùng nó cho mục đích thương mại. Vì là mã nguồn mở, bạn không những có thể sử dụng các phần mềm, chương trình được viết trong Python mà còn có thể thay đổi mã nguồn của nó. Python có một cộng đồng rộng lớn, không ngừng cải thiện nó mỗi lần cập nhật.

Khả năng di chuyển: Các chương trình Python có thể di chuyển từ nền tảng này sang nền tảng khác và chạy nó mà không có bất kỳ thay đổi nào. Nó chạy liền mạch trên hầu hết tất cả các nền tảng như Windows, macOS, Linux.

Khả năng mở rộng và có thể nhúng: Giả sử một ứng dụng đòi hỏi sự phức tạp rất lớn, bạn có thể dễ dàng kết hợp các phần code bằng C, C++ và những ngôn ngữ khác (có thể gọi được từ C) vào code Python. Điều này sẽ cung cấp cho ứng dụng của bạn những tính năng tốt hơn cũng như khả năng scripting mà những ngôn ngữ lập trình khác khó có thể làm được.

Ngôn ngữ thông dịch cấp cao: Không giống như C/C++, với Python, bạn không phải lo lắng những nhiệm vụ khó khăn như quản lý bộ nhớ, dọn dẹp những dữ liệu vô nghĩa,... Khi chạy code Python, nó sẽ tự động chuyển đổi code sang ngôn ngữ máy tính có thể hiểu. Bạn không cần lo lắng về bất kỳ hoạt động ở cấp thấp nào.

Thư viện tiêu chuẩn lớn để giải quyết những tác vụ phổ biến: Python có một số lượng lớn thư viện tiêu chuẩn giúp cho công việc lập trình của bạn trở nên dễ thở hơn rất nhiều, đơn giản vì không phải tự viết tất cả code. Ví dụ: Bạn cần kết nối cơ sở dữ liệu MySQL trên Web server? Bạn có thể nhập thư viện MySQLdb và sử dụng nó. Những thư viện này được kiểm tra kỹ lưỡng và được sử dụng bởi hàng trăm người. Vì vậy, bạn có thể chắc chắn rằng nó sẽ không làm hỏng code hay ứng dụng của mình.

Hướng đối tượng: Mọi thứ trong Python đều là hướng đối tượng. Lập trình hướng đối tượng (OOP) giúp giải quyết những vấn đề phức tạp một cách trực quan. Với OOP, bạn có thể phân chia những vấn đề phức tạp thành những tập nhỏ hơn bằng cách tạo ra các đối tượng.

Ứng dụng python:

Lập trình ứng dụng web: Bạn có thể tạo web app có khả năng mở rộng (scalable) được bằng cách sử dụng framework và CMS (Hệ thống quản trị nội dung) được tích hợp trong Python. Vài nền tảng phổ biến để tạo web app là: Django, Flask, Pyramid, Plone, Django CMS. Các trang như Mozilla, Reddit, Instagram và PBS đều được viết bằng Python.

Khoa học và tính toán: Có nhiều thư viện trong Python cho khoa học và tính toán số liệu, như SciPy và NumPy, được sử dụng cho những mục đích chung chung trong tính toán. Và, có những thư viện cụ thể như: EarthPy cho khoa học trái đất, AstroPy cho Thiên văn học,... Ngoài ra, Python còn được sử dụng nhiều trong machine learning, khai thác dữ liệu và deep learning.

Tạo nguyên mẫu phần mềm: Python chậm hơn khi so sánh với các ngôn ngữ được biên dịch như C++ và Java. Nó có thể không phải là lựa chọn tốt nếu nguồn lực bị giới hạn và yêu cầu về hiệu quả là bắt buộc. Tuy nhiên, Python là ngôn ngữ tuyệt vời để tạo những nguyên mẫu (bản chạy thử - prototype). Ví dụ, bạn có thể sử dụng Pygame (thư viện viết game) để tạo nguyên mẫu game trước. Nếu thích nguyên mẫu đó có thể dùng C++ để viết game thực sự.

Ngôn ngữ tốt để dạy lập trình: Python được nhiều công ty, trường học sử dụng để dạy lập trình cho trẻ em và những người mới lần đầu học lập trình. Bên cạnh những tính năng và khả năng tuyệt vời thì cú pháp đơn giản và dễ sử dụng của nó là lý do chính cho việc này.

2.2.5      Phần mềm Arduino IDE

  Thông tin của Arduino IDE

-        Nền tảng: Windows, MacOS, Linux

-        Dung lượng: ~530MB

-        Loại ứng dụng: Công cụ

-        Nhà phát hành: Arduino Software

-        Tính năng chính của Arduino IDE

-        Phần mềm lập trình mã nguồn mở miễn phí

IDE trong Arduino IDE là phần có nghĩa là mã nguồn mở, nghĩa là phần mềm này miễn phí cả về phần tải về lẫn phần bản quyền: Người dùng có quyền sửa đổi, cải tiến, phát triển, nâng cấp theo một số nguyên tắc chung được nhà phát hành cho phép mà không cần xin phép ai, điều mà họ không được phép làm đối với các phần mềm nguồn đóng.

Tuy là phần mềm mã nguồn mở nhưng khả năng bảo mật thông tin của Arduino IDE là vô cùng tuyệt vời, khi phát hiện lỗi nhà phát hành sẽ vá nó và cập nhật rất nhanh khiến thông tin của người dùng không bị mất hoặc rò rỉ ra bên ngoài.

Hình 2. 7: Arduino IDE - Phần mềm lập trình mã nguồn mở

Sử dụng ngôn ngữ lập trình C/C++ thân thiện với các lập trình viên

Arduino IDE sử dụng ngôn ngữ lập trình C/C++ rất phổ biến trong giới lập trình. Bất kỳ đoạn code nào của C/C++ thì Arduino IDE đều có thể nhận dạng, giúp các lập trình viên thuận tiện trong việc thiết kế chương trình lập cho các bo mạch Arduino.

Hình 2. 8: Code C/C++

Hỗ trợ lập trình tốt cho bo mạch Arduino

Arduino có một module quản lý bo mạch, nơi người dùng có thể chọn bo mạch mà họ muốn làm việc cùng và có thể thay đổi bo mạch thông qua Menu. Quá trình sửa đổi lựa chọn cũng liên tục tự động cập nhật để các dữ liệu có sẵn trong bo mạch và dữ liệu sửa đổi đồng nhất với nhau. Bên cạnh đó, Arduino IDE cũng giúp bạn tìm ra lỗi từ code mà bạn biết giúp bạn sửa lỗi kịp thời tránh tình trạng bo mạch Arduino làm việc với code lỗi quá lâu dẫn đến hư hỏng hoặc tốc độ xử lý bị giảm sút.

Hình 2. 9: Tương thích với bo mạch Arduino

Thư viện hỗ trợ phong phú

Arduino IDE tích hợp với hơn 700 thư viện, được viết và chia sẻ bởi nhà phát hành Arduino Software và thành viên trong cộng đồng Arduino. Mọi người có thể tận dụng chúng cho dự án của riêng mình mà không cần phải bỏ ra bất kỳ chi phí nào.

Hình 2. 10: Giao diện đơn giản, dễ sử dụng

Arduino IDE có một giao diện đơn giản, dễ sử dụng giúp người dùng thuận tiện hơn trong thao tác. Dưới đây là một số tính năng nổi bật chúng ta thường sử dụng:

Nút kiểm tra chương trình (Verify): giúp dò lỗi phần code định truyền xuống bo mạch Arduino.

Hình 2. 11: Nút kiểm tra lỗi (Verify)

Nút tải đoạn code vào bo mạch Arduino (Upload): giúp nhập đoạn code vào bo mạch Arduino.

Hình 2. 12: Nút tải code vào bo mạch (Upload)

Vùng lập trình: người dùng sẽ viết chương trình tại khu vực này.

Hình 2. 13: Vùng lập trình

Thanh Menu: gồm những thẻ chức năng nằm trên cùng như File, Edit, Sketch, Tools, Help rất thông dụng có ở hầu hết các chương trình nhập code khác.

Hình 2. 14: Thanh Menu

Hỗ trợ đa nền tảng như Windows, MacOS, Linux

Arduino IDE hoạt động trên 3 hệ điều hành phổ biến nhất là Windows, Mac OS và Linux giúp người dùng có thể truy cập vào phần mềm ở bất cứ đâu, bất cứ khi nào miễn là họ có một cái máy tính. Ngoài ra, người dùng có thể truy cập vào công cụ từ đám mây. Điều này cho phép các nhà lập trình lựa chọn tạo và lưu dự án của mình trên đám mây hoặc xây dựng chương trình trên máy tính và upload nó lên bo mạch Arduino.

Hình 2. 15: Hỗ trợ nhiều nền tảng khác nhau

Tóm lại, Arduino IDE là một phần mềm được phân phối chính hãng, tải miễn phí và giao diện thân thiện với người dùng. Phần mềm liên tục được nhà phát hành cập nhật dưới sự giúp đỡ của Cộng đồng người dùng Arduino đông đảo nên độ bảo mật là rất cao. Arduino IDE là phần mềm nên sử dụng nhất để tải code vào bo mạch Arduino.

Cấu trúc một chương trình Arduino

Cấu trúc một chương trình Arduino gồm 2 hàm: hàm setup() và hàm loop().Những lệnh trong hàm setup() sẽ được chạy khi Arduino khởi động (chỉ chạy một lần duy nhất).Sau khi hàm setup() chạy xong, những lệnh trong hàm loop() sẽ được chạy và lặp đi lặp lại cho đến khi reset hoặc shutdown Arduino.

Hình 2. 16: Cấu trúc của một chương trình Arduino

Các bước lập trình và chạy chương trình với Arduino

+ Bước 1: Thiết kế mạch theo yêu cầu

+ Bước 2: Lập trình điều khiển và nạp code

Để lập trình điều khiển và nạp code thì chúng ta sử dụng phần mềm Integrated Development Environment (viết tắt là IDE), phần mêm IDE hỗ trợ người lập trình viết code và nạp code cho vi điều khiển.

Hình 2. 17: Giao điện phần mềm IDE

+ Bước 4: Chạy thử và sửa lỗi nếu có

2.3   Tổng quan về xử lý ảnh

Xử lý ảnh là quá trình xử lý số tín hiệu ở đây là tín hiệu hình ảnh. Hiện nay xử lý ảnh đang phát triển rất mạnh mẽ, vì ứng dụng của nó rất rộng và hữu ích bao gồm ở rất nhiều lĩnh vực: sản xuất, kinh tế, đời sống, y tế, quân sự… Chúng ta có thể chia xử lý ảnh thành bốn nhóm ứng với bốn lĩnh vực chính: xử lý nâng cao chất lượng ảnh, nhận dạng ảnh, truy vấn ảnh và nén ảnh. Trong đề tài này sẽ tìm hiểu về lĩnh vực nhận dạng ảnh. Các bước cơ bản của xử lý ảnh.

Hình 2. 18: Xử lý ảnh

Ảnh số là tập hợp các điểm ảnh (Pixel) có giá trị mức xám xác định dùng để mô tả ảnh gần với ảnh thật, trong đề tài này chỉ xét đến ảnh 2 chiều, một ảnh sau khi được số hóa có thể được mô tả như một ma trận điểm A[M, N] trong không gian hai chiều trong đó M và N là số cột và số hàng của các điểm ảnh. Một điểm ảnh bất kì lúc này sẽ có tọa độ A(x, y) với 0=

2.3.1.    Phương pháp thu nhận ảnh

2.3.2.    Giới thiệu về thư viện OpenCV

Thư viện OpenCV

-        Nhận dạng ảnh

-        Xử lý hình ảnh

-        Phục hồi hình ảnh/video

-        Thực tế ảo.

OpenCV vẫn đang được đóng góp và phát triển liên tục, nó đặc biệt phù hợp cho những ứng dụng xử lý hình ảnh đơn giản vì thư viện dễ sử dụng và nhiều hỗ trợ từ cộng đồng.

Hình 2. 19: Thư viện openCV

Điều chỉnh độ sáng và độ tương phản

 

a, b: hằng số tựchọn.

g(x,y)=a*f(x,y)+b             

f(x,y): mức sáng của pixel trong ảnh tại điểm có tọa độ(x,y).

g(x,y): mức sáng của pixel trong ảnh tại điểm có toạ độ (x,y) sau khi biếnđổi.

Ngoàiviệcthayđổibằngphầnmềmtacóthểtăngđộsángảnhbằngphầncứngnhưlắp thêm đèn rọi, dùng tấm nền màusáng…

Lọc nhiễu ảnh

Một ảnh khi được chụp thường kèm theo các nhiễu, các nhiễu này có nhiều nguyên nhân gây nên: ánh sáng không đủ, chất lượng thiết bị thu không tốt, ảnh hưởng do các yếu tố môi trường xung quanh, do sai số lượng tử hóa hay sai số truyền … Một số loại nhiễu phổ biến thường xuất hiện trong ảnh:

Nhiễu độc lập với dữ liệuảnh:

Là một loại nhiễu cộng (additive noise): ảnh thu được f(i,j) là tổng của ảnhđúng (true image) và nhiễu n(i,j): f(i,j) = s(i,j) +n(i,j) [3]

Thông tin ảnh có tần số thấp, còn nhiễu ảnh hưởng đến tần số cao và ảnh hưởng này có thể được giảm đi khi sử dụng bộ lọc thôngthấp.

Nhiễu phụ thuộc vào dữliệu:

Nhiễu xuất hiện khi có sự bức xạ đơn sắc nằm rải rác trên bề mặt ảnh, độ lởm chởm trên bề mặt tùy thuộc vào bước sóng của điểmảnh.

 

 

G=M*I[3]

I: Là ảnh gốc được sử dụng để lọc sốảnh.

G: Là ảnh ra sau khi thực hiện xong phép lọc sốảnh.

M: Là ma trận lọc (Mask,kernel).

Với mỗi phép lọc ta có những ma trận lọc (Kernel) khác nhau, không có một quy định cụ thể nào cho việc xác định M. Tổng các phẩn tử trong ma trận M thường là 1

Tpt > 1: Ảnh sau khi thực hiện xong phép lọc số ảnh (G) có độ sáng lớn hơn so với ảnh ban đầu(F).

Tpt < 1: Ảnh sau khi thực hiện xong phép lọc số ảnh (G) có độ sáng nhỏ hơn so với ảnh ban đầu(F).

Một số phương pháp lọc phù hợp để xử lý một loại nhiễu nhất định. Một số bộ lọc thông dụng như lọc trung vị, lọc trung bình, lọc thông thấp, lọc thông cao…

Lọc trung vị

Lọc trung vị là một kĩ thuật lọc phi tuyến (non-linear), bộ lọc này được sử dụng rất phổ biến trong xử lý ảnh, lọc trung vị còn được gọi là bộ lọc hạng. Ý tưởng chính của thuật toán lọc trung vị là sử dụng một cửa sổ lọc (thường là ma trận 3x3) quét qua lần lượt từng điểm ảnh của ảnh đầu vào input. Tại vị trí mỗi điểm ảnh lấy giá trị của các điểm ảnh tương ứng trong vùng 3x3 của ảnh gốc "lấp" vào ma trận lọc. Sau đó sắp xếp các điểm ảnh trong cửa sổ này theo thứ tự (tăng dần hoặc giảm dần tùy ý). Cuối cùng, gánđiểmảnhnằmchínhgiữa(trungvị)củadãygiátrịđiểmảnhđãđượcsắpxếpởtrên cho giá trị điểm ảnh đang xét của ảnh đầu raoutput.

Cho một dãy số

Close