Enhance generate3d function to initialize nvdiffrast context for mesh export, improving rendering capabilities. Updated export call to include rendering context and adjusted parameters for UVs and texture image, ensuring better integration with the model.
Update generate3d function to use a data dictionary for mesh export, improving compatibility with CRM model. Adjusted export call to include output directory and device parameters, while maintaining the conversion from .obj to .glb format.
Fix parameter naming in generate3d function for clarity and consistency. Updated rgb and xyz parameters to rgb_image and xyz_image respectively in the mesh export call.
Refactor 3D mesh generation in inference.py to streamline the process. Introduced ensure_dir function for output directory management, updated generate3d function to accept model and image inputs, and improved mesh export and conversion to GLB format. This enhances code clarity and maintains compatibility with Gradio display.
Refactor background removal process in app.py to utilize rembg library, enhancing performance and simplifying the code. Update device handling to allow dynamic selection between CPU and CUDA, improving compatibility across different hardware configurations. Modify output format from OBJ to GLB for better integration with Gradio display.
Refactor texture baking in vertex_color_to_uv_textured_glb function to use a hybrid approach for barycentric calculations. This change enhances accuracy while maintaining performance, replacing vectorized operations with a loop-based method for improved precision in texture generation.
Refactor texture baking in vertex_color_to_uv_textured_glb function to use vectorized operations. This change improves performance by precomputing face data and applying vectorized barycentric tests, enhancing the efficiency of texture generation.
Ensure input tensor is on the same device as model weights in FrozenOpenCLIPEmbedder. This change improves compatibility and performance by preventing device mismatch during image encoding.
Enhance token handling in FrozenOpenCLIPEmbedder by adding device checks and conversions. This update ensures that input tokens are correctly processed as torch tensors on the appropriate device, improving compatibility and performance across different hardware configurations.
Refactor device handling across multiple modules to enforce CUDA usage explicitly. This change ensures consistent device allocation for model operations, enhancing performance on systems with GPU support while maintaining compatibility.
Update device handling across multiple modules to support automatic selection of CUDA or CPU based on availability. This change enhances compatibility and performance on systems with or without GPU support, ensuring consistent behavior in model loading and data processing.
Refactor attention module to improve xformers integration. Renamed availability flag to HAS_XFORMERS and added safe_memory_efficient_attention function for better handling of attention operations across devices. Updated related assertions and calls to ensure compatibility with systems lacking GPU support.
Change device setting for mesh data in generate3d function to CPU for consistency with recent updates, ensuring compatibility across systems without GPU support.
Change default device setting to CPU in app.py for improved compatibility. Updated model loading to ensure it operates on CPU, enhancing performance on systems without GPU support.
Refactor remove_background function in app.py to enhance mask handling. Added checks for mask dimensions and data type, ensuring proper conversion to RGBA format for images. This improves the output quality when masks are applied.
Add debug texture saving in vertex_color_to_uv_textured_glb function in inference.py. This enhancement allows for easier troubleshooting by saving the generated texture as "debug_texture.png" after exporting the GLB file.
Enhance image processing in remove_background function by adding dtype check and conversion for extracted images. This ensures that non-uint8 images are properly scaled and converted before being transformed into PIL format.
Add conversion of extracted image to PIL format in remove_background function in app.py. This ensures compatibility with subsequent image processing steps when the output is a NumPy array.
Refactor remove_background function in app.py to save images to a temporary file before processing. This change improves compatibility with the dis_remove_background method by ensuring the image is correctly handled as a file path.
Add functionality to download the DIS ONNX model if not found locally in app.py. Updated remove_background function to call new ensure_dis_onnx_model method for improved error handling. Added requests library to requirements.txt for HTTP requests.
Add configurable ONNX model path in app.py for background removal. Implement error handling for missing model file and ensure valid image processing. Updated remove_background function to utilize environment variable for model path.
Refactor background removal in app.py to utilize dis_bg_remover for improved image processing. Removed rembg dependency and updated related logic in remove_background function. Updated requirements.txt to reflect the change in background removal library.
Refactor app.py and inference.py to streamline image generation and mesh export processes. Removed unnecessary CPU transfers and temporary file handling, directly returning generated GLB paths. Updated mesh export in CRM model to support vertex colors and improved overall efficiency in texture mapping.
Refactor texture baking logic in generate3d function of inference.py to utilize per-vertex colors for improved texture quality. Updated the method for filling the texture image to enhance the visual output in mesh exports.
Ensure tensors are on CPU in generate3d function of inference.py for consistent processing. Updated points_tensor and triplane_feature2 to prevent device-related issues during inference.
Refactor generate3d function in inference.py to implement CPU-only UV unwrapping using xatlas and trimesh for improved texture mapping. Updated texture baking logic to utilize the model's decoder and rgbMlp, enhancing the quality of generated textures in mesh exports.
Refactor generate3d function in inference.py to implement CCM-based UV assignment for improved texture mapping. Updated color map preparation and vertex projection to enhance mesh quality in exports, ensuring compatibility with various input formats.
Enhance texture baking logic in generate3d function of inference.py by integrating OpenCV for color map processing. Updated albedo generation to support photorealistic textures and ensure proper format handling, improving overall texture quality in mesh exports.
Refactor generate3d function in inference.py to integrate xatlas for UV parameterization and improve texture baking logic. Updated mesh export process to create GLB files directly from the generated mesh, enhancing overall functionality and maintainability.
Refactor generate3d function in inference.py to enhance mesh processing and export logic. Streamlined image tensor handling, improved denoising integration, and updated mesh export to include UV mapping. Ensured proper handling of temporary files for OBJ and GLB formats, enhancing overall readability and maintainability.
Refactor generate3d function in inference.py to streamline noise addition and improve mesh processing. Enhanced color generation for vertices and updated GLB export logic, ensuring efficient handling of mesh data and improved readability.
Refactor generate3d function in inference.py to improve mesh export process. Updated OBJ and texture file checks, streamlined GLB conversion with embedded texture handling, and enhanced error handling for missing files. This change ensures proper export of textured GLB files.
Refactor generate3d function in inference.py to improve readability and maintainability. Enhanced RGB and coordinate conversion, streamlined noise addition for denoising, and updated mesh export process to utilize trimesh for GLB format, ensuring proper handling of UV textures.
Fix variable names in mesh export for CRM model to enhance clarity and maintain consistency with previous changes. Updated vertices and faces variable names for better readability.