Máy tínhCông nghệ thông tin

Tầm nhìn máy tính hiện đại. Nhiệm vụ và công nghệ computer vision. Lập trình Tầm nhìn máy tính bằng Python

Làm thế nào để dạy cho một máy tính để hiểu những gì được mô tả trong các bức tranh hoặc hình ảnh? Điều này có vẻ đơn giản, nhưng đối với một máy tính này chỉ là một ma trận gồm các zeros và những từ mà bạn muốn trích xuất thông tin quan trọng.

computer vision là gì? Đó là khả năng "nhìn thấy" máy tính của bạn

Vision - là một nguồn thông tin quan trọng cho người sử dụng nó, chúng tôi có được, theo ước tính khác nhau, từ 70 đến 90% của tất cả các thông tin. Và, tất nhiên, nếu chúng ta muốn tạo ra một chiếc xe hơi thông minh, chúng ta cần phải thực hiện các kỹ năng và cùng một máy tính.

Các vấn đề của computer vision có thể nói khá rõ ràng. là gì "nhìn thấy"? Điều này được hiểu rằng, nơi có chỉ là bằng cách nhìn. Đó là kết luận sự khác biệt của computer vision và tầm nhìn của con người. Tầm nhìn cho chúng ta - đó là một nguồn kiến thức về thế giới, cũng như một nguồn thông tin số liệu - nghĩa là, khả năng hiểu được khoảng cách và kích cỡ.

kernel image Semantic

Nhìn vào bức tranh, chúng ta có thể mô tả nó bằng một số thuộc tính, có thể nói, để trích xuất thông tin ngữ nghĩa.

Ví dụ, nhìn vào bức tranh này, chúng ta có thể nói rằng nó là ở ngoài trời. các giao thông thành phố là gì. Rằng có những chiếc xe. chúng ta có thể đoán rằng đây là Đông Nam Á vào cấu hình của tòa nhà và chữ tượng hình. Các bức chân dung của Mao Trạch Đông hiểu rằng đây là Bắc Kinh, và nếu có ai nhìn thấy video trực tiếp hoặc mình đã ở đó, sẽ đoán rằng đây là Thiên An Môn nổi tiếng.

Những gì chúng ta có thể nói thêm về hình ảnh, nhìn thấy nó? Chúng ta có thể xác định các đối tượng trong hình ảnh, phải nói, rằng có những người dân nơi đây gần gũi hơn - hàng rào. Ở đây ô dù, áp phích của tòa nhà đó. Đây là những ví dụ về các lớp học là đối tượng rất quan trọng, được tham gia vào việc tìm kiếm cho thời điểm này.

Tuy nhiên chúng ta có thể tìm hiểu một số các tính năng hoặc các thuộc tính của các đối tượng. Ví dụ, ở đây chúng ta có thể xác định rằng đây không phải là một bức chân dung của một người Trung Quốc bình thường, cụ thể là, Mao Trạch Đông.

Theo chiếc xe có thể được xác định rằng nó là một đối tượng chuyển động, và nó là khó khăn, mà không bị biến dạng trong phong trào. Về cờ có thể nói rằng nó đối tượng, họ cũng đang di chuyển, nhưng họ không phải là khó khăn, thường xuyên bị biến dạng. Và trong bối cảnh đó có gió, có thể được xác định bằng cách phát triển cờ, và thậm chí có thể xác định hướng của gió, ví dụ, nó được thổi từ trái sang phải.

Khoảng cách và độ dài trong computer vision

Rất quan trọng là thông tin số liệu về khoa học computer vision. Đây là tất cả các loại khoảng cách. Ví dụ, đối rover là đặc biệt quan trọng bởi vì các đội bóng đến từ Trái Đất khoảng 20 phút và trả lời càng nhiều. Theo đó, liên kết đó và trở lại - 40 phút. Và nếu chúng ta thực hiện một kế hoạch cho các lệnh chuyển động của Trái đất, bạn cần phải thực hiện việc này vào tài khoản.

tích hợp thành công công nghệ của computer vision trong các trò chơi video. Theo đoạn video, bạn có thể xây dựng mô hình ba chiều của các đối tượng, con người, và hình ảnh trên người dùng có thể khôi phục các mô hình ba chiều của thành phố. Và sau đó đi bộ trên chúng.

computer vision - một phạm vi khá rộng. Nó được đan xen vào nhau chặt chẽ với các ngành khoa học khác nhau. Một phần của computer vision Nó chụp khu vực xử lý hình ảnh và đôi khi phân bổ computer vision, về mặt lịch sử.

Phân tích, nhận dạng mẫu - đường dẫn đến việc tạo ra trí thông minh vượt trội

Chúng ta hãy xem xét các khái niệm riêng biệt.

