HUAWEI 3D Modeling Kit project contains a sample app. Guided by this demo, you will be able to implement full 3D Modeling Kit capabilities, including 3D object reconstruction and material generation.

Overview

HUAWEI 3D Modeling Kit Sample

License

English | 中文

Introduction

This project includes apps developed based on HUAWEI 3D Modeling Kit. The project directory is as follows:

|-- 3DModeling-Sample // 3D Modeling Kit sample code.

Precautions

The hms-3dmodeling-demo project contains a sample app. After downloading and running the code, you can experience full 3D Modeling Kit capabilities.

Technical Support

If you are still evaluating HMS Core, obtain the latest information about HMS Core and share your insights with other developers at Reddit.

  • To resolve development issues, please go to Stack Overflow. You can ask questions below the huawei-mobile-services tag, and Huawei R&D experts can solve your problem online on a one-to-one basis.
  • To join the developer discussion, please visit Huawei Developer Forum.

If you have problems using the sample code, submit issues and pull requests to the repository.

Comments
  • Crash when uploading

    Crash when uploading

    Screenshot_2021-08-03-14-25-41-358_com miui bugreport After data collection, the app will try to upload data and then it will get a crash. If I restart the app and try to upload data manually, the crash happens too. The log is attached.

    Phone: MI 9 OS: MIUI 10 9.2.28 Android: 9 Kernel: 4.14.83

    opened by wenduof 6
  • Getting result status does not work after update

    Getting result status does not work after update

    After updating to V1.2.0.300 following error happen after calling

    Modeling3dReconstructQueryResult queryResult = Modeling3dReconstructTaskUtils.getInstance(getApplicationContext()).queryTask(taskId);
    

    On V1.1.0.300 everything works without problems.

    2021-11-10 09:17:23.217 32513-3129/com.lvonasek.arcore3dscanner I/3DModelingKit_Modeling3dReconstructQuery: Begin to query status!
    2021-11-10 09:17:23.217 32513-3129/com.lvonasek.arcore3dscanner I/3DModelingKit_QueryWork: Begin to query status!
    2021-11-10 09:17:23.218 32513-3129/com.lvonasek.arcore3dscanner I/3DModelingKit_ReconstructApplication: get ky flag: true
    2021-11-10 09:17:23.254 32513-3129/com.lvonasek.arcore3dscanner I/3DModelingKit_RemoteClient: queryTask response code: 405
    2021-11-10 09:17:23.489 32513-3129/com.lvonasek.arcore3dscanner I/3DModelingKit_RemoteClient: queryTask response code: 405
    2021-11-10 09:17:23.495 32513-3129/com.lvonasek.arcore3dscanner E/3DModelingKit_ResponseUtils: P*r*e *e*C*d* e*r*r*r*.j*o*.J*O*E*c*p*i*n: *o *a*u* f*r *e*C*d*
    2021-11-10 09:17:23.501 32513-3129/com.lvonasek.arcore3dscanner I/3DModelingKit_HianalyticsLogProvider: forbiddenHiLog.getVenderCountry=eea
    2021-11-10 09:17:23.501 32513-3129/com.lvonasek.arcore3dscanner I/3DModelingKit_HianalyticsLogProvider: forbiddenHiLog openHa = false
    
    opened by lvonasek 5
  • Long processing queues.

    Long processing queues.

    Since the beginning of this week many users of 3D Live Scanner report that processing queue takes longer than 30 minutes. What it be possible to allocate to service more resources?

    Thank you in advance.

    opened by lvonasek 4
  • NumberFormatException occurs when comma is used as decimal separator

    NumberFormatException occurs when comma is used as decimal separator

    Create a decimal format using new DecimalFormat("0.00") will crash the app if the phone system uses comma as decimal separator. I recommend using the following approach: https://github.com/FStranieri/hms-3d-modeling-demo/commit/5df74ecf340825fcfefa7cdb31af3191cf958df1

    opened by buiquanghuy23103 3
  • Any solution to create model by manual uploading of images store on the phone?

    Any solution to create model by manual uploading of images store on the phone?

    Hi, I need help here, to test the capabilities of this HMS 3D modeling app, I have already multiple images 360deg view of the object stored in my phone, how do I manual upload the images to the app instead of using camera to take pictures?

    opened by yllowcool 3
  • TextureMode.PBR - PBR textures are not included

    TextureMode.PBR - PBR textures are not included

    I tested object modeling with TextureMode.PBR: `` Modeling3dReconstructSetting setting = new Modeling3dReconstructSetting.Factory() .setReconstructMode(Modeling3dReconstructConstants.ReconstructMode.PICTURE) .setTextureMode(Modeling3dReconstructConstants.TextureMode.PBR) .create();

            Modeling3dReconstructInitResult modeling3dReconstructInitResult;
            modeling3dReconstructInitResult = modeling3dReconstructEngine.initTask(setting);
    
    
    When I download the reconstructed model there is diffuse texture only. I tested it with both OBJ and GLTF.
    opened by lvonasek 2
  • 3D Modeling Kit limit

    3D Modeling Kit limit

    In 3D Live Scanner, users started complaining that the reconstruction does not work. I investigated into it and they keep receiving following error: get taskID error 1118: The request has reached the max limit

    Would it be possible to extend the limit? The pro version of the app does not suffer from this issue.

    opened by lvonasek 2
  • Unsupported on some devices

    Unsupported on some devices

    Some devices (e.g. Samsung Galaxy Note 20 Ultra SM-N986B) do not work.

    The issue is probably that cameratakelib opens all rear facing cameras at the same time which some devices do not support (I am waiting on user of my app to confirm this).

    opened by lvonasek 2
  • Failed to find provider info for com.huawei.hms

    Failed to find provider info for com.huawei.hms

    E/ActivityThread: Failed to find provider info for com.huawei.hms W/dynamic-api_DynamicModule: 3142-3142|null|com.huawei.hms.feature.dynamic.DynamicModule|getRemoteVersion|80|Query remote module:huawei_module_modeling3d_motioncapture exception:com.huawei.hms.feature.dynamic.DynamicModule$g: failed to Query remote version. E/AbstractInitializer: huawei_module_modeling3d_motioncapture -> No need to switch because the context of the dynamic module is null or the context of full sdk E/AbstractInitializer: huawei_module_modeling3d_motioncapture -> The context of the dynamic module belongs to LOCAL D/ImageSkeletonImpl: Initialize E/SkeletonDetectionJNI: loadLibrary failed. UnsatisfiedLinkError e: java.lang.UnsatisfiedLinkError: dlopen failed: library "libnative-lib.so" not found E/.hms.modeling3: No implementation found for int com.huawei.hms.motioncapturesdk.SkeletonDetectionJNI.createInstance(android.content.res.AssetManager, java.lang.String, java.lang.String, java.lang.String, java.lang.String) (tried Java_com_huawei_hms_motioncapturesdk_SkeletonDetectionJNI_createInstance and Java_com_huawei_hms_motioncapturesdk_SkeletonDetectionJNI_createInstance__Landroid_content_res_AssetManager_2Ljava_lang_String_2Ljava_lang_String_2Ljava_lang_String_2Ljava_lang_String_2) D/AndroidRuntime: Shutting down VM E/AndroidRuntime: FATAL EXCEPTION: main Process: com.huawei.hms.modeling3d, PID: 3142 java.lang.UnsatisfiedLinkError: No implementation found for int com.huawei.hms.motioncapturesdk.SkeletonDetectionJNI.createInstance(android.content.res.AssetManager, java.lang.String, java.lang.String, java.lang.String, java.lang.String) (tried Java_com_huawei_hms_motioncapturesdk_SkeletonDetectionJNI_createInstance and Java_com_huawei_hms_motioncapturesdk_SkeletonDetectionJNI_createInstance__Landroid_content_res_AssetManager_2Ljava_lang_String_2Ljava_lang_String_2Ljava_lang_String_2Ljava_lang_String_2) at com.huawei.hms.motioncapturesdk.SkeletonDetectionJNI.createInstance(Native Method) at com.huawei.hms.motioncapturesdk.a.initialize(ImageSkeletonImpl.java:12) at com.huawei.hms.motioncapturesdk.t.b.a(RemoteOnDeviceSkeleton.java:14) at com.huawei.hms.motioncapturesdk.Modeling3dMotionCaptureEngine.create(Modeling3dMotionCaptureEngine.java:13) at com.huawei.hms.motioncapturesdk.Modeling3dMotionCaptureEngineFactory.getMotionCaptureEngine(Modeling3dMotionCaptureEngineFactory.java:1) at com.huawei.hms.modeling3d.utils.skeleton.LocalSkeletonProcessor.(LocalSkeletonProcessor.java:65) at com.huawei.hms.modeling3d.ui.activity.SelectSourceVideoActivity.onCreate(SelectSourceVideoActivity.java:103) at android.app.Activity.performCreate(Activity.java:7994) at android.app.Activity.performCreate(Activity.java:7978) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3422) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3601) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7656) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)

    opened by lechao 1
  • Feature Request - Model scale

    Feature Request - Model scale

    Would it be possible to receive result with approximately correct scale?

    Considering that the mobile camera focal length is provided you should be able to do the triangulation and calculate the scale of the model, right?

    opened by lvonasek 3
