Commit Graph
58 Commits
Author SHA1 Message Date
jonstreeter 644680e9df Align ColorMNet pipeline with training normalization 2025-11-21 08:53:02 -06:00
jonstreeterandClaude 85d6ba07e2 Fix video embedding in README using HTML video tag
- Replace broken user-attachments URL with HTML video tag
- Use relative path to assets/ColorizationSample.mp4
- Add fallback download link for unsupported browsers
- Enables native video playback directly in GitHub README

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-18 21:39:33 -06:00
jonstreeterandClaude ad87597bae Update assets and README with new header and sample video
- Replace old workflow screenshots and samples with new header screenshot
- Add ColorizationSample.mp4 as new demo video
- Update README to reference new assets/Header Screenshot.png
- Update README demo video path to ColorizationSample.mp4
- Clean up workflow filename (Colorize_Video_Workflow.json)
- Remove old assets: teaser images, sample PNGs, and old demo video
- Streamline asset directory with only essential files

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-18 21:28:57 -06:00
jonstreeterandClaude de05e623b7 Add demo video section to README
- Added Demo section showcasing ColorMNet colorization results
- Added example video link (Marx Brothers scene, 850+ frames)
- Updated .gitignore to exclude large video files from examples/
- Videos will be hosted via GitHub releases or external hosting

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-18 15:26:52 -06:00
jonstreeterandClaude 4b154c88bb Update workflow to reflect simplified DeepExemplar nodes
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-18 14:52:45 -06:00
jonstreeterandClaude 1c79f4ad10 Improve installer messages and error handling
- Enhanced .gitignore to exclude test scripts and temporary files
- Removed post-processor dependency checks from auto_installer
- Improved CUDA requirements feedback with clearer formatting
- Added graceful handling for corrupted spatial_correlation_sampler
- Fixed SyntaxError catching in addition to ImportError
- Better user guidance for compilation prerequisites

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-18 14:52:31 -06:00
jonstreeterandClaude 0d831af1b9 Simplify DeepExemplar to VGG19-only, fix ColorVidNet skip connections
This commit simplifies the DeepExemplar nodes and fixes several critical issues
discovered during encoder compatibility testing.

Key Changes:

**DeepExemplar Simplification:**
- Removed experimental encoder support from DeepExemplar nodes (VGG19 only)
- Removed feature_encoder, text_guidance parameters from both Image/Video nodes
- Hard-coded DeepExemplar to use VGG19 (its trained baseline)
- Removed 100+ lines of encoder loading/fallback logic
- Simplified dimension adjustment to always use min_multiple=32

Rationale: DeepExemplar's NonlocalNet and ColorNet were trained end-to-end
with VGG19 features. Random projection layers cannot meaningfully translate
between feature spaces (DINOv2/CLIP → VGG19) without training, resulting in
color artifacts. Alternative encoders remain available for ColorMNet.

**ColorVidNet Skip Connection Fixes:**
- Added dynamic interpolation for skip connection alignment
- Fixed three skip connections (conv8_1+conv3_3, conv9_1+conv2_2, conv10_1+conv1_2)
- Prevents shape mismatches with non-standard input dimensions

**NonlocalNet Dynamic Upsampling:**
- Replaced fixed scale_factor=4 upsampling with dynamic interpolation
- Added feature alignment before concatenation
- Ensures compatibility with variable input dimensions

