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

50
2925

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.2.2-beta_win64.zip

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.

Ứng dụng mạng neural thần kinh trong việc phục hồi ảnh Hentai bị mờ
4.6 (92%) 10 votes

50
Bình luận bài viết

avatar
23 Comment threads
27 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
25 Comment authors
Tiến DũngKhang HuynhKhoaĐức LeeDong Recent comment authors
mới nhất cũ nhất like nhiều nhất
Khang Huynh | <span class="wpdiscuz-comment-count">3 comments</span>
Khách
Khang Huynh | 3 comments

cho mình xin tài liệu với ad ơi :3

Tiến Dũng | <span class="wpdiscuz-comment-count">1 comments</span>
Khách
Tiến Dũng | 1 comments

Trong bài bác ấy có update kìa bác.

Khoa | <span class="wpdiscuz-comment-count">1 comments</span>
Khách
Khoa | 1 comments

Bạn cho mình xin tài liệu với nhé tks 😀

Đức Lee | <span class="wpdiscuz-comment-count">2 comments</span>
Khách
Đức Lee | 2 comments

Mình cũng đang quan tâm đến vấn đề này, cho mình xin tài liệu với nhé :))))

Dong | <span class="wpdiscuz-comment-count">9 comments</span>
Khách
Dong | 9 comments

“Ụ 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.”
Thấy tội ad vãi 😀
Mà vẫn ủng hộ ad 😀
Mà lần đầu thấy ad có tâm nhất năm 😀

Jame B | <span class="wpdiscuz-comment-count">10 comments</span>
Khách
Jame B | 10 comments

mặc dù không liên quan đến nhiều mảng này, nhưng thông tin bạn chia sẻ cũng update được ít nhiều.
Thanks for share 🙂

Thắng | <span class="wpdiscuz-comment-count">5 comments</span>
Khách
Thắng | 5 comments

em cũng đang quan tâm vấn đề này nhưng chả biết học thế nào ạ :((

Duy Nguyễn | <span class="wpdiscuz-comment-count">1 comments</span>
Khách
Duy Nguyễn | 1 comments

hướng dẫn thiếu kìa thảo nào 1 đống người không làm được <(")

Vuongdv3 | <span class="wpdiscuz-comment-count">1 comments</span>
Khách
Vuongdv3 | 1 comments

Chia sẻ cho em khóa học với

Duy Khải | <span class="wpdiscuz-comment-count">1 comments</span>
Khách
Duy Khải | 1 comments

Chia sẻ khoá học cho mình nhé :v

Thai | <span class="wpdiscuz-comment-count">2 comments</span>
Khách
Thai | 2 comments

Cảm ơn bài viết rất hay của bạn, mình cũng đang tìm hiểu về mạng neural và bài toán phân loại.
Nếu có thể bạn có thể share tài liệu hoặc khóa học nào về bài toán classification dùng thuật toán
randon forest và support vector machine trên python nhá (có ví dụ minh họa chi tiết thì càng tốt nhá).
Vì mình đang theo hướng dẫn trong bài viết của anh “duyluan”:https://forum.machinelearningcoban.com/t/chia-se-kinh-nghiem-nghien-cuu-ve-machine-learning-cho-nguoi-moi-it-bi-ngan-chan/2957
Mình cảm ơn bạn nhiều. Email của mình
xuanthai.vmi@gmail.com

Hiếu | <span class="wpdiscuz-comment-count">1 comments</span>
Khách
Hiếu | 1 comments

Tác giả ơi cho mình xin tất cả các khóa học với ạ. Thanks tác giả nhiều nhiều!!!

Big Sam | <span class="wpdiscuz-comment-count">1 comments</span>
Khách
Big Sam | 1 comments

Cảm ơn tác giả vì bài viết giá trị nhé!
Xin tác giả share bộ khóa học theo 2 nhóm:
1. NLP
2. AUDIO classification
Thanks

ViỆt Hoàng | <span class="wpdiscuz-comment-count">3 comments</span>
Khách
ViỆt Hoàng | 3 comments

Hay quá, chia sẻ em khóa học voise ạ :v

Cường | <span class="wpdiscuz-comment-count">1 comments</span>
Khách
Cường | 1 comments

mình thấy hứng thú với khóa học này,hay

TrgN | <span class="wpdiscuz-comment-count">1 comments</span>
Khách
TrgN | 1 comments

Cho mình xin khóa học vs ạ! Thanks

Minh | <span class="wpdiscuz-comment-count">1 comments</span>
Khách
Minh | 1 comments

Cảm ơn Bác! em mới bắt đầu vào chuyên ngành, cũng có mong muốn được học về AI. Chia sẻ link cho em được không ạ ? Cảm ơn Bác

Lê Minh | <span class="wpdiscuz-comment-count">1 comments</span>
Khách
Lê Minh | 1 comments

Cảm ơn bài viết của bạn, bài viết rất hay! Mình có hứng thú với AI, Machine Learning, Deep Learning, chia sẻ cho mình khoá học với!

Đức Anh | <span class="wpdiscuz-comment-count">1 comments</span>
Khách
Đức Anh | 1 comments

phần ảnh bị che có màu xanh lá (0,255,0) nó mới decensor được :<

Nguyễn Hoàng Nhật | <span class="wpdiscuz-comment-count">1 comments</span>
Khách
Nguyễn Hoàng Nhật | 1 comments

Cho em xin khóa học với ạ

NotFound | <span class="wpdiscuz-comment-count">1 comments</span>
Khách
NotFound | 1 comments

Ad cho em xin tài liệu học machine learning được không ạ?

Bùi Văn Xía | <span class="wpdiscuz-comment-count">1 comments</span>
Khách
Bùi Văn Xía | 1 comments

Em đang hứng thú với Machine Learning mà tìm nguồn học khó nên hy vọng anh gửi em list ạ.

Dai Nguyen | <span class="wpdiscuz-comment-count">2 comments</span>
Khách
Dai Nguyen | 2 comments

Gủi cho mình list các khoá học nhe ad! Cảm ơn ad cực kì nhiều!!!!

Dai Nguyen | <span class="wpdiscuz-comment-count">2 comments</span>
Khách
Dai Nguyen | 2 comments

Mình đã nhận được list khóa học rồi nhe ad! Cảm ơn ad nhiều!!!!