- Added interaction helpers for cutout region validation and shape menu interaction. - Created main operator for converting image regions into cutout shapes, including AI artifact generation. - Introduced object creation logic for cutout shapes, handling depth and normal textures. - Defined cutout shape identifiers and node groups for various shape types. - Implemented depth texture writing and prediction artifact generation for MoGe-2. - Developed server jobs for generating cutout artifacts, depth planes, and refining image regions. - Added region refinement logic to enhance gesture masks using BEN2.
87 lines
2.4 KiB
Python
87 lines
2.4 KiB
Python
"""AnyImage Job Server without Blender dependencies."""
|
|
|
|
from blendjob import JobServer
|
|
|
|
from .jobs.debug_predictions import (
|
|
run_ben2 as _debug_ben2,
|
|
)
|
|
from .jobs.debug_predictions import (
|
|
run_da3 as _debug_da3,
|
|
)
|
|
from .jobs.debug_predictions import (
|
|
run_moge2 as _debug_moge2,
|
|
)
|
|
from .jobs.debug_predictions import (
|
|
run_upscale as _debug_upscale,
|
|
)
|
|
from .jobs.cutout import run as _generate_cutout_artifacts
|
|
from .jobs.depth_plane import run as _generate_depth_plane_geometry
|
|
from .jobs.refine_image_region import run as _refine_image_region
|
|
from .jobs.remove_background import run as _remove_background
|
|
from .jobs.upscale import run as _upscale_image
|
|
from .model_manager import ModelManager
|
|
|
|
server = JobServer("AnyImage Job Server")
|
|
|
|
|
|
@server.resource("model_manager")
|
|
def create_model_manager(job_server):
|
|
return ModelManager(job_server.storage_root / "models")
|
|
|
|
|
|
@server.job("download-model")
|
|
def download_model(context, parameters):
|
|
manager = context.resource("model_manager")
|
|
return manager.download(context, parameters["model"])
|
|
|
|
|
|
@server.job("download-required-models")
|
|
def download_required_models(context, parameters):
|
|
manager = context.resource("model_manager")
|
|
return manager.download_missing(context, parameters["models"])
|
|
|
|
|
|
@server.job("refine-image-region")
|
|
def refine_image_region(context, parameters):
|
|
return _refine_image_region(context, parameters)
|
|
|
|
|
|
@server.job("remove-background")
|
|
def remove_background(context, parameters):
|
|
return _remove_background(context, parameters)
|
|
|
|
|
|
@server.job("upscale-image")
|
|
def upscale_image(context, parameters):
|
|
return _upscale_image(context, parameters)
|
|
|
|
|
|
@server.job("generate-depth-plane-geometry")
|
|
def generate_depth_plane_geometry(context, parameters):
|
|
return _generate_depth_plane_geometry(context, parameters)
|
|
|
|
|
|
@server.job("generate-cutout-artifacts")
|
|
def generate_cutout_artifacts(context, parameters):
|
|
return _generate_cutout_artifacts(context, parameters)
|
|
|
|
|
|
@server.job("debug-da3")
|
|
def debug_da3(context, parameters):
|
|
return _debug_da3(context, parameters)
|
|
|
|
|
|
@server.job("debug-moge2")
|
|
def debug_moge2(context, parameters):
|
|
return _debug_moge2(context, parameters)
|
|
|
|
|
|
@server.job("debug-ben2")
|
|
def debug_ben2(context, parameters):
|
|
return _debug_ben2(context, parameters)
|
|
|
|
|
|
@server.job("debug-upscale")
|
|
def debug_upscale(context, parameters):
|
|
return _debug_upscale(context, parameters)
|