Ứng dụng mạng neural thần kinh trong việc phục hồi ảnh Hentai bị mờ

57
9561

Chào các bạn, cuối tuần mình chúc bạn đọc có 1 tháng tràn đầy điều mới mẻ và may mắn. Chủ đề hôm nay mình muốn nói tới là việc ứng dụng mạng neural thần kinh vào việc phục hồi ảnh Hentai bị làm mờ.

Bạn có bao giờ tò mò muốn xem những ảnh hentai bị làm mờ? Công cụ này giúp bạn làm điều đó, dĩ nhiên trong khuôn khổ anime bởi model để train chỉ toàn ảnh anime thôi.

Đây là 1 repo nằm trên Github Trends mình tình cờ phát hiện. Thấy hay quá với cả tiềm năng cao nên viết 1 bài giới thiệu luôn cho anh em trên Share Ngay. Được phát triển bởi deeppomf nhằm mục đích nghiên cứu là chính. Điểm mạnh tool này là có file .exe chạy trực tiếp trên Windows x64 bit để anh em dễ dàng test.

Điểm sơ qua 1 vài thông tin về repo:

  • Repo có tên DeepCreamPy – nhằm mục đích tái tạo những hình ảnh Anime bị che mờ, bị mất đi tính rõ ràng bằng cách khôi phục những vùng ảnh bị làm mờ 1 cách hợp lý.
  • Repo sử dụng Tensorflow – phù hợp cho các bạn fetch về học tập và cải tiến dưới giấy phép GNU 3.0 (*).

(*) – giấy phép GNU 3.0 cho phép bạn có quyền tự do chỉnh sửa, sao chép, cải tiến chương trình. Phần mềm public cũng phải dưới giấy phép GNU 3.0 – tức không độc quyền cho riêng bạn.

Lợi ích từ bài viết này:

  • Hiểu về Deep Neural Networks
  • Cần học Tensorflow? Có example chất đây.
  • Tự mình khám phá tool.
  • Chia sẻ bộ tài liệu về Deep Learning, Machine Learning,….

A. Giải ngố về Deep Neural Networks:

AI hay Machine Learning là đề tài được bàn tán sôi động nhất dạo gần đây nên hầu hết mọi người đều có nghe qua đúng không nhỉ? Thế giới hay nhỏ hơn là Việt Nam cũng đang hội nhập và bước vào kỷ nguyên 4.0 nơi máy móc hoạt động làm chủ con người… à lộn, nơi máy móc có ý thức.

Share Ngay cũng có dịp viết 1 bài viết về kỷ nguyên 4.0 và giải thích rất dễ hiểu tại đây. Qua bài viết các bạn có thể thấy Deep Learning là 1 trong 6 mũi nhọn chính thúc đẩy ngành công nghiệp 4.0 trong tương lai.

Mình xin phép tách thành 2 cụm từ là Deep Learning và Neural Networks để phân tích và giải thích rõ hơn cho bạn đọc.

1. Vậy Deep Learning là gì?

Deep Learning đơn giản là 1 phương pháp học máy (Machine Learning). Để học sâu và tự suy, nó cần 1 dữ liệu mẫu rất lớn gọi là model.

Positive data và Negative data là dữ liệu mẫu đầu vào, bạn hình dung để máy tính học được đâu là biển số xe thì bạn cần thật nhiều ảnh không liên quan đến biển số xe (negative data training) và thật nhiều ảnh có chứa biển số xe (positive data training)  => từ đó em nó sẽ thông qua các thuật toán và học được, để khi bạn đưa 1 ảnh bất kỳ nó biết ngay ảnh đó có biển số xe hay không!

Nói về thực tế: lúc trước mình train để nhận diện biển số xe bằng OpenCV. Data đầu vào khoảng 80k ảnh với tỉ lệ 3:5. Tức 30k ảnh positive và 50k ảnh negative. Thường positive training data ít hơn rất nhiều so với negative training data.

Deep Learning thực sự rất rộng! Để máy tính hiểu được thứ mà bạn đưa cho nó là gì hoặc kêu nó dự đoán (chứng khoán chẳng hạn) thì cần 1 tập dữ liệu khổng lồ. Nó sẽ liên tục học hỏi từ tệp dữ liệu bạn bổ sung và cải tiến liên tục.

2. Neural Networks là gì?

Neural Networks là mạng neutal thần kinh gần như mô phỏng não người, Neural Networks cũng được cấu thành từ các neural thần kinh là 1 mạng lưới nút tròn được liên kết chặt chẽ với nhau nhằm thông tin và trả về dữ liệu.

