2017-01-24 1 views
2

Google은 자체 Android 기반 하드웨어를 개발 중이며 특정 애플리케이션에 대해서는 Vuforia (Unity3D를 통해 개발 됨)를 사용하고자합니다. 그러나 Vuforia가 현재의 카메라 방향 설정과 잘 작동하는 데 문제가 있습니다.Android & Vuforia에서 카메라 방향이 잘못되었습니다.

하드웨어에서 카메라를 수평으로 놓으면 잘 작동합니다. 즉, 카메라가 디스플레이의 배치와 평행 한 경우입니다. 그러나 우리는 카메라를 수직으로, 즉 디스플레이의 배치와 90도 차이를두고 배치해야합니다. 이것들은 모두 하드웨어 설정입니다. 우리의 커널은 이러한 설정에 따라 프로그래밍되며 카메라를 사용하는 모든 프로그램은 IMU 센서를 포함한 모든 것과 호환됩니다. 그러나 Vuforia로 개발 된 앱은 카메라를 수직으로 배치하면 완전히 이상하게 작동합니다.

우리는 문제가 원시 카메라 데이터를 처리하는 Vuforia의 알고리즘과 관련이 있다고 가정하지만 확신 할 수 없습니다. 더욱이 우리는 상황을 어떻게 고칠 지 모른다. 자세한 내용은 다음 목록을 참조하십시오.

"비디오 배경 활성화"가 켜져 있으면 투사 된 이미지가 왜곡되어 비디오를 사용할 수 없습니다. AR 투영은 왜곡 된 치수가있는 검정색 배경에 나타납니다.

- "비디오 배경 활성화"가 켜져 있고 장치가 회전하면 검정색 배경이 단색으로 깜박입니다.

"비디오 배경 활성화"가 해제되어있는 경우 AR 투영은 일반적인 크기 (왜곡 없음)이지만 잘못된 축 설정으로 추적됩니다. 예를 들어, 대상이 실세계에서 왼쪽으로 이동하면 투영이 위로 이동합니다.

"비디오 배경 활성화"가 꺼져 있고 장치가 회전하면 장치가 기본 상태 일 때 AR 투영이 모양보다 큽니다.

더 많은 정보를 제공해 드릴 수있어서 기쁩니다.

대단히 감사합니다. 좋은 하루 되세요.

추 신 : 카메라를 주된 목적으로 사용하는 응용 프로그램 (카메라 응용 프로그램, 바코드 스캐너 등)은 잘 작동하지만 카메라 사용이 특별한 품질 (예 : 일부 게임) 인 응용 프로그램은 동일합니다 Vuforia로서의 문제. 따라서 카메라에 직접 액세스하는 앱은 제대로 작동하지만 안드로이드 API 및 클래스를 사용하는 앱은 어떤 이유로 실패합니다.

답변

1

처음에는 모든 플랫폼이 카메라를 다르게 처리한다는 점을 이해하고이 Android 휴대 전화 제조업체를 넘어서서 다양한 방식으로 이러한 사항을 다룹니다. 내 테스트에서 vuforia없이 나는 비행기 피드를 0, -90,90 android/iphone 및 -270, -90,90 Windows 표면 타블렛으로 변환해야했습니다. 과거 아이폰의 후면 카메라는 미러링되었고, 안드로이드 프론트 카메라는 표면의 전면 카메라와 마찬가지로 미러링되었습니다. 그것은 설명하기 쉽지만 성가신 문제는 Google Pixel과 삼성 프론트 카메라가 y 카메라를 통해 미러링되었지만 (뒷면 카메라의 모든 iOS와 마찬가지로) 넥서스 6p는 x에서 미러링되었습니다. 내가 여기서 얻고 자하는 것은 안드로이드로 설명 할 장치가 너무 많아서 단지 하나의 장치 이상을 시험해 보는 것이다. 지금까지 Vuforia는 내 픽셀과 4 대의 iOS 장치를 처리했습니다. 문제를 해결하는 방법에 관해서는

는 :

는 단결 플레이어 설정으로 이동 방향을 확인합니다. 여기에 몇 가지 옵션이 있는데 내 응용 프로그램은 초상화 만 사용하므로 제대로 작동하는 것처럼 보입니다 (위에서 언급 한 시나리오를 고려해야하는 문제는 아님).Vuforia는 이전에 자동 회전 기능을 지원하지 않았으므로 최신 버전이 필요한지 확인해야합니다. 자동 회전이 설정되어 있고 제대로 작동하지 않는 경우 해당 특정 장치를 고려해야 할 수 있습니다. 이러한 장치를 테스트 할 때까지 모든 장치에서이 작업을 수행하지 마십시오. 해당 장치를 설명하기 위해 if를 사용하거나 다른 장치에서이 문제의 인스턴스가 여러 개있는 경우 case 문을 작성한 다음 필요에 따라 반영하거나 변환하십시오. 기본적으로 표준이 없기 때문에 통합 플랫폼과 같은 크로스 플랫폼 개발 시스템은 항상 완벽한 것을 얻지는 못합니다. 이러한 경우에는 필요한 모든 장치를 깔끔하게 모듈 방식으로 조작 할 수 있도록 메서드와 사례 문을 만들어 해당 계정을 직접 계산해야합니다. 고통이지만, 모든 장치를 별도로 개발하는 것보다 좋습니다.

카메라 거울 및 방향 설정과 같은 몇 가지 설정이 있으므로 vuforia 구성 파일을 한 번 더 확인하십시오. 이것들은 공개 설정 인 것처럼 보이므로 하나의 전화에는 "Flip Horizontally"를 사용해야하지만 다른 전화에는 "Flip Horizontally"를 사용해야하는 경우에 상황에 맞게 성명서에 스크립트를 작성할 수 있어야합니다.

관련 문제