2012-03-04 25 views
9

Tôi muốn lập trình với máy ảnh Kinect ToF, tuy nhiên tôi không chắc chắn về các yêu cầu phần cứng và phần mềm để làm như vậy. Tôi đã đi qua một số bài báo/sách bao gồm chủ đề này, nhưng có vẻ là một số mâu thuẫn đã khiến tôi hơi bối rối.Yêu cầu đối với lập trình Kinect

Câu hỏi

  1. gì sản phẩm Kinect sao tôi cần phải mua để đảm bảo rằng tôi có tất cả các thành phần cần thiết để sử dụng nó để phát triển phần mềm trên một máy tính? (nghĩa là tất cả các cáp được bao gồm "trong hộp")

  2. Yêu cầu phần cứng của hệ thống phát triển (cpu, ram, v.v ...) là gì?

  3. Trình điều khiển, khung phát triển và các thành phần phần mềm khác để phát triển Kinect là gì? Từ đây, những gì cần thiết, những gì được khuyến khích mạnh mẽ, và những gì là tùy chọn?

Xin lưu ý rằng tôi không muốn bị khóa khi phát triển trong môi trường Windows, mặc dù tôi muốn có tùy chọn làm như vậy. Tôi cũng không có ý định phát triển các ứng dụng thương mại tại thời điểm này.

+0

Tôi đang xem xét phần mềm đang phát triển sử dụng sản phẩm phần cứng của Microsoft và tôi không muốn bị khóa vào môi trường phát triển Windows. – Josh

+0

"Tin tức ngày hôm qua": một trình điều khiển mở cho Kinect đã được phát triển. – Josh

+0

"Ma thuật" của nguồn mở: http://en.wikipedia.org/wiki/Kinect#Open_source_drivers – Josh

Trả lời

14
  1. Bộ cảm biến Kinect là tất cả những gì bạn cần và theo mặc định nó bao gồm usb. Bạn sẽ không cần phải mua Xbox360 trừ khi bạn muốn chơi Kinect Adventures :)
  2. Tôi không hoàn toàn chắc chắn về yêu cầu phần cứng, vì nó một chút trên hệ điều hành và thư viện/trình điều khiển/ngôn ngữ bạn sử dụng , nhưng nó không phải là một mối quan tâm lớn. Tôi đang sử dụng của tôi trên một máy tính xách tay cũ (macbook từ năm 2008 với 2GB RAM, bộ xử lý 2,1 GHz và card video tích hợp thực sự xấu) mà không có vấn đề gì.
  3. Có khá nhiều sự lựa chọn, vì vậy tôi sẽ liệt kê chúng rống lên