Nhìn hình ta thấy, Neural Network có cấu tạo rất đơn giản, gồm 3 lớp chính:

  • Input nodes layer: nhận dữ liệu đầu vào. Na gửi cho con AI 1 tấm ảnh có chứa biển số xe nhưng bị làm mờ các kiểu.
  • Hidden nodes layer: giúp tính toán và xử lý logic từ dữ liệu input vừa nãy. Con AI dựa vào các thuật toán phân tích hình ảnh đầu vào và so sánh với dữ liệu học được từ model trước đó.
  • Output nodes layer: trả về dữ liệu đã được xử lý. AI phán: tau dự đoán là hình ảnh trên có chứa biển số xe.

3. Deep Neural Networks – hay còn gọi là đào tạo mạng neural thần kinh.

Qua 2 phần trên các bạn cũng ngầm hiểu chúng ta đang đối mặt với 1 vấn đề khá đau não, đó là dạy cho con AI hiểu được hình nào chứa biển số xe. Đối với 1 đứa trẻ, việc học tập cực kỳ nhanh nhưng với máy tính lại khác, để chính xác đặt lên hàng đầu nó cần:

  • Thời gian + sức mạnh xử lý từ máy tính để học.
  • Bộ dữ liệu cực lớn và thường dữ liệu phải có 1 format chuẩn.
  • Thuật toán thông minh cho nó biết nó cần làm gì để học nhanh.

Câu hỏi mở dành cho bạn:

Tại sao con người học nhanh và thông minh hơn AI?

Cho bạn nhìn 1 con gà, sau đó đưa bạn xem 1 con gà Đông Tảo hay gà chân đen bạn vẫn có thể nhận biết nó là con gà cho dù trước đây bạn chưa từng thấy nó. Với bạn đó là điều hiển nhiên và quá dễ dàng, nhưng với AI thì khác. Vấn đề này mình cũng suy nghĩ cá nhân thôi, bạn cần biết 2 thứ:

  • Supervised learning và Unsupervised learning.
  • Giới hạn của máy tính so với con người.

Vấn đề thứ nhất: mình nghĩ con người học theo kiểu Unsupervised kết hợp với cả Supervised Learning.

  • Supervised Learning tức tự học có giám sát: AI tự học nhưng theo những thuật toán lập trình sẵn và bộ dữ liệu đầu vào cố định được con người lọc sẵn. Hầu hết các ứng dụng áp dụng Deep Learning đều học theo cách này.
  • Unsupervised learning tức để AI tự học, tự tạo bộ dữ liệu mới từ bộ dữ liệu đầu vào và tiếp tục học để cải tiến liên tục.

Vấn đề thứ hai: giới hạn của máy tính với con người: thực sự cái này quá rộng để nói trong 1 bài viết trên Share Ngay, các bạn có thể tìm hiểu thêm tại đây.

B. Tìm hiểu chi tiết về DeepCreamPy:

Giờ các bạn đã có đủ lượng kiến thức cơ bản để hiểu được quá trình tạo ra repo này, trái tim chính của repo này nằm ở tệp model.h5 trong folder ./models chứa models đã được train từ siêu nhiều data mẫu.

Những tính năng dự án có:

  • Hỗ trợ ảnh với bất kỳ kích thước.
  • Ngưng làm mờ bất cứ ảnh bị vẽ bởi các Shape có hình dạng bất kỳ như: đường gạch màu đen, trái tim màu hồng,…
  • Xuất ra ảnh chất lượng cao hơn ảnh bị làm mờ luôn.
  • Support for mosaic decensors (still a WIP and not very usable)
  • Hỗ trợ giao diện người dùng (vẫn đang trong quá trình phát triển nên chưa dùng được)

Hạn chế của dự án hiện tại không hỗ trợ:

  • Hình ảnh đen trắng – đơn sắc.
  • Hentai chứa Screentone (*).
  • Ảnh khiêu dâm ngoài đời thực.
  • Hình ảnh bị làm mờ ti em bé.
  • Hình ảnh bị làm mờ ass.
  • Hình GIFs hoặc video chưa được hỗ trợ.

(*) – Screentone hay còn gọi là giấy hoa văn dùng để tạo hiệu ứng các đường chuyển động, gió,… nói chung là hình trong truyện tranh lâu lâu có kiểu như vậy giúp trang truyện sinh động hơn. Nhưng khiến tool không nhận dạng được.

A/e có thể khôi phục ảnh bị làm mở ở những bộ phận nhạy cảm, tuy nhiên nếu những bộ phận này hoàn toàn bị che thì việc khôi phục không khả thi.

