Inpainting in Stable Diffusion

Cách cài đặt và sử dụng Inpaint trong Stable Diffusion

Bạn đang sử dụng Stable Diffusion để tạo ra những bức ảnh AI độc đáo, nhưng đôi khi nó lại không hoàn hảo như bạn nghĩ. Có một cách để giúp bạn xử lý và tái tạo lại những bức ảnh AI đó là kỹ thuật Inpaint. Vậy Inpaint là gì? Làm sao để sử dụng hiệu quả công cụ trong Stable Diffusion? Hãy cùng AIChatGPT.vn tìm hiểu chi tiết trong bài viết này.

Giới thiệu

Inpaint là một công cụ mạnh mẽ cho phép tái tạo các vùng ảnh bị thiếu thông tin hoặc hỏng một cách tự nhiên và chính xác. Trong bài viết, chúng ta sẽ bắt đầu bằng việc hướng dẫn cài đặt Inpaint trong Stable Diffusion. Tiếp theo, sẽ đi vào chi tiết quá trình sử dụng Inpaint, khám phá các tham số cần điều chỉnh và cách tùy chỉnh chúng để đạt được kết quả tốt nhất. Mong rằng bạn sẽ có một hướng dẫn chi tiết để cài đặt và sử dụng Inpaint trong Stable Diffusion, mở ra những cơ hội để áp dụng kỹ thuật này vào các dự án xử lý ảnh của riêng bạn.

Xem thêm: Tổng hợp những lỗi thường gặp khi tạo ảnh AI với Stable Diffusion

Inpaint là gì?

Inpaint là gì?

Inpaint là một kỹ thuật trong lĩnh vực xử lý ảnh, được sử dụng để tái tạo các vùng ảnh bị thiếu thông tin hoặc bị hỏng một cách tự nhiên và chính xác. Khi một vùng ảnh bị hỏng, ví dụ như một vết xóa, một đối tượng không mong muốn hoặc một vết nứt, Inpaint cho phép chúng ta dự đoán giá trị pixel của các vùng này dựa trên các vùng xung quanh.

Quá trình Inpaint thường dựa trên phân tích cấu trúc và tính chất của các vùng lân cận. Nó sử dụng thông tin từ các pixel xung quanh vùng bị hỏng để xây dựng một mô hình hoặc áp dụng các thuật toán học máy để dự đoán giá trị pixel còn lại. Mục tiêu của Inpaint là tạo ra một bức ảnh mới sao cho các vùng tái tạo hài hòa với phần còn lại của bức ảnh, với kết quả gần như không thể phân biệt với vùng ảnh ban đầu.

Kỹ thuật Inpaint có nhiều ứng dụng thực tế, bao gồm khôi phục ảnh bị hỏng, loại bỏ đối tượng không mong muốn, điều chỉnh vùng ảnh theo ý muốn và nhiều hơn nữa. Nó được sử dụng rộng rãi trong lĩnh vực xử lý ảnh và đóng vai trò quan trọng trong việc cải thiện chất lượng và hiệu suất của các ứng dụng liên quan đến ảnh số.

Trong Stable Diffusion, Inpaint là công cụ không thể thiếu để sửa chữa những khiếm khuyết nhỏ, loại bỏ các chi tiết thừa hoặc sáng tạo thêm những bức ảnh do AI tạo ra.

Các trường hợp cần sử dụng Inpaint trong Stable Diffusion

