A partir del 27 de marzo de 2025, te recomendamos que uses android-latest-release
en lugar de aosp-main
para compilar y contribuir a AOSP. Para obtener más información, consulta Cambios en AOSP.
Verificación cruzada de CV del vector de rotación
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Figura 1: Miniatura del patrón de prueba. Descarga la imagen de resolución completa vinculada anteriormente.
En esta página, se proporcionan los pasos para probar correctamente la compatibilidad de la implementación del sensor de vector de rotación. Esta prueba se debe ejecutar cuando el dispositivo declara la función del sensor compuesto TYPE_ROTATION_VECTOR.
Prueba
- Instala OpenCV Manager en el dispositivo Android que se está probando.
- Descarga el paquete
OpenCV-3.0.0-android-sdk.zip
de
SourceForge.net.
- Busca el APK en la carpeta
apk
dentro del archivo descargado. Carga el APK en el dispositivo desde una computadora con el comando adb install
con la opción --bypass-low-target-sdk-block
. Para dispositivos que ejecutan Android 13 o versiones anteriores, no es necesaria esta opción --bypass-low-target-sdk-block
. Para obtener más información, consulta Cómo instalar una app.
Si hay una cuenta activa en Google Play, busca OpenCV Manager en Google Play y, luego, inhabilita Actualización automática en el menú contextual (el menú emergente del botón “…”).
Figura 2: Inhabilitar la actualización automática en Google Play
- Imprime el patrón de prueba vinculado y, luego, inhabilita las opciones de escalamiento durante la impresión. El patrón debe adaptarse al papel carta de EE.UU. en orientación horizontal o a un tamaño mayor.
Nota: La imagen intercalada anterior es de baja resolución y solo es a modo de ejemplo. No lo imprimas directamente como patrón.
- Coloca el patrón en una superficie horizontal.
- Inicia la verificación cruzada de CV de vector de rotación en la app de CTS Verifier. Sigue la guía para activar el modo avión, desactivar la rotación automática y ajustar el brillo y la ubicación adaptables si no se realizaron estos cambios.
Figura 3: Iniciar la prueba
- Cuando aparezca la vista previa del video, coloca el teléfono a un metro (o tres pies) sobre el patrón para que la cámara principal esté orientada hacia él con el marcador amarillo en la pantalla y el marcador amarillo en el patrón alineados en la misma esquina.
Figura 4: Colocación del patrón de prueba
- Mientras mantienes el patrón completamente en la vista de la cámara, rota el dispositivo Android sometido a prueba (DUT) alrededor del patrón en tres direcciones diferentes, una por una (1, 2 y, luego, 3, como se muestra en la imagen a continuación), según lo indique el indicador de rango de rotación. Mantén el movimiento suave y constante para obtener el mejor resultado.
Figura 5: Manipular el dispositivo en prueba
- Después de la captura, desaparecerá la vista previa de la cámara y comenzará el proceso de análisis. Espera pacientemente a que finalice el análisis. Por lo general, tarda entre uno y cinco minutos, según el rendimiento del teléfono. El teléfono sonará y vibrará cuando se complete el análisis. Si el análisis se realiza correctamente, se mostrará un resultado numérico en la pantalla.
Figura 6: Finalizando la prueba.
- Haz clic en Siguiente para pasar a la pantalla de aprobado o reprobado y revisar el resultado.
Figura 7: Aprobar la prueba
- Sigue estas sugerencias para obtener los mejores resultados:
- Dado que esta es una prueba manual con complejidad, te recomendamos que la pruebes varias veces para obtener los mejores resultados.
- El acelerómetro, el giroscopio y el magnetómetro deben calibrarse antes de realizar pruebas para obtener buenos resultados.
Solución de problemas
- Síntomas: La prueba falló cuando se inició el caso de prueba o inmediatamente después de terminar la grabación de video.
Causa: Es probable que se trate de un problema de compatibilidad con OpenCV Manager. Marca logcat
para confirmar. Si se confirma, verifica la versión y el arch del Administrador de OpenCV instalado.
- Síntomas: La prueba falla con frecuencia debido a errores de “Demasiados fotogramas no válidos”.
Causa: Es probable que se deba a la calidad del video. Confirma las siguientes condiciones:
- Hay suficiente iluminación ambiental para la prueba. La luz natural suele brindar el mejor resultado. Sin embargo, cuando no está disponible, también funciona la luz abundante desde varios ángulos que no forme sombras evidentes.
Evita la iluminación de ángulo bajo para reducir el resplandor.
- El movimiento durante la grabación del video es fluido. Los movimientos bruscos causan desenfoques y confunden al software de visión artificial.
- El patrón siempre debe estar completamente en el marco de vista previa del video y ubicarse alrededor del centro. El patrón debe tener un tamaño de entre 1/4 y 1/2 del tamaño de la ventana de vista previa del video. Si el patrón es demasiado pequeño, la precisión se reduce.
Si el patrón es demasiado grande, la distorsión del lente es más evidente y es más difícil mantener el patrón siempre dentro del marco de grabación de video.
- La cámara puede enfocar bien. Algunos dispositivos tienen problemas para enfocar durante la grabación de video. Esto suele deberse a que hay muy pocas variaciones en la escena, p.ej., una superficie de piso lisa de color sólido. Por lo general, ayuda mover el patrón de prueba a un lugar con una superficie con textura o colocar objetos alrededor del patrón de prueba.
- La estabilización de imagen está desactivada.
- Síntomas: La prueba de cabeceo y balanceo funciona bien, pero la prueba de guiñada falla con frecuencia.
Causa: Primero, asegúrate de que el sensor de campo magnético esté bien calibrado.
El vector de rotación no funciona bien si el sensor de campo magnético no está correctamente calibrado.
También es posible que el eje de guiñada falle debido a la toma de video. Mantén el dispositivo estable y camina o muévete alrededor del patrón de prueba para la sección de guiñada de la prueba. Es difícil mantener la calidad del video mientras se rota el dispositivo en la mano.
Enviar comentarios
Si los pasos anteriores no funcionan, asegúrate de seguir los pasos para enviar comentarios que se indican a continuación para informar el problema.
Cuando informes un error, recopila la siguiente información:
- Bugreport de Android
- Captura de pantalla si hay algún mensaje de error en la pantalla
- Contenido de
/sdcard/RVCVRecData/
Esta carpeta contiene archivos de video y, por lo tanto, puede ser bastante grande si la prueba ya se realizó varias veces. Si borras la carpeta y vuelves a realizar la prueba, se reducirá el tamaño. Inspecciona los archivos de video para encontrar problemas obvios en la grabación.
- Captura de pantalla de la app de OpenCV Manager.
El contenido y las muestras de código que aparecen en esta página están sujetas a las licencias que se describen en la Licencia de Contenido. Java y OpenJDK son marcas registradas de Oracle o sus afiliados.
Última actualización: 2025-07-27 (UTC)
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Falta la información que necesito","missingTheInformationINeed","thumb-down"],["Muy complicado o demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Desactualizado","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema con las muestras o los códigos","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-07-27 (UTC)"],[],[],null,["# Rotation vector CV crosscheck\n\n**Figure 1.** Thumbnail of test pattern. Download the\nfull-resolution image linked above.\n\nThis page provides the steps to properly test the compatibility of your [rotation vector\nsensor](/docs/core/interaction/sensors/sensor-types#rotation_vector) implementation. This test should be run when the device declares the\nTYPE_ROTATION_VECTOR composite sensor feature.\n\nTest\n----\n\n1. Install OpenCV Manager on the Android device being tested.\n2. Download the `OpenCV-3.0.0-android-sdk.zip` package from [SourceForge.net](https://sourceforge.net/projects/opencvlibrary/files/opencv-android/3.0.0).\n3. Find the APK from the `apk` folder inside the downloaded archive. Load the APK on the device from a computer using the `adb install` command with the `--bypass-low-target-sdk-block` option. For devices running Android 13 or lower, this `--bypass-low-target-sdk-block` option isn't necessary. For more information, see [Install an app](http://developer.android.com/tools/help/adb#move).\n4. If there is an active account logged into Google Play, locate OpenCV Manager in Google Play\n and disable *Auto-update* in the context menu (the popup menu from the \"...\" button).\n\n\n **Figure 2.** Disabling Auto-update in Google Play.\n5. Print out the linked [test pattern](/static/docs/compatibility/cts/images/acircles_pattern.pdf), disabling any scaling options when printing. The pattern should fit US Letter paper in landscape or anything bigger.\n\n **Note:** The inline picture above is low\n resolution and just for illustration. Please do not directly print it as your\n pattern.\n6. Place the pattern on a horizontal surface.\n7. Start the **Rotation Vector CV Crosscheck** in the CTS Verifier app. Follow the guide to turn on airplane mode, turn off auto rotate, and adjust adaptive brightness and location if these changes have not been made. \n\n\n **Figure 3.** Initiating the test.\n8. When the video preview appears, place the phone three feet (or one meter) over the pattern so the main camera is facing the pattern with yellow marker on the screen and yellow marker on the pattern aligned at the same corner. \n\n\n **Figure 4.** Placing the test pattern.\n9. While keeping the pattern entirely in the camera view, rotate the Android device under test (DUT) around the pattern in three different directions, one by one (1, 2 and then 3 illustrated in picture below) as prompted by the rotation range indicator. Keep movement smooth and steady for the best result. \n\n\n **Figure 5.** Manipulating the device under test.\n10. After the capture, the camera preview will disappear and the analysis process will start. Wait patiently for analysis to finish; it usually takes one to five minutes depending on the phone performance. The phone will sound and vibrate at analysis completion. A numerical result will be presented on screen if the analysis is successful. \n\n\n **Figure 6.** Finishing the test.\n11. Click **next** to proceed to the pass/fail screen and review the result. \n\n\n **Figure 7.** Passing the test.\n12. Follow these tips for best results:\n 1. Since this is a manual test with complexity, you may want to try it a few times for the best results.\n 2. Accelerometer, gyroscope, and magnetometer should be calibrated before testing for good results.\n\nTroubleshoot\n------------\n\n1. Symptom: Test crashed when starting test case or immediately after finishing video recording. \n Cause: Likely an OpenCV Manager compatibility issue. Check `logcat` to confirm. If confirmed, check version and arch of the installed OpenCV Manager.\n2. Symptom: Test fails frequently due to \"Too many invalid frame\" errors. \n Cause: Likely due to video quality. Confirm the following conditions:\n 1. There is enough ambient lighting for the test. Natural light usually gives the best result. However, when it is not available, abundant light from multiple angles that does not form obvious shadows works, as well. Avoid low angle lighting to reduce glare.\n 2. The motion during video taking is smooth. Jerky movement causes blur and confuses the computer vision software.\n 3. The pattern should always be entirely in video preview frame and located around the center. The pattern should be 1/4 \\~ 1/2 the size of the video preview window. If the pattern is too small, the accuracy is reduced. If the pattern is too big, lens distortion is more obvious, and it is more difficult to keep the pattern always inside video recording frame.\n 4. The camera is able to focus well. Some devices have trouble in focusing during video recording. This is usually due to there is too few variations in the scene, e.g. solid color smooth floor surface. Moving test pattern to a place with textured surface or introducing objects around the test pattern usually helps.\n 5. Image stabilization is turned off.\n3. Symptom: The pitch and roll test works fine, but the yaw test regularly fails. \n Cause: First, make sure the magnetic field sensor is well calibrated. Rotation vector does not function well if magnetic field sensor is not calibrated. \n It is also possible that yaw axis fails due to video taking. Hold the device steady and walk/move around the test pattern for the yaw section of test. It is hard to maintain the quality of video while rotating device in hand.\n\nReport feedback\n---------------\n\nIf the steps above do not help, please make sure to follow the feedback steps below to report your issue.\n\nPlease gather the following information when reporting a bug:\n\n1. Android bugreport\n2. Screenshot if there is any error message on screen.\n3. Contents of `/sdcard/RVCVRecData/`. This folder contains video files and thus can be quite large if the test has already been taken multiple times. Clearing the folder and performing the test again will help reduce size. Inspect video files inside to find obvious issues in recording.\n4. Screenshot of the OpenCV Manager app."]]