diff --git a/__init__.py b/__init__.py index adc0028..bf57e79 100644 --- a/__init__.py +++ b/__init__.py @@ -4,6 +4,7 @@ from .nodes.image_feeder import ImageFeeder from .nodes.image_filters import HighPassFilter from .nodes.face_wrapper import FaceWrapper from .nodes.face_fit_and_restore import FaceFitAndRestore +from .nodes.face_tracker import FaceTracker # Get the path to the current directory NODE_PATH = os.path.dirname(os.path.realpath(__file__)) @@ -12,14 +13,16 @@ NODE_CLASS_MAPPINGS = { "FaceFitAndRestore": FaceFitAndRestore, "FaceWrapper": FaceWrapper, "HighPassFilter": HighPassFilter, - "ImageFeeder": ImageFeeder + "ImageFeeder": ImageFeeder, + "FaceTracker": FaceTracker } NODE_DISPLAY_NAME_MAPPINGS = { "FaceFitAndRestore": "Face Fit or Restore", "FaceWrapper": "Face Wrapper", "HighPassFilter": "High Pass Filter (HPF)", - "ImageFeeder": "Image Feeder" + "ImageFeeder": "Image Feeder", + "FaceTracker": "Face Tracker" } -__version__ = "1.1.5" +__version__ = "1.2.0" diff --git a/nodes/face_tracker.py b/nodes/face_tracker.py new file mode 100644 index 0000000..6dff0a2 --- /dev/null +++ b/nodes/face_tracker.py @@ -0,0 +1,25 @@ +from ..core.face_detector import FaceDetector +from ..core.image_processor import ImageProcessor + + +class FaceTracker: + """ComfyUI node for tracking facial features across image sequences.""" + + def __init__(self): + self.face_detector = FaceDetector() + self.image_processor = ImageProcessor() + + @classmethod + def INPUT_TYPES(cls): + return { + "required": { + "image": ("IMAGE",), + } + } + + RETURN_TYPES = ("IMAGE",) + FUNCTION = "track_face" + CATEGORY = "Face Processor" + + def track_face(self, image): + return (image,) \ No newline at end of file