Releases(1.6.0.301)
  • 1.6.0.301(Jul 6, 2022)

    3DModeling Kit 1.6.0.301:

    1. New Feature :auto rigging: Use this capability that can load a preset motion to a 3D model of a biped humanoid by using the skeleton points on the model. In this way, the capability automatically rigs and animates a biped humanoid model, to lower the threshold of 3D animation creation and make 3D models appear more interesting.
    2. Real-time guide mode: (Switch in Scan Mode in Settings in the upper right corner of the shooting screen) , helps users better collect images of modeling objects, improving the modeling success rate and effect.
    3. For more details, please refer to https://developer.huawei.com/consumer/cn/doc/development/graphics-Guides/version-change-history-0000001142921837
    Source code(tar.gz)
    Source code(zip)
  • 1.4.0.300(Mar 14, 2022)

    3DModeling Kit 1.4.0.300:

    1. Provides two shooting modes: touch shooting and auto shooting. You can switch between them on the settings screen.
    2. Remove redundant code.
    Source code(tar.gz)
    Source code(zip)
  • 1.3.0.300(Jan 5, 2022)

    3DModeling Kit 1.3.0.300 & 1.3.0.301 : the following features and updates are added to the version:

    1. Supported PBR texture map generation.
    2. Added the setTextureMode method to set the texture map mode for the model to be downloaded to the Modeling3dReconstructDownloadConfig.Factory class.
    3. Added Modeling3dReconstructConstants.TextureMode as the texture map mode.
    4. Added Modeling3dReconstructPreviewConfig as the model preview configuration for a 3D object reconstruction task.

    For more details, please check https://developer.huawei.com/consumer/en/doc/development/graphics-Guides/version-change-history-0000001142921837

    Source code(tar.gz)
    Source code(zip)
  • 1.2.0.300(Oct 22, 2021)

    3DModeling Kit 1.2.0.300 : the following features and updates are added to the version:

    1. Motion Capture is added to 3D Modeling Kit.
    2. The preview interface is improved, you can preview model more quickly.
    3. The success rate and effect of modeling have been significantly improved.
    4. Demo stability and some known bug fixes.
    Source code(tar.gz)
    Source code(zip)
  • 1.1.0.300(Aug 24, 2021)

    3DModeling Kit 1.1.0.300 : the following features are added to the version:

    1. The preview interface is added to view the model modeling effect.
    2. CameraX is used for collection, and the upload UI is updated.
    3. The restriction interface is added to protect personal data security.
    Source code(tar.gz)
    Source code(zip)
