1 คะแนน โดย GN⁺ 2 시간 전 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • Remove-AI-Watermarks เป็น CLI และไลบรารี Python สำหรับจัดการลายน้ำที่มองเห็นได้ ลายน้ำที่มองไม่เห็น และเมตาดาต้าที่บ่งชี้ว่าเป็นภาพจาก AI ในภาพที่สร้างจาก Google Gemini (Nano Banana), ChatGPT/DALL-E, Stable Diffusion, Adobe Firefly, Midjourney และอื่น ๆ ได้ในครั้งเดียว
  • การลบลายน้ำที่มองเห็นได้ รองรับโลโก้ sparkle ของ Gemini/Nano Banana โดยใช้ reverse alpha blending จาก alpha map ที่ทราบอยู่แล้วร่วมกับ gradient mask inpainting ใช้เวลาประมาณ 0.05 วินาทีต่อภาพ และไม่ต้องใช้ GPU
  • การลบลายน้ำที่มองไม่เห็น ใช้วิธีทำให้รูปแบบในระดับพิกเซลและโดเมนความถี่ เช่น SynthID, StableSignature, TreeRing อ่อนลงด้วยการสร้างใหม่แบบ diffusion โดยโปรไฟล์เริ่มต้นใช้ SDXL และไปป์ไลน์เนทีฟราว 1024px
  • การล้างเมตาดาต้าครอบคลุม EXIF, PNG text chunks, XMP DigitalSourceType, และ C2PA Content Credentials โดยจะลบฟิลด์ที่เกี่ยวข้องกับ AI ซึ่งทำให้เกิดป้าย “Made with AI” บน Instagram, Facebook, X(Twitter) ขณะเดียวกันยังคงเก็บเมตาดาต้ามาตรฐานอย่าง Author, Copyright, Title ไว้
  • ขอบเขตการรองรับรวมถึงโลโก้ sparkle, SynthID, C2PA/EXIF ของ Google Gemini/Nano Banana/Gemini 3 Pro, C2PA ของ OpenAI DALL-E 3/ChatGPT, PNG text chunks และลายน้ำแบบ steganographic ของ Stable Diffusion, Content Credentials ของ Adobe Firefly, และ EXIF/XMP ของ Midjourney เป็นต้น
  • Smart Face Protection เป็นฟีเจอร์ที่ใช้ YOLO ตรวจจับคนและแยกใบหน้าก่อนกระบวนการ diffusion จากนั้นจะนำใบหน้าต้นฉบับกลับมาผสานอีกครั้งด้วย soft elliptical mask เพื่อลดการบิดเบือนลักษณะใบหน้า
  • Analog Humanizer สามารถเพิ่ม film grain และ chromatic aberration แบบเลือกได้ เพื่อให้ผลลัพธ์ดูเหมือนภาพถ่ายจากการถ่ายหน้าจอ และอธิบายว่าเป็นฟีเจอร์สำหรับหลบเลี่ยงตัวจำแนกภาพ AI
  • แนะนำให้ติดตั้งด้วย pipx install git+https://github.com/wiltodelta/remove-ai-watermarks.git หรือ uv tool install git+https://github.com/wiltodelta/remove-ai-watermarks.git โดยการติดตั้งพื้นฐานจะรวมการลบลายน้ำที่มองเห็นได้และการลบเมตาดาต้า
  • ความต้องการระบบคือ Python 3.10+ โดยการลบลายน้ำที่มองเห็นได้และการจัดการเมตาดาต้าสามารถทำงานบน CPU อย่างเดียวได้ ส่วนการลบลายน้ำที่มองไม่เห็นแนะนำให้ใช้ GPU ที่รองรับ CUDA หรือ MPS แต่ก็สามารถทำงานบน CPU ได้แบบช้ากว่า
  • การลบลายน้ำที่มองไม่เห็นจะดาวน์โหลดโมเดลขนาดประมาณ 2GB อัตโนมัติในการรันครั้งแรก และจะตรวจหาอุปกรณ์อัตโนมัติตามลำดับ CUDA (Linux/Windows) > MPS (macOS) > CPU โดยสามารถระบุเองได้ด้วย --device
  • CLI ใช้งานได้เช่น remove-ai-watermarks all image.png -o clean.png และการประมวลผลทั้งไดเรกทอรีแบบกลุ่มใช้ remove-ai-watermarks batch ./images/ --mode all พร้อมมีคำสั่งย่อย visible, invisible, metadata ให้ใช้ด้วย
  • Python API สามารถใช้ GeminiEngine เพื่อตรวจจับและลบลายน้ำ และใช้ has_ai_metadata, remove_ai_metadata เพื่อตรวจสอบและลบเมตาดาต้า AI ของภาพได้
  • โรดแมประบุถึงการทดสอบถดถอยอัตโนมัติสำหรับ SynthID-Image v2, ข้อจำกัดในการลบ EXIF/XMP ภายใน AVIF/HEIF/JPEG-XL, และไปป์ไลน์วิดีโอที่วางแผนจะแยกเป็นแพ็กเกจต่างหาก ขณะที่การลบ Nightshade/Glaze/PhotoGuard ไม่ได้รับการรองรับ เพราะถือเป็นการโจมตีระบบปกป้องศิลปิน
  • ส่วนกฎหมายระบุว่าการเปิดเผยแหล่งที่มาของเนื้อหาที่สร้างด้วย AI ถูกกำกับดูแลในหลายเขตอำนาจศาล และการลบข้อมูลดังกล่าวโดยมีเจตนาปลอมแปลงที่มาอาจละเมิดกฎหมาย, DMCA หรือข้อกำหนดของแพลตฟอร์ม โดยผู้ใช้เป็นผู้รับผิดชอบในการปฏิบัติตาม
  • threat model มุ่งเน้นการช่วยให้ภาพ AI ที่ถูกเผยแพร่ไปแล้วรับมือกับระบบตรวจจับอัตโนมัติและป้าย “Made with AI” พร้อมเตือนว่าหากไฟล์ต้นฉบับเคยผ่านบัญชีผู้สร้างหรือระบบของ Google เครื่องมือนี้ไม่สามารถทำให้บันทึกฝั่งเซิร์ฟเวอร์ไม่ระบุตัวตนได้