Xử lý hình ảnh - đây là lĩnh vực của các thuật toán, trong đó các đầu vào và đầu ra - hình ảnh, và chúng tôi có anh ấy làm điều gì đó.

phân tích hình ảnh - là khu vực của tầm nhìn máy tính, trong đó tập trung vào làm việc với hình ảnh hai chiều và đưa ra kết luận từ này.

Pattern Recognition - một kỷ luật toán học trừu tượng mà nhận dữ liệu dưới dạng vector. Đó là, ở lối vào - vector và chúng tôi có một cái gì đó để làm với nó. Trong trường hợp các vector là, chúng tôi không quá quan trọng để biết.

computer vision - nó ban đầu là để khôi phục lại cấu trúc của hình ảnh hai chiều. Hôm nay khu vực này đã trở thành rộng hơn và nó có thể được hiểu là sự chấp nhận tất cả các đối tượng vật lý làm, dựa trên hình ảnh. Có nghĩa là, nó là nhiệm vụ của trí tuệ nhân tạo.

Song song với computer vision trong một lĩnh vực hoàn toàn khác nhau, chuyên ngành đo đạc, trắc đã phát triển - một phép đo của khoảng cách giữa các đối tượng trên hình ảnh hai chiều.

Robot có thể "nhìn thấy"

Và cuối cùng - đây là thị giác máy. Theo tầm nhìn máy có nghĩa là tầm nhìn của robot. Đó là quyết định của một số vấn đề sản xuất. Chúng tôi có thể nói rằng computer vision - là một trong những khoa học lớn. Nó kết hợp một số phần khoa học khác. Và khi computer vision được bất kỳ ứng dụng cụ thể, nó biến thành một tầm nhìn máy.

khu vực thị giác máy tính có một khối lượng của các ứng dụng thực tế. Nó được kết hợp với tự động hóa sản xuất. Tại các doanh nghiệp trở nên hiệu quả hơn để thay thế lao động thủ công bằng máy. Máy không cảm thấy mệt mỏi, không ngủ, cô có lịch làm việc bất thường, cô sẵn sàng làm việc 365 ngày một năm. Vì vậy, bằng cách sử dụng máy làm việc, chúng ta có thể có được một kết quả được bảo đảm tại một thời điểm nhất định, và nó là khá thú vị. Tất cả các nhiệm vụ có sử dụng rõ ràng cho các hệ thống computer vision. Và không có gì là tốt hơn so với để xem kết quả ngay lập tức trên các bức tranh chỉ trong giai đoạn tính toán.

Trên ngưỡng cửa của thế giới của trí tuệ nhân tạo

Ngoài ra khu vực này - thật khó! Một phần quan trọng của não chịu trách nhiệm về tầm nhìn, và người ta tin rằng nếu bạn dạy cho máy tính của bạn "nhìn thấy", đó là, tầm nhìn sử dụng máy tính đầy đủ, nó là một trong những mục tiêu của đầy đủ trí tuệ nhân tạo. Nếu chúng ta có thể giải quyết vấn đề trên bình diện con người, hầu như cùng một lúc, chúng tôi sẽ giải quyết vấn đề của AI. Đó là rất tốt! Hoặc không phải là rất tốt, nếu bạn nhìn, "Terminator 2".

Tại sao là tầm nhìn - đó là khó khăn? Bởi vì hình ảnh của cùng một đối tượng có thể thay đổi rất nhiều tùy thuộc vào các yếu tố bên ngoài. Tùy thuộc vào đối tượng của điểm quan sát trông khác.

Ví dụ, một và con số tương tự, lấy từ góc độ khác nhau. Và những gì là thú vị nhất trong hình có thể là một mắt, hai mắt và một nửa. Và tùy thuộc vào bối cảnh (nếu hình ảnh này của người đàn ông trong chiếc áo sơ mi với đôi mắt vẽ), mắt có thể có nhiều hơn hai.

Các máy tính vẫn không hiểu, nhưng nó "nhìn thấy"

Một yếu tố khác mà làm cho nó khó khăn - đó là ánh sáng. Cùng một cảnh với ánh sáng khác nhau sẽ khác. kích thước đối tượng có thể khác nhau. Hơn nữa, các đối tượng của lớp nào. Làm thế nào bạn có thể nói về một người đàn ông mà chiều cao của mình 2 mét? Không có gì. tốc độ tăng trưởng của con người và có thể 2,3 m và 80 cm. Cũng như các loại khác của các đối tượng, tuy nhiên, là đối tượng của lớp tương tự.

Đặc biệt là đối tượng sống trải qua nhiều chủng. Tóc người, vận động viên, động vật. Nhìn vào hình ảnh của những con ngựa chạy, xác định những gì đang xảy ra với bờm và đuôi chỉ đơn giản là không thể. Một đối tượng chồng chéo trong một hình ảnh? Nếu bạn xô một hình ảnh máy tính, ngay cả những máy mạnh nhất tìm thấy khó khăn để cung cấp cho các quyết định đúng đắn.

