2009-09-04 25 views
7

Tôi đang tìm cách định vị thiết bị iPhone trong không gian 3D.Làm thế nào để phát hiện chiều cao của iPhone (để sử dụng trong trò chơi tăng cường thực tế)?

Tôi có thể dùng lat/long để phát hiện vị trí vật lý, tôi có thể sử dụng từ kế để tìm ra hướng mà chúng đang đối mặt và tôi có thể sử dụng gia tốc kế để tìm hiểu cách thiết bị của chúng định hướng. không thể tìm ra cách để lấy chiều cao của thiết bị khỏi sàn.

Cụ thể, tôi cần biết liệu người dùng có đang ngồi xổm xuống hay đưa tay lên trần nhà (khoảng cách 2 mét/6 feet).

tôi đã đăng một bản mô tả chi tiết hơn về những gì tôi đang cố gắng để làm trên blog của tôi: http://pushplay.net/blog_detail.php?id=36

Tôi rất thích bất cứ đề nghị như thế nào để thậm chí giả mạo này loại thông tin. Tôi thực sự muốn các loại tương tác và chuyển động mà sẽ yêu cầu ducking và bobbing, so với chỉ cho phép một người nào đó ngồi lại và ... Điện thoại

+0

không GPS cung cấp cho bạn chiều cao? Tôi nghĩ rằng nó đã làm (Edit): Tôi có nghĩa là độ cao ... Tôi nghĩ GPS sẽ trả lại dữ liệu độ cao –

+1

vấn đề, tôi nghĩ rằng sẽ được trong việc xác định nơi "sàn" là. Nếu người dùng ở Denver, tầng của họ cách mực nước biển khoảng 5.200 feet! –

+0

bạn sẽ không thể có được vị trí với bất kỳ loại độ chính xác hữu ích nào. có thể bạn có thể điều gì đó với tính năng nhận dạng/theo dõi tính năng, nhưng đó là một vấn đề khó khăn (tm) – hop

Trả lời

7

Tôi có thể thấy bạn nhận được những gì bạn đang tìm kiếm là sử dụng gia tốc kế/từ kế như một máy theo dõi quán tính. Bạn sẽ phải hiệu chỉnh vị trí ban đầu của người dùng khi khởi động đến một vị trí "cơ sở", sau đó liên tục lấy mẫu các cảm biến trên một sợi nền để xây dựng một mô hình chuyển động. This post nói về việc tăng tốc độ mẫu mặc định của các chức năng gia tốc để bạn có thể có được hình ảnh khá chi tiết về các chuyển động của người dùng.

Tôi không chắc chắn điều này sẽ giải quyết mối quan tâm của bạn về những người chỉ đơn giản là câu cá các thiết bị để sản xuất các hành động mong muốn, nhưng bạn sẽ phải cân bằng giữa quá khắt khe trong việc giải thích các phong trào và cho phép sự khác biệt trong phong trào

+0

Đó là nơi tôi đang nghiêng ngay bây giờ, trừ khi tôi có thể tìm thấy một giải pháp tốt hơn (okay, okay, dễ dàng hơn): -) Tôi cũng không chắc chắn nếu điều này sẽ xung đột với cách tôi sẽ đo góc của điện thoại ... rất nhiều biến để theo dõi! –

+0

ha ha yeah Tôi nghe ya. Nó không nên xung đột với các phép đo góc của bạn vì bạn đang đo (delta) x, (delta) y, và (delta) z để xây dựng bản đồ chuyển động của bạn. Ví dụ, nếu người dùng cần vẽ một analemma (dấu hiệu vô hạn), bản đồ được xây dựng từ việc so sánh các điểm được lấy mẫu theo thời gian tới một điểm và thời gian "bắt đầu" hợp lý. –

+0

nhận xét hay. Giải quyết vấn đề của tôi .... THanks budy – Saad

0

Tôi không quen thuộc với iphone. Nhưng nó có thể yêu cầu phần bổ trợ phần cứng. (mà bạn có thể không muốn làm). Sau khi suy nghĩ về điều này cách duy nhất tôi biết làm thế nào là thông qua ánh sáng hoặc laser cụ thể hơn. Bạn bắn ra một tia laser trên sàn nhà và ghi lại thời gian cần thiết để quay trở lại. Nó thực sự không phải là rất nhiều để đặt phần cứng này với nhau và tôi chắc chắn rằng iphone có kết nối cho thiết bị ngoại vi. Trừ khi osmeone có thể vượt qua tôi, tôi nói rằng không có cách nào để làm điều đó với một hình ảnh.

1

Các công cụ CoreLocation cung cấp cho bạn cao là tốt như lat/dài, do đó bạn có khả năng có thể sử dụng rằng mặc dù có một số vấn đề quan trọng với điều này:

  • sẽ không hoạt động tốt trong nhà (không phải là một vấn đề đối với Sat Nav , là một vấn đề đối với trò chơi)
  • Người dùng của bạn sẽ phải "hiệu chỉnh" (có thể bằng cách đặt điện thoại lên sàn) mỗi vị trí họ sử dụng!
  • Thực tế, bạn cần bắt đầu giữ một danh sách các "vị trí đã được hiệu chỉnh trước đó" ... có thể thay đổi rất nhiều chỉ trong một ngôi nhà (ví dụ: nhiều phòng và tầng). Có thể cản trở trò chơi.
  • Không thể sử dụng trên phương tiện di chuyển (cần cẩu, máy bay, ô tô ... ngay cả khi đi bộ) vì độ cao thay đổi thường xuyên.

Do đó tôi đã nghĩ rằng việc sử dụng gia tốc làm proxy cho chiều cao là một tuyến đường tốt hơn đáng kể so với việc xác định độ cao tuyệt đối.

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