1 ความคิดเห็น

 
GN⁺ 2 시간 전
ความเห็นจาก Hacker News
  • ผมคิดว่า คอมเมนต์ในอีกเธรด เกี่ยวกับ SynthID และ OpenAI ถูกมองข้ามไป ทั้งที่มันจับแก่นได้ดีว่าประเด็นนี้ จิตวิญญาณแบบแฮ็กเกอร์ ควรเป็นอย่างไร
    เราให้ความสำคัญกับความเป็นส่วนตัว ดังนั้นไม่ควรยอมรับเครื่องมือที่คอยติด บาร์โค้ด ให้กับทุกพฤติกรรมดิจิทัล คำโต้แย้งแบบ “ตอนนี้ยังไม่ได้ทำแบบนั้น” ก็ฟังไม่ค่อยขึ้น

    • การสร้างเครื่องมือที่พยายามลบลายน้ำมีแนวโน้มจะล้มเหลว เพราะสุดท้ายมันจะกลายเป็น การแข่งขันสะสมอาวุธ ที่บริษัทใหญ่เป็นฝ่ายชนะ และก็เท่ากับยอมรับการมีบาร์โค้ดโดยปริยาย
      จิตวิญญาณแบบแฮ็กเกอร์ควรอยู่ที่การ รันโมเดลโอเพนซอร์สแบบโลคัล โดยไม่ต้องพึ่งบริษัทเหนือสิ่งอื่นใด
    • การยอมรับการทำลาย แนวคิดเรื่องความจริง แบบมืดบอดก็ไม่ควรถือเป็นจิตวิญญาณแบบแฮ็กเกอร์เช่นกัน
    • สำหรับ ภาพที่สร้างโดย AI ในซอฟต์แวร์ที่ใช้ใน EU ดูเหมือนว่าการทำวอเตอร์มาร์กถูกกำหนดแล้ว หรือมีแนวโน้มจะถูกกำหนดในเร็ว ๆ นี้ ในฐานะส่วนหนึ่งของกฎความโปร่งใสของ AI
    • นี่คือสิ่งที่เกิดขึ้นเมื่อคนมีอำนาจมีนิสัยหวาดระแวงและด้านมืด
      พวกเขาจะอยากได้วิธีจับและลงโทษคนที่อาจคุกคามอำนาจของตัวเอง
    • ไม่ใช่ “ทุกพฤติกรรมดิจิทัล” แต่เป็นแค่รูปที่พวกเขาถูกขอให้สร้างให้
      ถ้าความเป็นส่วนตัวสำคัญ ก็ใช้ โมเดลแบบโลคัล สิ
  • ผมกลับคิดว่าถ้ามี การระบุชัดเจน ว่าอะไรเป็น AI ก็เป็นเรื่องดี เพราะจะได้มองข้ามอย่างอื่นทั้งหมดที่มาจากแหล่งนั้นได้เลย

    • ปัญหาคือแต่แรกมัน ไม่ได้ชัดเจน น่ะสิ
      เครื่องมือนี้เป็นวิธีที่ดีในการทำให้คนเห็นข้อเท็จจริงนั้น
    • ถ้าใครกำลังทำอะไรบางอย่างที่คุณไม่ชอบ ก็ยากจะคาดหวังให้เขาทำมันในแบบที่คุณต้องการ
    • ผมสงสัยว่าเครื่องหมายที่ลบออกตรงนี้ เป็นแบบเดียวกันหรือคล้ายกับเครื่องหมายที่ถูกใส่เมื่อแก้ไขรูปเล็กน้อยด้วยเครื่องมือ AI ในโปรแกรมแต่งภาพหรือเปล่า
      เช่นกรณีที่ใช้ การลบวัตถุ ที่ซับซ้อนกว่าในโปรแกรมแต่งภาพ
  • ตลกดีที่โพสต์นี้อยู่เหนือโพสต์ OpenAI Adopts SynthID Watermarks ขึ้นไปแค่หนึ่งช่องพอดี

  • การใส่ วอเตอร์มาร์ก ลงบนภาพที่สร้างจากข้อมูลฝึกซึ่งเรียนมาจากงานลิขสิทธิ์ที่ขโมยมา ถึงจะเข้าใจเหตุผลว่าอยากแยกของจริงกับไม่จริงออกจากกัน แต่มันก็ยังให้ความรู้สึกว่ามีอะไรผิดอยู่ดี

  • สำหรับ Gemini คำอธิบายนี้ค่อนข้างชวนให้เข้าใจผิด สิ่งที่ลบได้จริงมีแค่ วอเตอร์มาร์กที่มองเห็นได้ เท่านั้น
    ถ้าจะลบ SynthID ต้องเอาภาพไป generate ใหม่ด้วย SDXL ที่ระดับ noise ต่ำ ซึ่งมีโอกาสสูงที่จะทำให้รายละเอียดเล็ก ๆ เสียหายเยอะ และคงใช้กับภาพความละเอียดสูงไม่ได้ดีนัก ส่วน NB2 กับ GPT Image 2 รองรับการสร้างภาพได้สูงสุดถึง 4K

    • Nano Banana 2 รองรับโดยพื้นฐานแค่ ความละเอียด 1K (1024x1024)
      ที่มากกว่านั้นเป็นการอัปสเกล ซึ่งก็คล้าย SDXL ส่วน GPT Image 2 รองรับ 4K โดยพื้นฐาน แต่ยังเป็นฟีเจอร์เชิงทดลองอยู่
    • ถ้า SDXL ยังเป็น โมเดลภาพแบบโลคัล ที่ดีที่สุดแม้เวลาจะผ่านมาหลายปีแล้ว ก็ค่อนข้างน่าเศร้านะ
  • ถ้าจะลบวอเตอร์มาร์กของ Gemini ก็แค่เปิด developer tools แล้วบล็อก HTTP request ที่ไปยัง watermark
    มันเป็นการวางโลโก้ทับจากฝั่งไคลเอนต์

  • คำอธิบายที่ว่า “กรณีใช้งานที่ตรงกับ threat model: การอนุรักษ์งานศิลปะหรือบันทึกทางประวัติศาสตร์จากการถูกติดป้ายว่า ‘สร้างโดย AI’ แบบ false positive” ฟังแล้วเข้าใจยาก
    ผมไม่เห็นว่าการสร้างภาพด้วย AI จะเกี่ยวอะไรกับเรื่องนี้ ตัวสร้างภาพไม่สามารถใส่วอเตอร์มาร์กลงบนสิ่งที่มันไม่ได้สร้างขึ้นเองได้ และถ้าวอเตอร์มาร์กมีความแม่นยำสูงพอจะตามไปถึง session ID เฉพาะได้อย่างที่ README บอก ก็ยิ่งดูไม่น่าเป็นไปได้มากที่งานศิลปะที่มนุษย์สร้างจะเกิด false positive ได้ แถมการแก้ไขภาพเพื่อลบวอเตอร์มาร์กก็ย่อมเปลี่ยนแปลงสิ่งที่อ้างว่าจะ “อนุรักษ์” ไปโดยหลีกเลี่ยงไม่ได้
    ยิ่งอ่านก็ยิ่งมั่นใจว่า use case ใน README เป็นเรื่องเหลวไหล และเป้าหมายจริงคือทำเครื่องมือให้คนเลี่ยงป้าย สร้างโดย AI แล้วเอาภาพขยะจาก AI ไปโพสต์ลงโซเชียลมีเดียได้

    • โดยรวมผมเห็นด้วยว่าคำอธิบายใน repository นี้ไม่ค่อยสมเหตุสมผล แต่ไม่เห็นด้วยกับส่วนที่ว่า “ตัวสร้างภาพไม่สามารถใส่วอเตอร์มาร์กลงบนสิ่งที่มันไม่ได้สร้างขึ้นเองได้”
      ในความเป็นจริง การเอาภาพจริงไปให้ Gemini หรือ ChatGPT แก้แค่จุดเล็ก ๆ นั้นง่ายมาก จะให้แก้เรื่องเล็กน้อยอย่างแสงหรือเงาก็ได้ และภาพที่ออกมาก็มักถูกตรวจจับโดยเครื่องมือวอเตอร์มาร์กเหล่านั้น แบบนี้จึงสามารถทำให้ภาพจริงแทบทุกภาพ ถูกนำเสนอราวกับเป็นภาพที่สร้างโดย AI ได้ง่ายมาก
  • ไม่ว่าคุณจะชอบหรือไม่ชอบโปรเจกต์นี้ ผมคิดว่าเส้นทางข้างหน้าคือการ พิสูจน์ความแท้ของทรัพยากรที่ไม่ใช่ AI มากกว่าความพยายามจะใส่วอเตอร์มาร์กให้สิ่งที่ AI สร้างทั้งหมด

    • แค่เอากล้องที่ “รับรองแล้ว” ไปจ่อหน้าจอคุณภาพดีมาก ๆ แล้วถ่ายอะไรก็ได้ที่แสดงบนจอ ก็กลายเป็น รูปถ่ายจริงอย่างแน่นอน ได้ทันที ดังนั้นมันเป็นปัญหาที่แก้ค่อนข้างยาก
  • การทำวอเตอร์มาร์กจะใช้ได้ผลจริงก็ต่อเมื่อวิธีการนั้น เป็นความลับ
    การฝัง ciphertext ลงใน high-frequency noise เป็นวิธีเก่าแล้ว ในโลกของโมเดล generative สิ่งที่น่าสนใจกว่ามากคือการใช้ความยืดหยุ่นของการสร้างเพื่อ encode ลงใน โครงสร้างระดับมหภาค

  • ใช้ โมเดลโอเพนซอร์ส ไปเลยไม่ได้เหรอ?