Xem tiếp - đó là một ngụy trang. Một số đối tượng, vật giả mạo như môi trường, và khá khéo léo. Và những điểm giống nhau và màu. Tuy nhiên, chúng tôi nhìn thấy chúng, mặc dù không phải lúc nào từ xa.

Một vấn đề khác - phong trào. Các đối tượng trong chuyển động không thể tưởng tượng trải qua biến dạng.

Nhiều người trong số các đối tượng là rất khác nhau. Ở đây, ví dụ, trong hai bức ảnh dưới đây các đối tượng của "ghế".

Và về vấn đề này bạn có thể ngồi. Tuy nhiên, để dạy cho một máy, sao cho những điều khác nhau về hình dạng, màu sắc, vật liệu, tất cả mọi thứ là một đối tượng "ghế" - là rất khó khăn. Đây là thách thức. Thực hiện lồng ghép các phương pháp của computer vision - là để dạy cho một máy tính để hiểu, phân tích, suy đoán.

Lồng ghép computer vision trong các nền tảng khác nhau

Khối lượng của computer vision bắt đầu thâm nhập hơn vào năm 2001, khi ông đã tạo ra các máy dò khuôn mặt đầu tiên. Chúng tôi đã làm cho nó hai tác giả: Viola, Jones. Đó là nhanh chóng và đáng tin cậy thuật toán đủ đầu tiên, chứng minh sức mạnh của phương pháp học máy.

Bây giờ computer vision có đủ ứng dụng thực tế mới - sự thừa nhận khuôn mặt của con người.

Tuy nhiên, để nhận ra người đàn ông như trong phim - ở góc độ ngẫu nhiên, điều kiện ánh sáng khác nhau - đó là không thể. Tuy nhiên, để giải quyết vấn đề, hoặc một trong đó là những người khác nhau với ánh sáng khác nhau hoặc trong một tư thế khác nhau, tương tự như trong các bức ảnh trong hộ chiếu, có thể với một mức độ cao của sự tự tin.

một yêu cầu bức ảnh hộ chiếu chủ yếu là do các tính năng của các thuật toán nhận dạng khuôn mặt.

Ví dụ, nếu bạn có một hộ chiếu sinh trắc học, trong một số sân bay hiện đại, bạn có thể sử dụng hệ thống kiểm tra hộ chiếu tự động.

vấn đề chưa được giải quyết của computer vision - khả năng nhận ra bất kỳ văn bản

Có lẽ ai đó đã sử dụng hệ thống OCR. Một trong số đó - một Reader Fine, là rất phổ biến trong hệ thống RuNet. Có nhiều hình thức nơi bạn điền thông tin vào dữ liệu, chúng được quét một cách hoàn hảo, các thông tin được công nhận bởi hệ thống rất tốt. Nhưng với bất kỳ văn bản trong hình tình hình còn tồi tệ hơn nhiều. Vấn đề này vẫn chưa giải quyết.

Trò chơi liên quan đến computer vision, chụp chuyển động

diện tích lớn riêng biệt - là việc tạo ra các mô hình ba chiều và chụp chuyển động (được thực hiện khá thành công trong các trò chơi máy tính). Chương trình đầu tiên, trong đó sử dụng computer vision - một hệ thống tương tác với máy tính bằng cử chỉ. Khi nó được tạo ra đó là rất nhiều thứ mở.

Các thuật toán được thiết kế khá đơn giản, nhưng để cấu hình nó mất để tạo ra một máy phát hình ảnh tổng hợp của mọi người để có được một triệu hình ảnh. Siêu máy tính với họ để lựa chọn các thông số của thuật toán, mà giờ đây ông hoạt động tốt.

Đó là một triệu hình ảnh và tuần thời gian siêu máy tính đếm được có thể tạo ra một thuật toán tiêu thụ 12% năng lực của một bộ xử lý và cho phép một người để cảm nhận được vị trí trong thời gian thực. Hệ thống này Microsoft Kinect (2010).

Tìm kiếm hình ảnh bằng nội dung cho phép bạn tải ảnh lên hệ thống, và kết quả của nó sẽ cung cấp cho tất cả các hình ảnh với cùng một nội dung và được làm từ cùng một góc.

Ví dụ về computer vision: ba chiều và bản đồ hai chiều đang được thực hiện với nó. Maps cho xe ô tô điều hướng được cập nhật thường xuyên theo quy định của DVR.

Có một cơ sở dữ liệu với hàng tỷ hình ảnh gắn thẻ địa lý. Bằng cách tải về các hình ảnh trong cơ sở dữ liệu, bạn có thể xác định nơi nó đã được thực hiện, và thậm chí cả với một số quan điểm. Tất nhiên, với điều kiện nơi này là đủ để phổ biến tại một thời điểm khách du lịch và thực hiện một số hình ảnh của khu vực này đã có.