Có nhiều trường hợp trong Stable Diffusion mà việc sử dụng Inpaint là cần thiết và hữu ích. Dưới đây là một số trường hợp phổ biến:

  1. Khôi phục ảnh bị hỏng: Khi một bức ảnh bị hỏng do lỗi kỹ thuật, nhiễu, hoặc bị biến dạng xấu xí do AI tạo ra, Inpaint trong Stable Diffusion có thể được sử dụng để tái tạo lại các vùng ảnh bị hỏng một cách tự nhiên và chính xác.
  2. Loại bỏ đối tượng không mong muốn: Khi muốn loại bỏ một đối tượng không mong muốn hoặc không phù hợp khỏi một bức ảnh, Inpaint có thể được áp dụng để điền vào vùng ảnh tương ứng với đối tượng đó bằng cách dự đoán các giá trị pixel từ các vùng xung quanh.
  3. Điều chỉnh vùng ảnh: Inpaint trong Stable Diffusion cũng có thể được sử dụng để điều chỉnh hoặc thay đổi một phần của bức ảnh. Ví dụ, nếu muốn xóa một chi tiết nhỏ hoặc thay đổi màu sắc của một vùng nhất định, Inpaint có thể giúp dự đoán và tái tạo các giá trị pixel phù hợp.
  4. Tạo hiệu ứng khác biệt: Inpaint cũng có thể được sử dụng để tạo ra các hiệu ứng đặc biệt hoặc biến đổi ảnh theo ý muốn. Bằng cách điền vào các vùng ảnh bằng cách dự đoán từ các vùng xung quanh, Inpaint cho phép tạo ra các hiệu ứng mờ, suôn mịn hoặc biến đổi hình dạng của bức ảnh.

Với sự linh hoạt và tính ứng dụng rộng rãi của nó, Inpaint trong Stable Diffusion là một công cụ quan trọng trong việc xử lý ảnh và mang lại nhiều lợi ích trong các trường hợp cần tái tạo, loại bỏ hoặc điều chỉnh các vùng ảnh bị hỏng hoặc không mong muốn.

Hướng dẫn chi tiết cài đặt và sử dụng công cụ Inpaint

Cài đặt giao diện WebGUI Stable Diffusion

Trước tiên bạn cần cài đặt ứng dụng tạo ảnh AI Stable Diffusion có tích hợp sẵn công cụ Inpaint. Bạn có thể tham khảo một trong các link bên dưới để biết cách cài đặt. Nếu sử dụng trực tuyến thông qua Google Colab phải tích chọn bản Inpainting trong lúc cài đặt.

Tùy chọn một mô hình inpainting

Có một mô hình Model Stable Diffusion được đào tạo chuyên biệt để sử dụng inpainting, bạn có thể sử dụng nó nếu bạn muốn có được kết quả tốt nhất. Nhưng thông thường, bạn có thể sử dụng cùng một mô hình mà bạn đã tạo hình ảnh AI từ SD để inpainting.

Để cài đặt mô hình Inpainting v1.5 bạn có thể tải Model Checkpoint này và cài đặt nó vào thư mục

stable-diffusion-webui/models/Stable-diffusion

Trong AUTOMATIC1111, nhấn vào biểu tượng làm mới bên cạnh ô tùy chọn model checkpoint để làm mới. Chọn sd-v1-5-inpainting.ckpt để kích hoạt mô hình.

Sử dụng inpainting

Tạo lớp phủ mask inpaint

Trong GUI AUTOMATIC1111, Chọn tab img2img và chọn tab phụ Inpaint . Tải hình ảnh lên khung inpainting.

Sử dụng công cụ cọ vẽ để tạo một lớp mặt nạ mask vào khu vực bạn muốn Stable Diffusion tái tạo hình ảnh. Trong ví dụ minh hoạ chúng ta sẽ vẽ cả cánh tay phải và khuôn mặt cùng một lúc.

Tạo lớp phủ mask inpaint

Cài đặt thông số cho inpainting

Lời nhắc prompt

Bạn có thể sử dụng lại lời nhắc như ban đầu để sửa lỗi. Điều này giống như tạo ra nhiều hình ảnh nhưng chỉ trong một khu vực cụ thể.

Kích cỡ hình

Kích thước hình ảnh cần được điều chỉnh để giống với hình ảnh gốc.

Phục hồi khuôn mặt

Nếu bạn đang vẽ khuôn mặt, bạn có thể bật restore faces. Bạn cũng sẽ cần chọn và áp dụng mô hình face restoration sẽ được sử dụng trong tab Cài đặtCodeFormer là một lựa chọn tốt.

Lưu ý rằng tùy chọn này có thể tạo ra vẻ ngoài không tự nhiên. Nó cũng có thể tạo ra điều gì đó không phù hợp với phong cách của mô hình.

Nội dung lớp phủ (Mask content)

Cài đặt quan trọng tiếp theo là Mask content.

