Trình upscale ảnh AI mã nguồn mở miễn phí “Upscayl”
(github.com/upscayl)- Upscayl là trình upscale ảnh mã nguồn mở miễn phí, dùng các thuật toán AI cao cấp để phóng to và cải thiện ảnh độ phân giải thấp; hiện cung cấp bản phát hành mới nhất v2.15
- Chi tiết ảnh được cải thiện bằng cách để mô hình AI suy đoán các chi tiết có thể có, sử dụng kiến trúc Real-ESRGAN và Vulkan
- Cần GPU tương thích Vulkan để chạy, và có thể không hoạt động trên phần lớn GPU tích hợp (iGPU) hoặc CPU
- Hỗ trợ Linux, macOS 12 trở lên, Windows 10 trở lên; riêng Linux cung cấp nhiều cách phân phối như Flatpak, AppImage, AUR, Snap, RPM, DEB, ZIP
- Đây không phải công cụ khôi phục ảnh mờ hoặc mất nét; nên dùng đầu vào phù hợp với việc cải thiện ảnh độ phân giải thấp hoặc ảnh bị pixel hóa
Upscayl làm gì
- Upscayl là trình upscale ảnh AI mã nguồn mở miễn phí để phóng to và cải thiện ảnh độ phân giải thấp
- Mục tiêu là phóng to ảnh mà không làm giảm chất lượng; trang chính thức là upscayl.org
- Bản phát hành mới nhất được giới thiệu là v2.15
Cách hoạt động và công nghệ cốt lõi
- Upscayl cải thiện ảnh bằng cách để mô hình AI suy đoán các chi tiết trong ảnh
- Bên trong sử dụng kiến trúc Real-ESRGAN và Vulkan
- Backend là upscayl-ncnn, một backend hoàn toàn mã nguồn mở theo giấy phép AGPLv3
- Công cụ CLI cũng được cung cấp với tên upscayl-ncnn
Cài đặt và nền tảng hỗ trợ
- Upscayl cần GPU tương thích Vulkan để upscale ảnh
- Nhiều GPU tích hợp có thể không hoạt động
- README cho biết việc tự thử vẫn không có vấn đề gì
- Trên Linux, ứng dụng nên có trong danh sách phần mềm của hầu hết các bản phân phối
- Ứng dụng Store của bản phân phối cũng có thể hỗ trợ phiên bản Flatpak hoặc Snap
- Với cách dùng dạng portable, tải
upscayl-x.x.x-linux.AppImagetừ mục phát hành hoặc website chính thức, sau đó cấp quyền thực thi và chạy - Cũng có thể chọn các định dạng RPM, DEB, ZIP
- macOS nhắm đến macOS 12 trở lên
- Có cung cấp liên kết Mac App Store
- Có thể tải tệp DMG, chuyển vào thư mục Applications rồi mở bằng Finder
- Lệnh cài đặt qua Homebrew là
brew install --cask upscayl
- Windows nhắm đến Windows 10 trở lên
- Tải và chạy
upscayl-x.x.x-win.exe - Nếu xuất hiện cảnh báo SmartScreen, chọn
More InforồiRun Anyway, hoặc nhấnYEStrong hộp thoại nhà phát hành chưa xác minh
- Tải và chạy
Tài liệu, mô hình và kiểm tra kết quả
- Có thể xem tài liệu và hướng dẫn tại Upscayl Documentation
- Có thể thử các mô hình bổ sung tại custom-models
- Cách tự chuyển đổi mô hình có trong wiki Model Conversion
- Có thể kiểm tra khả năng tương thích trong Compatibility List
- Dùng tài liệu Troubleshooting để xử lý sự cố
- Kết quả so sánh trước và sau khi upscale được hướng dẫn xem trong
COMPARISONS.MD
Hạn chế và lưu ý khi sử dụng
- Upscayl có thể cải thiện ảnh độ phân giải thấp và ảnh bị pixel hóa
- Không cung cấp chức năng khử mờ hay điều chỉnh tiêu điểm
- Không phù hợp với ảnh bị mất nét hoặc hoàn toàn mờ nhòe
- README khuyến nghị dùng những ảnh tương tự các ví dụ được cung cấp
- GPU ID là thiết lập dùng để chọn GPU sẽ sử dụng
- Quy trình cụ thể có trong Wiki Guide
- Trên Windows, nếu Upscayl không được đặt ở chế độ hiệu năng, hệ thống có thể ghi đè thiết lập này
- Nếu khi dừng Batch Upscayl giữa chừng mà ảnh chưa được xử lý, hoặc phần nén/thang đo không đúng, có thể mô hình không hỗ trợ tác vụ cụ thể đó
- Khi đó Upscayl sẽ hoàn tất việc upscale toàn bộ ảnh trước rồi mới thực hiện hậu xử lý, nên cần chờ cho đến khi tiến trình kết thúc
Phát triển và build
- Khuyến nghị dùng Volta để cài Node.js cho môi trường phát triển
- Sau khi cài Volta, chạy
volta install node
- Sau khi cài Volta, chạy
- Luồng chạy cục bộ gồm clone kho lưu trữ, cài dependency, rồi chạy máy chủ phát triển
git clone https://github.com/upscayl/upscaylcd upscaylnpm installnpm run start
- Nếu không muốn cài Git, có thể tải source zip, giải nén vào thư mục
upscayl, rồi tiếp tục các bước còn lại - Đóng gói ứng dụng bằng
npm run dist - Lệnh phát hành ứng dụng là
npm run publish-app; hướng dẫn rằng chỉ maintainer mới thêmGH_TOKEN=vào shell rồi chạy lệnh này
1 bình luận
Các ý kiến trên Hacker News
Nếu bạn giống tôi, đang dùng Real-ESRGAN-ncnn-vulkan [1] và tò mò upscayl-ncnn CLI [2] đã thay đổi gì, thì có vẻ không có khác biệt lớn và cũng không có nhiều thay đổi thực chất [3]
Không phải tôi muốn chỉ trích, chỉ là muốn biết có đáng chuyển sang công cụ CLI này không. $subj là một ứng dụng GUI riêng dựa trên nó
[1] https://github.com/xinntao/Real-ESRGAN-ncnn-vulkan
[2] https://github.com/upscayl/upscayl-ncnn
[3] https://github.com/xinntao/Real-ESRGAN-ncnn-vulkan/compare/m...
Nếu dùng Real-ESRGAN, bạn phải chấp nhận một codebase đã lâu không được cập nhật cùng nhiều vấn đề. Theo tôi biết, Upscayl NCNN hiện là dự án duy nhất đang bảo trì Real-ESRGAN NCNN
Tôi đã phóng to nhiều ảnh cũ trong album gia đình, rồi dùng các công cụ như Photoroom, Snapseed để sửa khuyết điểm và gửi đi in; kết quả thật sự rất tốt
Khi tìm thấy một bức ảnh cũ độ phân giải thấp mà dù tìm bản gốc độ phân giải cao trên Google, DuckDuckGo, Kagi thế nào cũng không ra, tôi dùng RealESRGAN để upscale làm hình nền, nền cho bài thuyết trình, v.v.
Mỗi lần thấy cảnh “enhance” ảnh trên TV hay phim là tôi cười rất nhiều: https://youtu.be/LhF_56SxrGk
Có vẻ khoa học viễn tưởng của ngày hôm qua giờ đã thành hiện thực
Nhưng giờ thì có rồi. “Enhance” đã thực sự trở nên khả thi
Tôi đã thử hồi tháng 12 và thấy khá trực quan. Có thể khuyên dùng cho người mới muốn khám phá thử nhiều công cụ
Tuy nhiên theo tôi hiểu thì chất lượng còn cách khá xa mức tiên tiến nhất. Gần đây một người bạn giới thiệu Topaz, nhưng nó không phải mã nguồn mở
Nếu huy động đủ kinh phí, chúng tôi có kế hoạch tự xây dựng một model vững chắc :)
https://ckovalev.com/midjourney-ai/guide/upscaling-ai-art-fo...
UpScayl rất tuyệt và tôi dùng thường xuyên trong công việc. Tôi dùng đủ kiểu: phóng to nhanh đồ họa hoặc minh họa độ phân giải thấp để xử lý đồ họa, phóng to ảnh chân dung để in và làm việc trong Photoshop, phóng to các bản sao cũ để biên tập
Nó không hoàn hảo, nhưng các lựa chọn thay thế cũng không hoàn hảo. Dù vậy nó cực kỳ hữu ích
upscayl dễ tiếp cận, nhưng thiếu khá nhiều tính năng tôi cần. Sau khi upscaling trở thành một phần thường xuyên trong quy trình làm việc, tôi chuyển sang dùng https://github.com/AUTOMATIC1111/stable-diffusion-webui, nhưng với người chỉ muốn cải thiện vài bức ảnh thì đây là công cụ lý tưởng
Các upscaler hiện nay, nếu so với tiến bộ ở những lĩnh vực khác, vẫn khiến tôi bất ngờ vì cảm giác không đạt kỳ vọng
Có model nào làm dọn dẹp ảnh chứ không chỉ đơn thuần upscale không? Tôi có nhiều ảnh cũ chụp bằng máy ảnh compact đời đầu, độ phân giải thấp, có các vấn đề như artifact JPEG
Tôi nghĩ với model hiện đại thì có thể fine-tune dễ dàng để xử lý các vấn đề này, nhưng cứ vài tháng tôi lại tìm mà vẫn chưa thấy
Phần lớn có thể chạy local, nhưng tôi khuyên nên thử trên replicate trước khi dành thời gian tìm hiểu cog/docker/hf
Đáng tiếc là với video, tôi vẫn chưa thấy gì đạt chất lượng ngang các công cụ trả phí của Topaz Labs. Các implementation khác dường như luôn gặp vấn đề về độ sắc nét và tính nhất quán
Tôi mong ai đó chứng minh là tôi sai. Tôi có một dự án đang bị đình lại vì chất lượng và độ phân giải nguồn quá thấp
Liên quan đến chuyện này, có ứng dụng nào tương ứng với xóa watermark không?