robot là ở khắp mọi nơi

Robotics tại thời điểm hiện tại, ở khắp mọi nơi, mà không có nó trong bất kỳ cách nào. Bây giờ có những phương tiện có máy ảnh đặc biệt mà nhận ra người đi bộ và biển báo giao thông để truyền lệnh cho người lái xe (điều này theo một cách một chương trình máy tính để xem, giúp người lái xe). Và có một hoàn toàn tự động xe robot, nhưng họ không thể chỉ dựa vào hệ thống máy quay phim mà không cần dùng một lượng lớn thông tin bổ sung.

camera hiện đại - đây là một buồng tối tương tự

Hãy nói về những hình ảnh kỹ thuật số. máy ảnh kỹ thuật số hiện đại được bố trí trên nguyên tắc của buồng tối. Chỉ thay vì lỗ mà qua đó ánh sáng đi vào chùm và chiếu lên bức tường phía sau của buồng của mạch chủ, chúng tôi có một hệ thống quang học đặc biệt gọi là các ống kính. đối tượng của nó là để thu thập một chùm ánh sáng lớn và chuyển đổi nó để tất cả các tia đi qua một điểm ảo để có được chiếu và hình thành một hình ảnh trên phim hay ma trận.

máy ảnh kỹ thuật số hiện đại (ma trận) bao gồm các yếu tố cá nhân - pixel. Mỗi pixel có thể đo năng lượng của ánh sáng đó là sự cố trên tổng pixel, và phát hành một số đầu ra. Do đó, trong một máy ảnh kỹ thuật số, chúng tôi nhận thay vì độ sáng hình ảnh đo bộ ánh sáng, bị bắt trong một pixel - máy tính lĩnh vực xem. Vì vậy, khi hình ảnh chúng ta thấy không chảy dòng và đường nét rõ ràng, và một mạng lưới các ô vuông màu trong màu sắc khác nhau - pixel.

Dưới đây bạn thấy hình ảnh kỹ thuật số đầu tiên trên thế giới.

Nhưng trong bức tranh này không? Màu sắc. màu là gì?

nhận thức tâm lý của màu sắc

Màu - đây là những gì chúng ta thấy. Màu sắc của một và điều tương tự đối với con người và mèo sẽ khác nhau. Vì chúng ta (con người) và hệ thống quang học động vật - tầm nhìn là khác nhau. Do đó, màu sắc - đó là chất lượng tâm lý của tầm nhìn của chúng tôi xảy ra khi quan sát các đối tượng và ánh sáng. Và không phải là một tài sản vật chất của đối tượng và ánh sáng. Màu - là kết quả của sự tương tác của các thành phần ánh sáng, và các cảnh của hệ thống thị giác của chúng tôi.

Lập trình Tầm nhìn máy tính bằng Python sử dụng thư viện

Nếu bạn đã quyết định tham gia nghiêm túc trong việc nghiên cứu computer vision, ngay lập tức nên chuẩn bị cho một số khó khăn, khoa học này không phải là dễ nhất và ẩn một số cạm bẫy. Nhưng "Lập trình máy tính Vision trên Python" mà tác giả Jan Erik Solema - một cuốn sách phác thảo tất cả các ngôn ngữ đơn giản nhất. Ở đây bạn sẽ được làm quen với các phương pháp nhận dạng của các đối tượng khác nhau trong không gian 3D, học cách làm việc với hình ảnh âm thanh nổi, thực tế ảo và nhiều ứng dụng khác của computer vision. Trong cuốn sách là đủ ví dụ trong Python. Nhưng những lời giải thích được đưa ra, có thể nói, khái quát hóa, để không làm quá tải quá nhiều nghiên cứu và dữ liệu cứng. Làm việc phù hợp cho sinh viên, tài tử, và những người đam mê. Tải về cuốn sách này và người khác về computer vision (pdf-định dạng) có thể được trong mạng.

Tại thời điểm này, có những thư viện mã nguồn mở của các thuật toán tầm nhìn máy tính và xử lý hình ảnh và các thuật toán số OpenCV. Nó được thực hiện trên hầu hết các ngôn ngữ lập trình hiện đại, là nguồn mở. Nếu chúng ta nói về computer vision, Python sử dụng như một ngôn ngữ lập trình, nó cũng có sự hỗ trợ của thư viện, ngoài ra, nó là không ngừng phát triển và có một cộng đồng lớn.

Các công ty "Microsoft" cung cấp dịch vụ của mình Api-thể để đào tạo các mạng thần kinh để làm việc đó với hình ảnh của người dân. Ngoài ra còn có cơ hội để áp dụng computer vision, Python sử dụng như một ngôn ngữ lập trình.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 vi.delachieve.com. Theme powered by WordPress.