Drivers/thư viện:

  1. Như p.campbell đã đề cập, Official Kinect SDK là một lựa chọn. Với điều đó, bạn có khá nhiều tính năng avialable như theo dõi bộ xương và nhận dạng giọng nói, nhưng bạn bị ràng buộc với Windows và .NET.

  2. một lựa chọn khác là opensource OpenKinect/libreenect lái xe mà chạy trên OSX/Windows/Linux và có giấy gói cho một vài ngôn ngữ khá (như actionscript, C#, java, matlab, python, ruby, vv.), nhưng trong tâm trí này cho phép truy cập vào thiết bị (dữ liệu rgb/depth/ir, dữ liệu gia tốc, truy cập dẫn động/động cơ), nhưng không bao gồm các thuật toán phức tạp như nhận dạng khung/nhận dạng giọng nói.

  3. tùy chọn mã nguồn mở khác là OpenNI (chạy trên linux/windows/osx) cho phép bạn truy cập dữ liệu rgb/depth/ir, nhưng hiện tại không có triển khai cho motor/led/accelerometer/audio. Tuy nhiên, nó bao gồm theo dõi bộ xương, theo dõi tay và cũng nhận dạng cử chỉ. Bạn có thể sử dụng OpenNI với C/C++/Java /.net/Unity3D

Nếu bạn đang sử dụng để các môi trường mã hóa sáng tạo, có giấy gói đối với hầu hết trong số họ cũng:

Tùy thuộc vào tính năng OS/ngôn ngữ và Kinect bạn cần sử dụng, bạn có thể chọn lựa.

Cũng lưu ý rằng nếu bạn có thể sử dụng OpenNI với các máy ảnh độ sâu khác như Asus Xtion.

+0

Tôi ngạc nhiên khi bạn không đề cập đến Kinect cho Windows, tốt nhất tôi có thể nói, sẽ CHỈ làm việc với chính thức Kinect SDK cho ngay bây giờ. Tôi tin rằng nó có Firmware khác với cảm biến XBOX Kinect mà mọi người đã sử dụng đến tận bây giờ. – Derek

+0

@Derek Tôi không sử dụng Xbox Kinects với Kjnect cho các cửa sổ –

+0

Tôi đang sử dụng Khối Kinect cho Cinder và nó biên dịch, nhưng nó sẽ không nhận ra kinect. – Kat

1
  1. Kinect đi kèm với tất cả các loại cáp cần thiết, bạn chỉ cần mua nguồn điện nếu bạn đã có một Kinect mà không cần một nguồn cung cấp năng lượng
  2. Nếu bạn đi cho sdk Kinect microsoft có tất cả các yêu cầu về họ website
    3.Tôi thực sự là lựa chọn của bạn, nếu bạn tìm kiếm các chương trình kinect hoặc một cái gì đó để có hiệu lực nó sẽ đến với rất nhiều. bạn chỉ cần chọn cái nào phù hợp với bạn nhất

Hope this helps

3
  1. Có hai loại Kinect Sensor: Sensor Kinect cho Xbox và các cảm biến Kinect cho Windows.If bạn alreay có Xbox và phụ kiện Kinect Sensor cho XBox, bạn có thể sử dụng nó. Nếu bạn muốn phát triển thương mại, bạn nên mua Kinect Sensor cho Windows. Cảm biến Kienct cho Windows có một số tính năng tuyệt vời như Near Model trong khi Kinect Sensor cho XBox không có. Và Kinect Sensor cho Windows tương thích hơn với SDK Kinect chính thức.

  2. tôi phát triển các ứng dụng Kinect trên Windows và yêu cầu hệ thống tối thiểu là:

    • Windows 7, Windows 8, Windows Embedded Standard 7, hoặc Windows Embedded POSReady 7.
    • 32 bit (x86) hoặc 64 bit (x64) xử lý
    • dual-core 2.66-GHz hoặc bộ xử lý nhanh hơn
    • chuyên dụng USB 2.0 bus
    • 2 GB RAM

    Tôi không quen với nền tảng khác, nhưng tôi nghĩ rằng các yêu cầu phần cứng ít nhiều giống nhau.

  3. Đối với người lái xe, như xa như tôi biết, có hai người lái xe phổ biến cho các bộ cảm biến Kinect: Official Kinect SDK và PrimeSense OpenNI, hai tài xế cung cấp api rằng has their own characteristics, nhưng có một số lời khuyên về cái nào nên tốt nhất tại một số trường hợp :

    • Nếu bạn đang muốn phát triển ứng dụng Kinect trên nền tảng Windows, tôi mạnh khuyên bạn sử dụng Kinect SDK cho Windows 1.6.It mới nhất có plent của bộ phim tài liệu và Demo int các DevelopToolKit, và có Kinect Studio giúp bạn để gỡ lỗi trong quá trình đăng ký. Trang web Channel9 có một khối đặc biệt trên Phát triển Kinect có rất nhiều ví dụ và ý tưởng về phát triển Kinect. Kinect SDK cho Windows 1.6 hỗ trợ HĐH Windows 7/Windows 8. Hạn chế duy nhất là Kinect SDK chỉ hỗ trợ nền tảng Windows. Nhưng từ SDK 1.6, nó hỗ trợ các cửa sổ chạy trên máy ảo như Microsoft HyperV, VMWare và Parallels.

    • Nếu bạn muốn phát triển trên nền tảng khác, OpenNI có thể là lựa chọn tốt nhất.

3

Theo thí nghiệm của tôi trên môi trường Linux ARM dựa, 720 MHz + CPU lõi đơn là đủ cho bỏ phiếu chỉ liên tục các dữ liệu và đọc thuộc tính của nó. Cần ít nhất 1,5 GHz CPU để lấy dữ liệu độ sâu vào RAM và xử lý nó về cơ bản. Tôi đang sử dụng lõi kép OMAP-4 Core (1,2 GHz mỗi). Trên thực tế, sức mạnh quá trình này là đủ cho tôi để lấy sâu + dữ liệu hình ảnh, downsample/nén chúng (với mất mát) và gửi chúng qua TCP/UDP.

Có nhiều thư viện khác nhau cho Kinect. MS SDK và OpenNI là những cái phổ biến nhất. Nếu bạn sẽ sử dụng môi trường Linux, tôi sẽ đề nghị OpenNI.

Tôi đã chuẩn bị hướng dẫn cài đặt này. Bạn có thể kiểm tra tại http://denizbeker.blogspot.com/2013/08/pandaboard-es-openni-kinect-ubuntu.html

+0

Các câu trả lời liên kết đến các trang web khác mà không tóm tắt nội dung được khuyến khích trên Stack Overflow, vì không có bảo đảm rằng trang web sẽ vẫn trực tuyến trong tương lai. Bạn có thể chỉnh sửa bài đăng của mình để tóm tắt nội dung không? –

+1

Thực ra tôi đã tóm tắt nội dung. Liên kết bên ngoài mà tôi đã đưa ra là dành cho hướng dẫn chi tiết. –

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