Trả lời

14

Tôi không nghĩ rằng có bất kỳ cách nào để sử dụng openCV trong JS ngoài việc liên lạc với máy chủ có openCV trên đó và thực hiện việc xử lý ở đó.

Có một khuôn mặt phát hiện algo trong JS mà tôi biết: http://badassjs.com/post/1461943420/face-detection-in-javascript-via-html5-canvas

+0

Vâng, tốt đẹp) – Bohdan

+0

bạn có biết cách nào để truy cập máy ảnh từ js không? – Bohdan

+1

@BohdanVoloshyn tham khảo getUSerMedia (webrtc) – Ram

26

OpenCV chưa bao giờ được chuyển đến JavaScript trong toàn bộ, nhưng bộ phận riêng biệt và các thuật toán có:

  • Đối mặt và mặt yếu tố phát hiện (và các bộ phận/đối tượng khác), bạn có thể sử dụng js-objectdetect hoặc HAAR.js là các cổng của Phát hiện đối tượng OpenCV dựa trên Haar Feature Cascades.

  • Đầu tiên phát hiện khuôn mặt thuật toán trên web được tìm thấy trong ccv cũng đáng được đề cập. Phân loại của nó có vẻ là less reliable so với cái được cung cấp bởi OpenCV.

  • Các headtrackr thư viện sử dụng cho facetracking cũng có thể quan tâm vì nó thực hiện các thuật toán camshift cũng được tìm thấy trong OpenCV.

+1

+1 cho headtrackr: các sự kiện cung cấp API hoặc thiết kế theo dõi khuôn mặt (vị trí, chiều rộng, chiều cao, góc), theo dõi đầu (vị trí liên quan đến máy ảnh) và trạng thái (getUserMedia có sẵn, phát trực tuyến, khuôn mặt phát hiện, redetection, vv) –

14

Tôi không biết một thực hiện đầy đủ OpenCV trong Javascript, tuy nhiên một số lượng tốt của các thuật toán từ nó được thực hiện trong JSFeat mà là một thư viện Computer Vision trong Javascript.

Tôi tin rằng có thể biên dịch các bit của OpenCV với emscripten, nhưng theo như tôi biết, không ai làm điều đó.

+0

lib hữu ích, tuy nhiên tôi muốn phát hiện khuôn mặt khi tôi đã phải sử dụng OpenCV – Bohdan

+0

bạn có thể thích một cái gì đó như http://neave.github.io/face-detection/ sau đó (mặc dù máy dò haar trong jsfeat có thể được sử dụng để phát hiện khuôn mặt). – kybernetikos

+0

và thậm chí còn chạy ví dụ về điều đó: http://inspirit.github.io/jsfeat/sample_haar_face.html –

17

Tôi khuyên bạn nên OpenCVjs. Đây là thư viện OpenCV javascript.

+0

Quá xấu tất cả bằng tiếng Nhật !? – Domi

+1

Đây là phiên bản tiếng Anh của Đại học California Irvine: https://github.com/ucisysarch/opencvjs –

+0

@Kevin Wu, tử tế! Điều này nên là một câu trả lời :-) Tôi không có câu hỏi được đóng lại:/ –

6

Repo tuyệt vời cho điều đó ở đây: https://github.com/peterbraden/node-opencv Dường như không có chức năng mở đầy đủ, nhưng có khả năng nhận diện khuôn mặt và hỗ trợ tuyệt vời cho luồng hình ảnh đến từ các nguồn như máy bay không người lái.

2

Liên quan đến câu hỏi thứ hai của bạn clmtrackr có vẻ rất hứa hẹn. Nó ...

... là thư viện javascript để lắp các mô hình khuôn mặt vào khuôn mặt trong video hoặc hình ảnh. Hiện tại, nó đang triển khai các mô hình địa phương bị hạn chế được trang bị bởi sự thay đổi trung bình của mốc, như được mô tả trong bài báo của Jason M. Saragih. clmtrackr theo dõi một khuôn mặt và xuất các vị trí tọa độ của mô hình khuôn mặt thành một mảng.

Hãy thử xem this example để xem mô hình của họ.

13

Chuyển OpenCV sang Javascript sẽ có thể thực hiện được bằng cách sử dụng asm.js mà có thể biên dịch C hoặc C++ để Javascript

mất Một: OpenCV được chuyển đến Chrome Native Client: http://opencv.org/opencv-ported-to-google-chrome-nacl-and-pnacl.html

+0

Đây phải là câu trả lời hàng đầu. Đó là một bất lợi của StackOverflow, thay đổi công nghệ/thông tin theo thời gian. – Todd

+0

https://groups.google.com/forum/#!topic/emscripten-discuss/uaRH2R62WOk – Todd

2

Ngoài những đề cập, có repo khác cho "opencvjs"

https://github.com/blittle/opencvjs

Có một chút không rõ ràng trong số đó (nếu có) được coi là kinh điển

+0

không ai trong số họ, họ là tất cả bên thứ 3 – berak

Các vấn đề liên quan