Chọn bản gốc (original) nếu bạn muốn kết quả được hướng dẫn bởi màu sắc và hình dạng của nội dung gốc. Bản gốc thường được sử dụng khi vẽ khuôn mặt vì hình dạng chung và giải phẫu là ok. Chúng ta chỉ muốn nó trông hơi khác một chút.

Trong hầu hết các trường hợp, bạn sẽ sử dụng original và thay đổi cường độ khử nhiễu (denoising strength) để đạt được các hiệu ứng khác nhau.

Bạn có thể sử dụng latent noise hoặc latent nothing nếu bạn muốn tạo lại thứ gì đó hoàn toàn khác với bản gốc, chẳng hạn như loại bỏ một chi hoặc giấu một bàn tay. Các tùy chọn này khởi tạo vùng được che bằng một thứ khác với hình ảnh gốc. Nó sẽ tạo ra một cái gì đó hoàn toàn khác.

cường độ khử nhiễu (denoising strength)

Cường độ khử nhiễu kiểm soát mức độ thay đổi nó sẽ tạo ra so với hình ảnh gốc. Sẽ không có gì thay đổi khi bạn đặt thành 0. Bạn sẽ nhận được một bức tranh không liên quan khi đặt thành 1.

0,75 thường là một điểm khởi đầu tốt. Giảm nếu bạn muốn thay đổi ít hơn.

Batch size

Đảm bảo tạo một vài hình ảnh cùng một lúc để bạn có thể chọn những hình ảnh tốt nhất. Đặt seed thành -1 để mọi hình ảnh đều khác nhau.

Bảng tóm tắt thiết lập các thông số trong Inpaint

Prompt:Giống prompt như ảnh gốc
Sampling steps:20
Seed:-1
Image size:Giống size như ảnh gốc
Face restoration:Codeformer
Sampling method:Euler a
Model:Stable Diffusion v1.5 inpainting
Mask content:latent noise or latent nothing
Inpaint at full resolution:On
Denoising strength:0.75

Kết quả inpainting

Kết quả inpainting

Lặp lại inpainting

Nếu kết quả inpaint vẫn còn lỗi hoặc chưa như ý muốn, bạn có thể thực hiện thao tác Inpaint một lần nữa trên ảnh đã tạo. Inpainting là một quá trình lặp đi lặp lại. Bạn có thể áp dụng nó nhiều lần nếu muốn tinh chỉnh một hình ảnh.

Hãy sử dụng inpaint một lần nữa với bức ảnh bị dư tay ở trên, bạn sẽ được ảnh cuối trong hoàn hảo hơn.

Lặp lại inpainting

Đôi khi bạn muốn thêm một cái gì đó mới vào hình ảnh. Hãy thử thêm một chiếc quạt cầm tay vào bức tranh.

Đầu tiên, tải hình ảnh lên canvas inpaint và tạo mặt nạ quanh ngực và cánh tay phải.

Thêm lời nhắc “tay cầm quạt” vào đầu prompt ban đầu. Chúng ta được prompt inpainting là:

(holding a hand fan: 1.2), [emma watson: amber heard: 0.5], (long hair:0.5), headLeaf, wearing stola, vast roman palace, large window, medieval renaissance palace, ((large room)), 4k, arstation, intricate, elegant, highly detailed

Việc thêm các đối tượng mới vào lời nhắc ban đầu đảm bảo tính nhất quán về kiểu dáng. Bạn có thể điều chỉnh trọng số từ khóa (1,2 ở trên) để nhấn mạnh hình ảnh quạt.

Thiết lập masked content như là latent noise. Điều chỉnh cường độ khử nhiễu và tỷ lệ CFG để tinh chỉnh hình ảnh inpaint.

Thêm đối tượng mới bằng inpainting

Giải thích các thông số inpainting

Denoising strength (cường độ khử nhiễu)

Cường độ khử nhiễu kiểm soát mức độ ảnh hưởng của hình ảnh cuối cùng so với nội dung gốc. Đặt nó thành 0 sẽ không có gì thay đổi. Đặt thành 1 bạn có một hình ảnh khác xa với ảnh gốc.