Nguyên văn:

The decensorship is intended to work on color hentai images that have minor to moderate censorship of the penis or vagina. If a vagina or penis is completely censored out, decensoring will be ineffective.

C. Hướng dẫn khôi phục ảnh bị làm mờ:

Xem video hướng dẫn tại đây:

# Bước 1:

Cài đặt Microsoft Visual C++ 2015:

Link cài đặt Visual C++ 2015.

Cài đặt Python 3.6.7, lưu ý TensorFlow không hỗ trợ Python 2.7 nên phải cài bản 3 trở lên nha.

Link cài đặt Python 3.6.7.

Vào đường dẫn này, tải file zip có dạng: DeepCreamPy_1.3.0-beta_win64.zip (cập nhật ngày 30/11/2018).

Url chứa tất cả các bản release.

# Bước 2:

Kiếm 1 tấm ảnh bị làm mờ, bạn có thể tải ảnh bên dưới để thử nghiệm cũng được:

Link ảnh: tải tại đây. Không tải ảnh mình chèn dưới đây vì mình đã giảm chất lượng ảnh đi nhiều để đăng bài nên tool sẽ mất thời gian để phân tích.

Ảnh này đã bị vẽ bút xanh lung tung rồi (đừng tải ảnh này, tải link bên trên nhé)

Sau khi tải về tệp zip ở bước 1, giải nén ra và copy ảnh này vào folder decensor_input

# Bước 3:

Chạy file này decensor.exe, nó sẽ ra màn hình đen chạy 17 step – các bạn chờ máy gầm rú 1 xíu.

# Bước 4:

Màn hình đen cmd tắt đi, vào folder decensor_output để thấy điều kỳ diệu.

Đây là ảnh trước và sau khi chạy tool:

Mình đã hoàn thành bài giới thiệu dài hơi này, hi vọng anh em sẽ thích và thực hành.

Lưu ý: khuyến khích anh em post “tác phẩm” trước và sau của mình lên đây, tuy nhiên không chứa chấp ảnh đồi trụy nha. =))

D. Chia sẻ khóa học về Machine Learning, Data Learning, Tensorflow,….

Chia sẻ 4 khóa học có rating cao:

Ngoài ra các bạn vào vài link Github này, nhiều thứ hay ho lắm.

Đôi lời với các thím copy mà không ghi nguồn:

Ụ má, mị là mị me mấy thím copy bài không ghi nguồn lắm rồi, bài nào kao đăng lên cũng bị lấy về trong 1 nốt nhạc. Mà mấy thím ghi nguồn là site mấy thím luôn. Đậu má, kao thức 2-3 đêm mới viết xong 1 bài, tụi bây tốn có 5 phút để copy mà còn lên #1 Google nữa.


Nguồn: DeepCreamPy Github.

4.6/5 - (16 bình chọn)
Bài trướcCông nghệ sẽ thay đổi thế giới như thế nào vào năm 2050? (Hết)
Bài tiếp theoNhận tạo tài khoản Tidal Hifi miễn phí 100% | 3 tháng lời 1tr4
Tui là 1 con người cả ngố đó mấy bạn, thật may tui được thằng Tín tà tưa (bạn cùng phòng) nhờ làm cái web mà nó không viết gì, tui cũng không biết viết nhưng mà bỏ phí domain tốn xiền. Share Ngay ra đời lãng xẹt z đó. Blog này tui viết hồi cuối tháng 3/2018, có thể thấy độ trẻ trâu qua từng năm của tui không hề giảm. Nói thiệt nha, tui quý mấy bạn đọc cái blog này dù cho nó có mang lại giá trị cho mấy bạn không, nhưng mà tui thực sự cảm ơn mấy bạn. Hông giống Youtube, đăng lên phát là có vài chục ngàn view, tui đăng lên 1 phát có chục view là: "Ơ, dm, sao bữa này nhiều ng đọc dị. Tui dzui. Mấy bạn comment, tui đọc. Tui dzui. Đơn giản dậy thôi". Tui quỡn lắm, lâu lâu đọc lại những gì mình viết rồi thấy trẻ trâu mà không dám sửa. Thôi cứ để nó là 1 kỷ niệm. Ờ, nói nhiều là dậy, vì tui muốn mấy bạn thoải mái nhất khi đọc những dòng này nên viết có hơi dài dòng. Đoạn giới thiệu dễ thương này dành tặng tất cả những ai yêu mến Share Ngay. Sharahero!!!
Theo dõi
Thông báo về
guest
57 người bình luận
mới nhất
cũ nhất like nhiều nhất