Owner
HMS
HMS
Contains the demo projects for S1 Application Modernization Breakout

Application Modernization Spring One 2021 This repository contains the projects that were demoed during the Application Modernization breakout discuss

Glenn Renfro 6 Jan 24, 2022
MaterialFX is an open source Java library which provides material design components for JavaFX

MaterialFX MaterialFX is an open source Java library which provides material design components for JavaFX Explore the wiki » Download Latest Demo · Re

Alessadro Parisi 744 Jan 3, 2023
Understand Server-Sent Events (SSE), analyze its principle, and implement custom SSE.

custom-sse Email:[email protected] Github:https://github.com/JorringHsiao QQ:3129600569 ?? 关键词:SSE, 服务端推送, 实时推送, 进度条 ?? 本项目的目的 以进度条的功能需求为例,引出

JorringHsiao 17 Oct 18, 2021
It is a desktop application based on JavaFX to implement a Carmeter-GPS.

CarMeter_JavaFX It is a desktop application based on JavaFX to implement a Carmeter-GPS. Video View more Details about the project.---> Link to Video

Abdullah HAnfy 0 Nov 29, 2022
Dynamic JavaFX form generation

FXForm 2 Stop coding forms: FXForm 2 can do it for you! About FXForm2 is a library providing automatic JavaFX form generation. How does it work? Write

