Neural Style Transfer (NST) là một kỹ thuật hấp dẫn trong học sâu (DL) cho phép áp dụng phong cách nghệ thuật của một hình ảnh ("style image") vào nội dung của một hình ảnh khác ("content image"), tạo ra một hình ảnh mới pha trộn nội dung của một hình ảnh với phong cách thẩm mỹ của hình ảnh kia. Nó tận dụng sức mạnh của Convolutional Neural Networks (CNN) , thường được đào tạo trước trên các tập dữ liệu lớn như ImageNet , để tách và kết hợp lại các yếu tố nội dung và phong cách của hình ảnh. Kỹ thuật này đã được phổ biến bởi bài báo nghiên cứu " A Neural Algorithm of Artistic Style " của Gatys, Ecker và Bethge.
Chuyển giao phong cách thần kinh hoạt động như thế nào
Ý tưởng cốt lõi đằng sau NST là sử dụng các lớp trung gian của CNN được đào tạo trước, chẳng hạn như mạng VGG được sử dụng rộng rãi, để trích xuất các biểu diễn của cả nội dung và phong cách.
- Biểu diễn nội dung : Các kích hoạt từ các lớp sâu hơn của CNN được sử dụng để nắm bắt nội dung cấp cao của hình ảnh. Một hàm mất mát (mất mát nội dung) được định nghĩa để giảm thiểu sự khác biệt giữa biểu diễn nội dung của hình ảnh nội dung gốc và hình ảnh được tạo ra. Điều này đảm bảo hình ảnh được tạo ra giữ nguyên chủ đề của hình ảnh nội dung. Hiểu được cách trích xuất tính năng là chìa khóa ở đây.
- Biểu diễn kiểu : Kiểu được nắm bắt bằng cách phân tích các mối tương quan giữa các hoạt động trên các bản đồ đặc điểm khác nhau trong nhiều lớp của CNN. Các mối tương quan này, thường được biểu diễn bằng ma trận Gram, nắm bắt kết cấu, mẫu màu và các đặc điểm giống nét cọ, độc lập với các đối tượng cụ thể hiện diện. Một hàm mất kiểu giảm thiểu sự khác biệt giữa biểu diễn kiểu của hình ảnh kiểu và hình ảnh được tạo ra.
- Tối ưu hóa : Một thuật toán tối ưu hóa , như gradient descent , được sử dụng để sửa đổi lặp đi lặp lại một hình ảnh nhiễu ban đầu (hoặc chính hình ảnh nội dung) để giảm thiểu hàm mất mát kết hợp, là tổng có trọng số của mất mát nội dung và mất mát kiểu. Có thể thêm mất mát biến thiên tổng tùy chọn để khuyến khích độ mịn không gian trong hình ảnh đầu ra. Quá trình này chuyển giao hiệu quả kiểu trong khi vẫn bảo toàn nội dung.
Các khái niệm và kỹ thuật chính
NST dựa rất nhiều vào các khái niệm từ học sâu và thị giác máy tính (CV) :
- Các mô hình được đào tạo trước : Việc sử dụng CNN được đào tạo trước trên các tập dữ liệu lớn (như các mô hình được đào tạo trên COCO ) là rất quan trọng. Các mô hình này đã học được các tính năng phân cấp phong phú hữu ích cho cả trích xuất nội dung và phong cách. Đây là một hình thức học chuyển giao .
- Không gian tính năng : Hiểu rằng các lớp khác nhau trong CNN nắm bắt các tính năng ở các cấp độ trừu tượng khác nhau (các cạnh và kết cấu ở các lớp đầu, các bộ phận đối tượng phức tạp ở các lớp sâu hơn) là điều cơ bản đối với NST.
- Chức năng mất mát : Thiết kế cẩn thận các chức năng mất mát về nội dung và phong cách sẽ hướng dẫn quá trình tối ưu hóa theo hướng đạt được kết quả nghệ thuật mong muốn.
Chuyển giao phong cách thần kinh so với các nhiệm vụ liên quan
Điều quan trọng là phải phân biệt NST với các nhiệm vụ CV khác:
- Phân loại hình ảnh : Gán một nhãn duy nhất (ví dụ: 'mèo', 'chó') cho toàn bộ hình ảnh. NST điều chỉnh giao diện hình ảnh dựa trên phong cách, không phải phân loại. Ultralytics YOLO các mô hình có thể thực hiện nhiệm vụ phân loại hình ảnh .
- Phát hiện đối tượng : Xác định và định vị các đối tượng trong một hình ảnh bằng cách sử dụng các hộp giới hạn . Trong khi NST xử lý toàn bộ kiểu hình ảnh, phát hiện đối tượng tập trung vào các trường hợp cụ thể, như những trường hợp được thực hiện bởi Ultralytics YOLO11 .
- Phân đoạn hình ảnh : Gán nhãn lớp cho mỗi pixel (ngữ nghĩa) hoặc phân biệt các trường hợp đối tượng ở cấp độ pixel ( phân đoạn trường hợp ). NST sửa đổi các giá trị pixel dựa trên kiểu, không phải phân loại. Xem các tác vụ phân đoạn Ultralytics để so sánh.
- Mạng đối nghịch tạo sinh (GAN) : GAN như CycleGAN cũng có thể thực hiện chuyển giao phong cách, thường nhanh hơn và đôi khi không cần ví dụ ghép nối, nhưng chúng hoạt động theo các nguyên tắc khác nhau (học ánh xạ giữa các miền) so với phương pháp dựa trên tối ưu hóa của NST cổ điển.
Ứng dụng trong thế giới thực
NST được ứng dụng chủ yếu trong các lĩnh vực sáng tạo:
- Sáng tạo nghệ thuật : Các ứng dụng di động như Prisma và các nền tảng web như DeepArt.io cho phép người dùng dễ dàng áp dụng các phong cách nghệ thuật nổi tiếng vào ảnh của mình.
- Chỉnh sửa ảnh và video : Phần mềm chuyên nghiệp như Adobe Photoshop kết hợp các tính năng giống NST ( Neural Filters ) để tạo hiệu ứng nghệ thuật nâng cao. Chuyển phong cách cũng có thể được áp dụng theo từng khung hình hoặc sử dụng các kỹ thuật nâng cao hơn để chuyển phong cách video .
- Tăng cường dữ liệu : NST có thể được sử dụng để tăng cường dữ liệu bằng cách tạo ra các phiên bản dữ liệu đào tạo đa dạng về phong cách. Điều này có khả năng cải thiện độ mạnh mẽ và khả năng khái quát hóa của các mô hình được đào tạo cho các tác vụ như phát hiện đối tượng hoặc phân loại hình ảnh bằng cách cho chúng tiếp xúc với nhiều phong cách trực quan đa dạng hơn, có khả năng giảm tình trạng quá khớp . Khám phá hướng dẫn tăng cường dữ liệu để biết thêm ngữ cảnh.
- Thiết kế và thời trang : Tạo ra các mẫu mới lạ hoặc áp dụng họa tiết vào thiết kế ý tưởng.
Công cụ và Tài nguyên
Việc triển khai NST được hỗ trợ bởi các khuôn khổ học sâu:
Hiểu được các cơ chế cơ bản, đặc biệt là vai trò của các lớp CNN khác nhau và các hàm mất mát, là chìa khóa để áp dụng và thử nghiệm hiệu quả với Neural Style Transfer. Việc khám phá sâu hơn có thể bao gồm việc tìm hiểu các thuật toán NST nhanh hơn và các phần mở rộng cho các mô hình video và 3D.