Đặt thành giá trị thấp nếu bạn muốn thay đổi nhỏ và giá trị cao nếu bạn muốn thay đổi lớn.

Denoising strength

CFG scale

Tương tự như cách sử dụng trong text-to-image, Classifier Free Guidance scale là một tham số để kiểm soát mức độ ảnh hưởng của mô hình đối với lời nhắc của bạn.

  • 1 – Chủ yếu bỏ qua lời nhắc của bạn.
  • 3 – Hãy sáng tạo hơn.
  • 7 – Một sự cân bằng tốt giữa làm theo lời nhắc và tự do.
  • 15 – Tuân thủ nhiều hơn lời nhắc.
  • 30 – Tuân thủ nghiêm ngặt lời nhắc.

Masked content

Thông số này kiểm soát cách vùng che phủ được khởi tạo.

  • Fill: Khởi tạo với độ mờ cao của hình ảnh gốc.
  • Original: Không sửa đổi.
  • Latent noise: Vùng che phủ được khởi tạo và lấp đầy với nhiễu ngẫu nhiên được thêm vào.
  • Latent nothing: Giống như Latent noise nhưng không có nhiễu nào được thêm vào.

Dưới đây là một ví dụ về Masked content để cung cấp cho bạn một số ý tưởng về những gì chúng thực hiện đang có.

Masked content

Một số lưu ý khi sử dụng Inpaint

Khi sử dụng Inpaint trong xử lý ảnh, dưới đây là một số lưu ý quan trọng cần cân nhắc:

  1. Lựa chọn vùng xung quanh: Khi thực hiện Inpaint, việc lựa chọn vùng xung quanh để dự đoán giá trị pixel còn lại là rất quan trọng. Vùng này nên chứa thông tin đủ để đưa ra dự đoán chính xác, nhưng cũng không nên chứa quá nhiều thông tin nhiễu. Sự lựa chọn thông minh và cân nhắc của vùng xung quanh sẽ ảnh hưởng đến kết quả cuối cùng.
  2. Đánh giá kết quả: Sau khi áp dụng Inpaint, luôn kiểm tra kết quả tái tạo và đánh giá mức độ tự nhiên và chính xác của vùng đã được tái tạo. Nếu kết quả không đạt yêu cầu hoặc vẫn có dấu hiệu nhận dạng được, có thể điều chỉnh các tham số hoặc phương pháp Inpaint để cải thiện kết quả.
  3. Điều chỉnh tham số: Các công cụ Inpaint thường cung cấp các tham số điều chỉnh, như kích thước vùng xung quanh, phương pháp dự đoán, độ phức tạp của mô hình, và nhiều tham số khác. Việc điều chỉnh các tham số này có thể ảnh hưởng đáng kể đến kết quả Inpaint, vì vậy hãy thử nghiệm và tinh chỉnh để đạt được kết quả tốt nhất cho từng trường hợp cụ thể.
  4. Xử lý vùng biên: Vùng biên giữa các vùng bị hỏng và vùng không bị hỏng có thể gây ra hiện tượng không mượt mà hoặc không tự nhiên. Để khắc phục điều này, có thể áp dụng các kỹ thuật mượt mà vùng biên hoặc kết hợp với các phương pháp xử lý vùng biên khác để tạo sự liên tục và chuyển tiếp mượt mà giữa hai vùng.
  5. Kiểm tra tính ổn định: Trong quá trình sử dụng Inpaint, cần đảm bảo tính ổn định và hiệu suất của thuật toán. Đôi khi, việc áp dụng Inpaint trên các vùng ảnh lớn hoặc phức tạp có thể gây ra sự chậm trễ hoặc gây ra lỗi không mong muốn. Do đó, cần kiểm tra tính ổn định và hiệu suất của thuật toán Inpaint trên các tình huống khác nhau trước khi áp dụng nó cho toàn bộ ảnh hoặc tập dữ liệu lớn.
  6. Đánh giá mất mát thông tin: Trong quá trình tái tạo các vùng bị hỏng, Inpaint có thể gây mất mát thông tin ban đầu và tạo ra sự khác biệt so với bức ảnh gốc. Việc đánh giá mức độ mất mát thông tin và tác động của Inpaint đến bức ảnh ban đầu là quan trọng, đặc biệt đối với các ứng dụng yêu cầu sự chính xác cao như pháp y hay pháp lý.
  7. Kết hợp với các phương pháp khác: Trong một số trường hợp, sử dụng Inpaint đơn lẻ có thể không đạt được kết quả tốt nhất. Kết hợp Inpaint với các phương pháp khác như phân vùng ảnh, xử lý nhiễu hoặc biến đổi màu sắc có thể cải thiện hiệu quả và chất lượng của quá trình tái tạo.

