kijai / ComfyUI-LivePortraitKJ

ComfyUI nodes for LivePortrait
MIT License
1.43k stars 108 forks source link

'NoneType' object has no attribute 'cpu' #85

Open tarkansarim opened 1 month ago

tarkansarim commented 1 month ago

Getting this error with the latest version with the "LivePortrait Process" node when using the video 2 video example workflow.

Error occurred when executing LivePortraitProcess:

'NoneType' object has no attribute 'cpu'

File "E:\AI\ComfyUI_windows_portable\ComfyUI\execution.py", line 151, in recursive_execute output_data, output_ui = get_output_data(obj, input_data_all) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "E:\AI\ComfyUI_windows_portable\ComfyUI\execution.py", line 81, in get_output_data return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "E:\AI\ComfyUI_windows_portable\ComfyUI\execution.py", line 74, in map_node_over_list results.append(getattr(obj, func)(**slice_dict(input_data_all, i))) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "E:\AI\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-LivePortraitKJ\nodes.py", line 328, in process out = pipeline.execute( ^^^^^^^^^^^^^^^^^ File "E:\AI\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-LivePortraitKJ\liveportrait\live_portrait_pipeline.py", line 94, in execute first_driving_rot = driving_rot_list[0].cpu().numpy().astype(np.float32).transpose(0, 2, 1) ^^^^^^^^^^^^^^^^^^^^^^^

tarkansarim commented 1 month ago

It looks like it skipped all the frames. The face is quite small in the video though the previous build was just not able to detect some frames but in this case it looks like it's skipping all of them.

LivePortrait using fp16 Downloading model to: E:\AI\ComfyUI_windows_portable\ComfyUI\models\liveportrait Fetching 8 files: 100%|██████████████████████████████████████████████████████████████████| 8/8 [00:06<00:00, 1.21it/s] Load appearance_feature_extractor done. Load motion_extractor done. Load warping_module done. Load spade_generator done. Load stitching_retargeting_module done. LandmarkRunner warmup time: 0.036s WARNING: All log messages before absl::InitializeLog() is called are written to STDERR W0000 00:00:1721844709.569868 32676 face_landmarker_graph.cc:174] Sets FaceBlendshapesGraph acceleration to xnnpack by default. INFO: Created TensorFlow Lite XNNPACK delegate for CPU. W0000 00:00:1721844709.583243 5436 inference_feedback_manager.cc:114] Feedback manager requires a model with a single signature inference. Disabling support for feedback tensors. W0000 00:00:1721844709.590502 5436 inference_feedback_manager.cc:114] Feedback manager requires a model with a single signature inference. Disabling support for feedback tensors. W0000 00:00:1721844709.597670 31592 inference_feedback_manager.cc:114] Feedback manager requires a model with a single signature inference. Disabling support for feedback tensors. Detecting, cropping, and processing..: 0%| | 0/128 [00:00<?, ?it/s]Warning: No face detected on frame 0, skipping Warning: No face detected on frame 1, skipping Warning: No face detected on frame 2, skipping Warning: No face detected on frame 3, skipping Warning: No face detected on frame 4, skipping Warning: No face detected on frame 5, skipping Warning: No face detected on frame 6, skipping Warning: No face detected on frame 7, skipping Warning: No face detected on frame 8, skipping Warning: No face detected on frame 9, skipping Warning: No face detected on frame 10, skipping Warning: No face detected on frame 11, skipping Warning: No face detected on frame 12, skipping Warning: No face detected on frame 13, skipping Warning: No face detected on frame 14, skipping Warning: No face detected on frame 15, skipping Warning: No face detected on frame 16, skipping Warning: No face detected on frame 17, skipping Warning: No face detected on frame 18, skipping Warning: No face detected on frame 19, skipping Warning: No face detected on frame 20, skipping Warning: No face detected on frame 21, skipping Detecting, cropping, and processing..: 17%|███████ | 22/128 [00:00<00:00, 211.43it/s]Warning: No face detected on frame 22, skipping Warning: No face detected on frame 23, skipping Warning: No face detected on frame 24, skipping Warning: No face detected on frame 25, skipping Warning: No face detected on frame 26, skipping Warning: No face detected on frame 27, skipping Warning: No face detected on frame 28, skipping Warning: No face detected on frame 29, skipping Warning: No face detected on frame 30, skipping Warning: No face detected on frame 31, skipping Warning: No face detected on frame 32, skipping Warning: No face detected on frame 33, skipping Warning: No face detected on frame 34, skipping Warning: No face detected on frame 35, skipping Warning: No face detected on frame 36, skipping Warning: No face detected on frame 37, skipping Warning: No face detected on frame 38, skipping Warning: No face detected on frame 39, skipping Warning: No face detected on frame 40, skipping Warning: No face detected on frame 41, skipping Warning: No face detected on frame 42, skipping Warning: No face detected on frame 43, skipping Warning: No face detected on frame 44, skipping Warning: No face detected on frame 45, skipping Warning: No face detected on frame 46, skipping Detecting, cropping, and processing..: 37%|███████████████ | 47/128 [00:00<00:00, 233.03it/s]Warning: No face detected on frame 47, skipping Warning: No face detected on frame 48, skipping Warning: No face detected on frame 49, skipping Warning: No face detected on frame 50, skipping Warning: No face detected on frame 51, skipping Warning: No face detected on frame 52, skipping Warning: No face detected on frame 53, skipping Warning: No face detected on frame 54, skipping Warning: No face detected on frame 55, skipping Warning: No face detected on frame 56, skipping Warning: No face detected on frame 57, skipping Warning: No face detected on frame 58, skipping Warning: No face detected on frame 59, skipping Warning: No face detected on frame 60, skipping Warning: No face detected on frame 61, skipping Warning: No face detected on frame 62, skipping Warning: No face detected on frame 63, skipping Warning: No face detected on frame 64, skipping Warning: No face detected on frame 65, skipping Warning: No face detected on frame 66, skipping Warning: No face detected on frame 67, skipping Warning: No face detected on frame 68, skipping Warning: No face detected on frame 69, skipping Warning: No face detected on frame 70, skipping Warning: No face detected on frame 71, skipping Warning: No face detected on frame 72, skipping Warning: No face detected on frame 73, skipping Warning: No face detected on frame 74, skipping Detecting, cropping, and processing..: 59%|████████████████████████ | 75/128 [00:00<00:00, 251.37it/s]Warning: No face detected on frame 75, skipping Warning: No face detected on frame 76, skipping Warning: No face detected on frame 77, skipping Warning: No face detected on frame 78, skipping Warning: No face detected on frame 79, skipping Warning: No face detected on frame 80, skipping Warning: No face detected on frame 81, skipping Warning: No face detected on frame 82, skipping Warning: No face detected on frame 83, skipping Warning: No face detected on frame 84, skipping Warning: No face detected on frame 85, skipping Warning: No face detected on frame 86, skipping Warning: No face detected on frame 87, skipping Warning: No face detected on frame 88, skipping Warning: No face detected on frame 89, skipping Warning: No face detected on frame 90, skipping Warning: No face detected on frame 91, skipping Warning: No face detected on frame 92, skipping Warning: No face detected on frame 93, skipping Warning: No face detected on frame 94, skipping Warning: No face detected on frame 95, skipping Warning: No face detected on frame 96, skipping Warning: No face detected on frame 97, skipping Warning: No face detected on frame 98, skipping Warning: No face detected on frame 99, skipping Warning: No face detected on frame 100, skipping Warning: No face detected on frame 101, skipping Warning: No face detected on frame 102, skipping Detecting, cropping, and processing..: 80%|████████████████████████████████▏ | 103/128 [00:00<00:00, 259.95it/s]Warning: No face detected on frame 103, skipping Warning: No face detected on frame 104, skipping Warning: No face detected on frame 105, skipping Warning: No face detected on frame 106, skipping Warning: No face detected on frame 107, skipping Warning: No face detected on frame 108, skipping Warning: No face detected on frame 109, skipping Warning: No face detected on frame 110, skipping Warning: No face detected on frame 111, skipping Warning: No face detected on frame 112, skipping Warning: No face detected on frame 113, skipping Warning: No face detected on frame 114, skipping Warning: No face detected on frame 115, skipping Warning: No face detected on frame 116, skipping Warning: No face detected on frame 117, skipping Warning: No face detected on frame 118, skipping Warning: No face detected on frame 119, skipping Warning: No face detected on frame 120, skipping Warning: No face detected on frame 121, skipping Warning: No face detected on frame 122, skipping Warning: No face detected on frame 123, skipping Warning: No face detected on frame 124, skipping Warning: No face detected on frame 125, skipping Warning: No face detected on frame 126, skipping Warning: No face detected on frame 127, skipping Detecting, cropping, and processing..: 100%|████████████████████████████████████████| 128/128 [00:00<00:00, 254.38it/s] Processing driving images...: 100%|██████████████████████████████████████████████████████████| 128/128 [00:00<?, ?it/s] !!! Exception during processing!!! 'NoneType' object has no attribute 'cpu' Traceback (most recent call last): File "E:\AI\ComfyUI_windows_portable\ComfyUI\execution.py", line 151, in recursive_execute output_data, output_ui = get_output_data(obj, input_data_all) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "E:\AI\ComfyUI_windows_portable\ComfyUI\execution.py", line 81, in get_output_data return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "E:\AI\ComfyUI_windows_portable\ComfyUI\execution.py", line 74, in map_node_over_list results.append(getattr(obj, func)(**slice_dict(input_data_all, i))) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "E:\AI\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-LivePortraitKJ\nodes.py", line 328, in process out = pipeline.execute( ^^^^^^^^^^^^^^^^^ File "E:\AI\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-LivePortraitKJ\liveportrait\live_portrait_pipeline.py", line 94, in execute first_driving_rot = driving_rot_list[0].cpu().numpy().astype(np.float32).transpose(0, 2, 1) ^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: 'NoneType' object has no attribute 'cpu'

Prompt executed in 18.67 seconds

tarkansarim commented 1 month ago

Just tried with a video that has a bigger face in the video and it worked so it seems like it doesn't like faces that are very far away?

kijai commented 1 month ago

Just tried with a video that has a bigger face in the video and it worked so it seems like it doesn't like faces that are very far away?

Generally it doesn't, MediaPipe is much worse at distant faces than Insightface too.

tarkansarim commented 1 month ago

I've tried to crop the video to have the face bigger in the picture and it did continue through more and did detect some faces but got more errors. Wondering if MediaPipe is a good solution. Is there a way to switch back to insightface?

kijai commented 1 month ago

I've tried to crop the video to have the face bigger in the picture and it did continue through more and did detect some faces but got more errors. Wondering if MediaPipe is a good solution. Is there a way to switch back to insightface?

You simply use the Insightface node instead, the example workflows have both visible, nothing about it is removed.

tarkansarim commented 1 month ago

Gotcha! Thanks it works now when I had a load cap of 128. When I try to run 128 frames of a different portion of the input video I'm getting this error now.

Error occurred when executing LivePortraitCropper:

not enough values to unpack (expected 2, got 0)

File "E:\AI\ComfyUI_windows_portable\ComfyUI\execution.py", line 151, in recursive_execute output_data, output_ui = get_output_data(obj, input_data_all) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "E:\AI\ComfyUI_windows_portable\ComfyUI\execution.py", line 81, in get_output_data return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "E:\AI\ComfyUI_windows_portable\ComfyUI\execution.py", line 74, in map_node_over_list results.append(getattr(obj, func)(**slice_dict(input_data_all, i))) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "E:\AI\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-LivePortraitKJ\nodes.py", line 578, in process crop_info, cropped_image_256 = cropper.crop_single_image(source_image_np[i], dsize, scale, vy_ratio, vx_ratio, face_index, face_index_order, rotate) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^