**Feature Extractors Documentation:**
- Added comprehensive warnings about experimental encoder limitations
- Added dinov2_vits support to encoder factory
- Fixed DINOv2 non-square patch grid calculations (patch_h = H//14, patch_w = W//14)
- Fixed CLIP device placement for normalization buffers and projection layers
- Changed CLIP normalization from CLIP-native to ImageNet for compatibility

**Code Cleanup:**
- Removed development markdown files (GITHUB_READY.md, etc.)
- Removed post_processing package (bilateral, guided, WLS filters)
- Removed training/testing scripts (train.py, test.py)
- Removed .vscode configuration files

This leaves a cleaner, production-ready codebase focused on inference.

Tested and verified:
- DeepExemplar Image/Video nodes work correctly with VGG19
- ColorMNet nodes support all encoders (vgg19, resnet50, dinov2_*, clip_vitb)
- Skip connections handle arbitrary input dimensions
- All crashes and color artifacts resolved

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-18 14:52:13 -06:00
jonstreeterandClaude 9727e8479e Enable CUDA-optimized correlation sampler by default
- Changed enable_corr from False to True in ColorMNetConfig
- Provides 2-5x faster colorization when spatial_correlation_sampler is installed
- Falls back gracefully to PyTorch implementation if CUDA extension not available
- Requires: CUDA Toolkit 12.8 and compiled spatial_correlation_sampler

Performance improvement: 20-40% faster frame processing

Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-17 07:51:25 -06:00
jonstreeterandClaude 36860b09dd Embed ColorMNet dependencies for self-contained installation
This fixes the ModuleNotFoundError issues that occurred during clean installations.

Changes:
- Embedded colormnet_source dependencies directly into repository as:
  - colormnet_model/ (model architecture)
  - colormnet_inference/ (inference pipeline)
  - colormnet_util/ (utility functions)
  - colormnet_dataset/ (data transforms and utilities)
- Updated all internal imports to use new embedded paths
- Removed external colormnet_source path dependency from __init__.py
- Added graceful fallback for spatial_correlation_sampler CUDA extension
- Fixed shape calculation bugs in PyTorch fallback implementation
- Added missing dependencies (hickle, scikit-image) to auto-install

The repository is now self-contained and can be installed without requiring
the separate colormnet_source directory.

Tested and verified:
- Node imports work correctly
- Colorization pipeline runs successfully
- Model loads and processes video frames

Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-16 15:31:52 -06:00
jonstreeter 894d8f591b Add ComfyUI Registry metadata (pyproject.toml)
- Configure pyproject.toml for official ComfyUI Registry
- Node name: reference-video-colorization
- Version: 2.0.0
- Publisher ID: jonstreeter
- Include publishing guide for registry.comfy.org
- Set workflow image as icon
2025-11-15 17:12:04 -06:00
jonstreeter 24ab16cd1f Update README header with new workflow screenshot
- Add new comprehensive workflow screenshot showing ColorMNet node
- Replace header image with Reference-Based-Colorization-Workflow.png
- Shows complete video colorization workflow with all node connections
2025-11-15 15:49:50 -06:00
jonstreeterandClaude 6dda556567 Initial release: Reference-Based Video Colorization for ComfyUI
Repository renamed from ComfyUI-Deep-Exemplar-based-Video-Colorization to ComfyUI-Reference-Based-Video-Colorization to better reflect the comprehensive nature of this toolkit.

## Major Features

### Dual Implementation
- ColorMNet (2024) - Modern DINOv2-based approach
- Deep Exemplar (2019) - Classic CVPR method
- 4 total nodes (2 video, 2 image)

### Modern Components
- Multiple feature encoders: VGG19, DINOv2 (ViT-S/B/L), CLIP (ViT-B)
- Advanced post-processing: color-matcher, WLS, guided, bilateral filters
- Silent auto-installer for dependencies (timm, CLIP, color-matcher)
- Comprehensive tooltips on all node parameters

### Performance Optimizations
- torch.compile support (15-25% speedup on PyTorch 2.0+)
- FP16 mixed precision support
- CUDA graphs compatibility handling
- Multiple memory modes for ColorMNet

## Bug Fixes
- Fix torch.compile CUDA graphs compatibility
- Fix ColorMNet model property assignment issue
- Remove unsupported disable_cudagraphs parameter
- Add proper error handling and graceful fallbacks

## Documentation
- Comprehensive user guides and technical documentation
- Performance optimization guides
- Migration guides
- Integration documentation
- Auto-installer documentation

All URLs updated to: https://github.com/jonstreeter/ComfyUI-Reference-Based-Video-Colorization

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-15 13:38:47 -06:00
Blonbar ee17d03e56 Update README.md
cleaned up
2025-03-28 13:00:52 -05:00
Blonbar 352bc39148 Update README.md
fixed link for video
2025-03-28 13:00:02 -05:00
Blonbar d1783c460e Update README.md
added sample video
2025-03-28 12:55:24 -05:00
Blonbar f7f8fa2719 Add files via upload
sample video
2025-03-28 12:45:50 -05:00
Blonbar 3f6f62360e Add files via upload
Added Video Workflow
2025-03-28 12:30:51 -05:00
Blonbar 075ee71879 Delete DeepExemplarColor.py
del
2025-03-28 12:26:02 -05:00
Blonbar 3869e54356 Update README.md
initial node description
2025-03-28 11:29:30 -05:00
Blonbar 4e008fb3f1 Add files via upload
updated teaser
2025-03-28 10:31:24 -05:00
Blonbar b754b6a836 Add files via upload
preview
2025-03-28 10:26:26 -05:00
Blonbar ba47d1fe36 Add files via upload
working version
2025-03-28 08:51:47 -05:00
Blonbar bdde8605e1 Delete DeepExemplarVideoColorNode.py
outdated
2025-03-16 09:09:28 -05:00
Blonbar 32ed37ed56 Delete DeepExemplarImageColorNode.py
outdated
2025-03-16 09:09:15 -05:00
Blonbar fbe4fc4eab Add files via upload
Functional
2025-03-16 09:07:23 -05:00
Blonbar 3eef088d35 Add files via upload
current snapshot - still buggy
2025-03-11 11:36:22 -05:00
Blonbar 9a18ca6553 Create __init__.py 2025-03-08 10:17:39 -06:00
Blonbar 972000b9e3 Add files via upload
added files necessary for ComfyUI custom node
2025-03-08 09:03:40 -06:00
Bo Zhang 2c41bdf34e Update README.md 2022-10-29 12:58:34 +08:00
Bo Zhang f9ded4ccfd Update README.md 2021-12-08 11:31:16 +08:00
zhangmozhe 37639748f1 faster inference 2021-04-08 22:15:38 +08:00
zhangmozhe 5c340b7735 Update README.md 2021-03-29 22:18:07 +08:00
zhangmozhe 9f2f738a7c Update util.py 2021-03-29 22:14:45 +08:00
zhangmozhe abfd164425 Update test.py 2021-03-29 15:50:30 +08:00
zhangmozhe 11b85a1581 remove unnecessary files 2020-12-21 23:27:26 +08:00
zhangmozhe ab2a0fc660 update readme 2020-12-21 23:23:21 +08:00
zhangmozhe e8070cd030 update readme 2020-12-21 23:21:54 +08:00
zhangmozhe ebc06fe6e6 Merge branch 'main' of https://github.com/zhangmozhe/colorization_inference into main 2020-12-21 23:18:33 +08:00
zhangmozhe 875e222242 update training code 2020-12-21 23:17:29 +08:00
zhangmozhe c90714cca0 Update README.md 2020-12-03 13:07:35 +08:00
zhangmozhe 111840eeb1 Update README.md 2020-12-03 13:06:57 +08:00
zhangmozhe a93d050dd1 Update README.md 2020-12-02 21:20:29 +08:00
zhangmozhe 1a20d39e48 Update README.md 2020-12-02 21:19:26 +08:00
zhangmozhe fbac9935e8 Update README.md 2020-12-02 21:19:04 +08:00
zhangmozhe 3ccbf85b4f Update README.md 2020-12-02 21:18:37 +08:00
zhangmozhe 79caf5ca44 Update README.md 2020-12-02 21:15:57 +08:00
zhangmozhe f74f1d0588 update readme 2020-12-02 21:13:48 +08:00
zhangmozhe 805954cee0 Merge branch 'main' of https://github.com/zhangmozhe/colorization_inference into main 2020-12-02 21:08:16 +08:00
zhangmozhe 9e5ea538e6 update readme 2020-12-02 21:08:08 +08:00
zhangmozhe a3c91f06e3 Create LICENSE 2020-12-01 19:49:57 +08:00