dooApp 209 Jan 9, 2023
基于Google ML Kit 快速集成二维码扫描,速度比zxing快,可配置相册,闪光灯,相机可以调整焦距放大缩小,自定义扫描线颜色,自定义背景颜色,自定义遮罩层,支持同时扫多个二维码和条形码

MNMLKitScanner 基于Google MLKit 快速集成二维码扫描,速度比zxing快 基于Google MLKit 快速集成二维码扫描,速度比zxing快,可配置相册,闪光灯,相机可以调整焦距放大缩小,自定义扫描线颜色,自定义背景颜色,自定义遮罩层,支持同时扫多个二维码和条形码 功能:

MaNing 144 Jan 4, 2023
A demo application to learn and explore all topic of Programming in Java Course.

Kakshya RMS A simple Java lab-work for the class of 'Programming in Java' Explore the docs » View Demo · Report Bug · Request Feature Table of Content

Bikram Parajuli 16 Jun 8, 2022
Full Featured Google Chrome Dev Tools to JavaFX WebView browser debugging.

JavaFX WebView Debugger Via WebSocket connection to Google Chrome Dev Tools JavaFx WebView debugging with Chrome Dev tools is highly dependent on Goog

Vladimir Schneider 56 Dec 19, 2022
Open API demo for CloudQuery

open-api-demo This project is an example for CloudQuery Community, which can assist community users in code development such as organizational structu

ToolsLab-BinTools 12 Jan 4, 2023
A GUI-based file manager based on a Java file management and I/O framework using object-oriented programming ideas.

FileManager A GUI-based file manager based on a Java file management and I/O framework using object-oriented programming ideas. Enables folder creatio

Zongyu Wu 4 Feb 7, 2022
PostgreSQL is the world's most advanced open source database. Also, PostgreSQL is suitable for Event Sourcing. This repository provides a sample of event sourced system that uses PostgreSQL as event store.

Event Sourcing with PostgreSQL Introduction Example Domain Event Sourcing and CQRS 101 State-Oriented Persistence Event Sourcing CQRS Advantages of CQ

Evgeniy Khyst 146 Dec 20, 2022
This repository contains all java related sources of the Dolphin Platform.

Dolphin Platform This repository contains all Java related sources of the Dolphin Platform. Clients for other languages can be found in seperate repos

IMTF 74 Sep 5, 2022
Tic-Tac-Toe-GUI - This repository contains Java based interactive Tic-Tac-Toe game.

Tic-Tac-Toe This repository contains Java based interactive Tic-Tac-Toe game. In this game you can play individual or with another player with your na

Ahmed Hossam 11 Sep 1, 2022
A JavaFX library that contains different kind of charts

Charts A library for scientific charts in JavaFX. This is still a work in development, but here are some of the charts being worked on so far. The cha

Gerrit Grunwald 497 Jan 2, 2023
SimpleFXLoader - Simple JavaFX Scene/Object hierarchy loader.

SimpleFXLoader Simple JavaFX Scene/Object hierarchy loader that can load dynamically some Controller Class once some annotations are used. This only w

Ryan Thomas Payne 2 Dec 30, 2021
Android Resource Manager application to manage and analysis your app resources with many features like image resize, Color, Dimens and code Analysis

AndroidResourceManager Cross-Platform tools to manage your resources as an Android Developer, AndroidResourceManager - ARM provide five main services

Amr Hesham 26 Nov 16, 2022
Lib-Tile is a multi Maven project written in JavaFX and NetBeans IDE 8 and provides the functionalities to use and handle easily Tiles in your JavaFX application.

Lib-Tile Intention Lib-Tile is a multi Maven project written in JavaFX and NetBeans IDE and provides the functionalities to use and handle easily Tile

Peter Rogge 13 Apr 13, 2022
Checkers game. Server and Client. Client's app handled in JavaFX. Play with radom player or against AI.

Checkers-JavaFX-and-Sockets Checkers game. Server and Client. Client's app handled in JavaFX. Play with radom player or against AI. If you want to pla

Jakub Bednarski 1 Mar 30, 2022
Flash cards app using JavaFX, Scene Builder and persistence using Serialization with JAVA IO API

Flashcards - JavaFX , Scene Builder, Serialized Persistence JAVA IO API Main Scene that will show all the Decks in Flash Card App Add or Edit Cards in

Ali Raja 3 Nov 28, 2022