Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


¿Cómo puedo exportar datos de Point Cloud (Project Tango)?

Acabo de recibir una tableta de Project Tango Development Kit y he trabajado con algunas de las demos y ejemplos.

Algunas publicaciones de blog anteriores usan los archivos de registro de una aplicación "Tango Mapper" que debe estar precargada en el dispositivo.

  • Ejecución de varias sentencias con SQLiteDatabase.execSQL
  • La visualización de la vista previa de la cámara de vidrio es ilegible
  • Cómo configurar el color personalizado en el elemento de lista seleccionado / resaltado en activateBackgroundIndicator
  • Android Layout hace que todos los niños no se puedan hacer clic
  • Android: Cómo mostrar el diálogo o la actividad sobre la pantalla de bloqueo
  • ¿Cómo puedo obtener un evento en Android Spinner cuando el elemento seleccionado actualmente se selecciona de nuevo?
    • Visualización interactiva de Google Project Tango Data con ParaView
    • Ologic anuncia la integración entre ROS y Project Tango
    • Google Tango y la integración de ROS en Bosch
    • Consejos y Sugerencias de Cartografía

    Desafortunadamente, la aplicación de "Tango Mapper" no viene precargada en mi dispositivo y no puedo encontrarla en Play Store.

    ¿Hay algún otro método para simplemente exportar o recuperar los datos de PointCloud para la representación de aguas abajo?

    [Número de modelo: yellowstone, Tango Core Versión: 1.1: 2014.11.14-bernoulli-release]

  • Al probar la interfaz de usuario de Android, ¿cuál es la forma correcta de esperar que la interfaz de usuario esté lista?
  • SpeechRecognizer en Android Wear
  • ProgressBar en ActionBar en Android L Vista previa
  • Getting Error "No se encontró el método DSL de Gradle: 'compile ()'" al sincronizar Build.Gradle
  • ¿Cómo puedo decirle a ProGuard que mantenga mi función que se utiliza para onClick?
  • SetScaleType a ScaleType.MATRIX programaticamente no funciona pero en xml funciona
  • 5 Solutions collect form web for “¿Cómo puedo exportar datos de Point Cloud (Project Tango)?”

    Tango Mapper es una herramienta interna, y actualmente no es pública para los desarrolladores. Creo que la mejor manera de registrar los datos de nube de puntos es utilizando el código de ejemplo c o java proporcionado, y tal vez hacer alguna pequeña modificación para registrar los datos en un archivo.

    C ejemplo: https://github.com/googlesamples/tango-examples-c

    Ejemplo de java: https://github.com/googlesamples/tango-examples-java

    No estoy seguro de si alguna vez tienes que resolver esto, pero pude encontrar el APK junto con un método para exportar utilizando la versión actualizada Tango tableta. Exporté con éxito los datos de la nube de puntos utilizando el método descrito en este blog.

    http://www.kitware.com/blog/home/post/838

    Editar

    Procedimiento descargue el APK o utilice el código fuente encontrado en la carpeta del proyecto GITHUB.

    Una vez que se hace arrancar la aplicación como lo haría normalmente. Habrá un registro deslizante y automático. Si desliza el registro, sólo esperará hasta que pulse el botón de disparo rápido para grabar los datos de la nube de puntos que está viendo actualmente.

    Si desliza el auto, grabará continuamente los datos de la nube de puntos y creará los archivos mientras realiza un seguimiento de donde se está moviendo. Tenga en cuenta que cuanto mayor sea el archivo, más grande se tarda en guardar como un zip.

    Una vez hecho, deslice el registro y le pedirá que guarde y envíe.

    Me resulta más fácil guardar en Google Drive como otros métodos que a veces no se pueden enviar.

    Una vez hecho descargar la aplicación gratuita de Paraview encontró http://www.paraview.org/download/ cargar sus datos de nube de puntos.

    Debe ser dos archivos uno de sus datos de pose y la otra nube de puntos. (Puede cargar individualmente cada dato utilizando la flecha de contracción que ve antes de importarla).

    Que será que usted será capaz de ver sus datos y en realidad reproducir la animación de la grabación que a causa de su pose datos recogidos.

    (Sólo escribió esto porque estaba buscando una manera más fácil de exportar datos) Esto es probablemente el más fácil. Usted podría tomar dichos datos y comenzar a reconstruir la habitación sobre la base de los datos planteados recogidos.)

    Todo el crédito por código fuente y tutorial va al blog de The Kitware

    Si los enlaces están rotos DM yo y yo le enviaremos el archivo.

    APK se encuentra aquí

    DESCARGAR APK

    También han enumerado su código fuente en la parte inferior del blog. Se basa en el tango Explorer que se encuentra en la tienda de aplicaciones.

    Mapeo disperso: https://www.youtube.com/watch?v=x5C_HNnW_3Q

    Más mapas de interiores: https://www.youtube.com/watch?v=3BNOsxMZD14

    Parece que más de algunos de los contribuyentes al proyecto Tango fueron contratados o comprados por google. Como ejemplo, la mayoría de los enlaces a código y / o artículos de Hidof son MIA, sólo queda una página de Facebook con pocas pistas. La máquina del wayback del archivo del Internet tiene algunas instantáneas de su Web site para el curioso.

    Ve a echar un vistazo a la muestra Java Point Cloud en GitHub – La función que quieres ver es onXyzIsAvailable en PointCloudActivity. Extrayendo algunas líneas relevantes ….

    public void onXyzIjAvailable(final TangoXyzIjData xyzIj) { .... byte[] buffer = new byte[xyzIj.xyzCount * 3 * 4]; FileInputStream fileStream = new FileInputStream( xyzIj.xyzParcelFileDescriptor.getFileDescriptor()); try { fileStream.read(buffer, xyzIj.xyzParcelFileDescriptorOffset, buffer.length); fileStream.close(); } catch (IOException e) { e.printStackTrace(); } 

    En este punto el buffer contiene los datos de la nube del punto – recomendaría encarecidamente que usted envíe esto apagado el dispositivo vía una llamada binaria del servicio, como pienso hacer la cosa pobre intentar y convertirla a JSON o XML haría cosas más lento que usted quisiera

    Gracias Mark por tu consejo. Soy un programador principiante y es mi primera vez trabajando con java … Estoy interesado en exportar los datos de PointCloud adquiridos por Tango a un archivo y me gustaría pedir su opinión sobre mi enfoque (he creado un botón Guardar y onClick los datos se guardan en un archivo en una unidad externa). Por favor encuentre el código abajo para la parte que debe guardar los datos xyzIj :

     @Override public void onClick(View v) { switch (v.getId()) { ... case R.id.save_button: savePointCloud(); break; default: Log.w(TAG, "Unrecognized button click."); } } private static void savePointCloud(final TangoXyzIjData xyzIj, String file) { File directoryName = getAlbumStorageDir(file); FileOutputStream out = new FileOutputStream(directoryName,"text.txt"); byte[] buffer = new byte[xyzIj.xyzCount * 3 * 4]; FileInputStream fileStream = new FileInputStream( xyzIj.xyzParcelFileDescriptor.getFileDescriptor()); int read; while ((read=fileStream.read(buffer))!=1){ try{ out.write(buffer, 0, read); out.close(); System.out.println("Printed to file"); }catch(IOException e){e.printStackTrace();} } } public File getAlbumStorageDir(String dirName) { if (!isExternalStorageWritable()) { return null; } else { // Get the directory for the user's public downloads directory. File file = new File(Environment.getExternalStoragePublicDirectory( Environment.DIRECTORY_DOWNLOADS), dirName); if (!file.mkdirs() || !file.exists()) { Log.e(TAG, "Directory not created"); return null; } return file; } } public boolean isExternalStorageWritable() { String state = Environment.getExternalStorageState(); if ((Environment.MEDIA_MOUNTED.equals(state) && Environment.MEDIA_MOUNTED_READ_ONLY.equals(state))) { return true; } else { Log.e(TAG, "External storage is not mounted READ/WRITE."); return false; } } 
    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.