2013-04-26 29 views
6

Tôi đang tìm cách tạo ống kính AR cho Windows Phone 8. Tôi đã phát về ống kính và chức năng của máy ảnh và điều này là tốt và tốt. Tôi có thể đặt các biểu tượng và hình ảnh trên màn hình và thao tác các ảnh đã chụp bằng điện thoại. Nhưng những gì tôi cần làm là để có thể đọc màn hình camera trong thời gian thực trước khi chụp được.Ống kính Windows Phone 8 tăng cường thực tế

Ví dụ: Face Lens phải quét màn hình trực tiếp, kiểm tra pixel tôi giả định, để tính toán mũi/mắt của ai đó để đặt mũi chú hề hoặc kính hoặc bất cứ thứ gì trên màn hình camera trực tiếp.

Tôi có thể làm điều này bằng hình ảnh, nhưng dường như không thể tìm cách truy cập khung hình hiện tại trong máy ảnh mà không chụp ảnh. Về cơ bản, tôi sẽ muốn quét từng pixel mỗi khung được hiển thị trong ứng dụng máy ảnh. Tôi biết có thể, các ống kính khác làm điều này, nhưng tôi nên tìm cách nào để tìm phương pháp truy cập chính xác.

Trả lời

5

Điều này chắc chắn có thể xảy ra. Chìa khóa để làm điều này là sử dụng chức năng PhotoCamera.GetPreviewBufferArgb32().

Ý tưởng cơ bản là lấy bộ đệm xem trước từ đối tượng PhotoCamera. Điều này được thực hiện như sau:

int[] pixelData = new int[(int)(camera.PreviewResolution.Width * camera.PreviewResolution.Height)]; 
camera.GetPreviewBufferArgb32(pixelData); 
return pixelData; 

Điều này giúp bạn có được hình ảnh giống như không nén. Sau đó, bạn có thể truy cập dữ liệu đó để xác định các đối tượng địa lý hoặc để vẽ các đối tượng bổ sung vào đó.

Sau khi sửa đổi các dữ liệu, đẩy nó vào một WriteableBitmap() để hiển thị nó như thế này:

int[] previewBuffer = GetPreviewBuffer(); 
pixelData.CopyTo(previewWriteableBitmap.Pixels, 0); 
previewWriteableBitmap.Invalidate(); 

SỰ TỪ BỎ: Hầu hết các này được lấy từ các Live Camera example qua tại Microsoft. Hãy chắc chắn cũng có một cái nhìn tại Greyscale Camera example, đặc biệt là để xử lý các sự kiện kết hợp với chụp ảnh.

+1

Câu trả lời xuất sắc, tìm kiếm ở khắp mọi nơi để lấy mẫu này nhưng không có gì. Nhiều đánh giá cao. – anothershrubery

+0

Cảm ơn, và bạn được chào đón! – likeitlikeit

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