Những lưu ý trên sẽ giúp bạn sử dụng Inpaint một cách hiệu quả và đạt được kết quả tốt nhất trong việc tái tạo, loại bỏ hoặc điều chỉnh các vùng ảnh bị hỏng.

Câu hỏi thường gặp khi sử dụng công cụ Inpaint trong Stable Diffusion

Khi sử dụng công cụ Inpaint trong Stable Diffusion, dưới đây là một số câu hỏi thường gặp và câu trả lời tương ứng:

1. Công cụ Inpaint trong Stable Diffusion có miễn phí không?

  • Có, bạn hoàn toàn có thể cài đặt và tích hợp Inpaint vào việc xử lý ảnh trong Stable Diffusion miễn phí theo hướng dẫn ở phần trên.

2. Làm thế nào để lựa chọn vùng xung quanh phù hợp để tái tạo?

  • Lựa chọn vùng xung quanh nên chứa thông tin gần giống với vùng bị hỏng và không chứa nhiễu nhiều. Có thể thử nghiệm với các kích thước và hình dạng khác nhau của vùng xung quanh để tìm ra sự kết hợp tốt nhất.

3. Làm thế nào để điều chỉnh các tham số Inpaint để đạt kết quả tốt?

  • Tham số Inpaint có thể bao gồm kích thước vùng xung quanh, phương pháp dự đoán, độ phức tạp của mô hình và nhiều tham số khác. Cần thử nghiệm và điều chỉnh từng tham số để tìm ra cấu hình tốt nhất cho từng tình huống cụ thể.

4. Làm thế nào để đánh giá chất lượng của kết quả Inpaint?

  • Đánh giá chất lượng của kết quả Inpaint có thể dựa trên tính tự nhiên, sự liên tục và mượt mà của vùng đã được tái tạo. Ngoài ra, so sánh với bức ảnh gốc và kiểm tra mức độ khác biệt và mất mát thông tin cũng là một phương pháp đánh giá.

5. Tôi cần xử lý vùng biên một cách đặc biệt không?

  • Vùng biên giữa vùng bị hỏng và vùng không bị hỏng có thể tạo ra hiện tượng không mượt mà hoặc không tự nhiên. Có thể áp dụng các kỹ thuật mượt mà vùng biên hoặc kết hợp với các phương pháp xử lý vùng biên khác để tạo sự liên tục và chuyển tiếp mượt mà giữa hai vùng.

6. Có thể kết hợp Inpaint với các phương pháp xử lý ảnh khác không?

  • Có, Inpaint có thể được kết hợp với các phương pháp xử lý ảnh khác như phân vùng ảnh, xử lý nhiễu hoặc biến đổi màu sắc để tạo ra kết quả tốt hơn. Việc kết hợp các phương pháp này có thể cải thiện hiệu quả và chất

Kết luận

Inpaint trong Stable Diffusion là một công cụ mạnh mẽ và linh hoạt trong việc tái tạo, loại bỏ và điều chỉnh các vùng ảnh bị hỏng hoặc không mong muốn. Qua bài viết, chúng ta đã tìm hiểu cách cài đặt và sử dụng Inpaint để đạt được kết quả tốt nhất. Bên cạnh đó, việc kết hợp Inpaint với các phương pháp xử lý ảnh khác cũng có thể cải thiện hiệu quả và chất lượng của quá trình. Sự linh hoạt và tính ứng dụng rộng rãi của Inpaint trong Stable Diffusion mở ra nhiều khả năng trong việc xử lý ảnh và đáp ứng nhu cầu của nhiều trường hợp khác nhau.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *