นี่คือการใช้งาน Tensorflow ของการเรียนรู้การมองเห็นในความมืดใน CVPR 2018 โดย Chen Chen, Qifeng Chen, Jia Xu และ Vladlen Koltun
เว็บไซต์โครงการ
กระดาษ
รหัสนี้รวมโมเดลเริ่มต้นสำหรับการฝึกอบรมและการทดสอบชุดข้อมูล See-in-the-Dark (SID)
https://youtu.be/qWKUFK7MWvg
ไลบรารี Python (เวอร์ชัน 2.7) ที่จำเป็น: Tensorflow (>=1.1) + Scipy + Numpy + Rawpy
ทดสอบใน Ubuntu + Intel i7 CPU + Nvidia Titan X (Pascal) พร้อม Cuda (>=8.0) และ CuDNN (>=5.0) โหมด CPU ควรใช้งานได้กับการเปลี่ยนแปลงเล็กน้อยแต่ไม่ได้ทดสอบ
อัปเดตเมื่อเดือนสิงหาคม 2018: เราพบความไม่สอดคล้องกันกับความจริงจากพื้นดินสำหรับรูปภาพ 10034, 10045, 10172 โปรดลบรูปภาพเหล่านั้นออกเพื่อให้ได้ผลลัพธ์เชิงปริมาณ แต่ยังคงสามารถใช้เพื่อการประเมินเชิงคุณภาพได้
คุณสามารถดาวน์โหลดได้โดยตรงจากไดรฟ์ Google สำหรับชุด Sony (25 GB) และ Fuji (52 GB)
มีการจำกัดการดาวน์โหลดโดย Google ไดรฟ์ในช่วงเวลาที่กำหนด หากคุณไม่สามารถดาวน์โหลดได้เนื่องจากเหตุนี้ ให้ลองใช้ลิงก์เหล่านี้: Sony (25 GB) และ Fuji (52 GB)
ใหม่: ตอนนี้เราให้บริการชิ้นส่วนไฟล์ใน Baidu Drive แล้ว หลังจากที่คุณดาวน์โหลดชิ้นส่วนทั้งหมดแล้ว คุณสามารถรวมเข้าด้วยกันได้โดยเรียกใช้: "cat SonyPart* > Sony.zip" และ "cat FujiPart* > Fuji.zip"
รายการไฟล์มีให้ ในแต่ละแถว จะมีเส้นทางภาพที่เปิดรับแสงสั้น, เส้นทางภาพเปิดรับแสงยาวที่สอดคล้องกัน, ค่า ISO ของกล้อง และหมายเลข F โปรดทราบว่าภาพที่เปิดรับแสงสั้นหลายภาพอาจตรงกับภาพที่เปิดรับแสงยาวอันเดียวกัน
ชื่อไฟล์ประกอบด้วยข้อมูลรูปภาพ ตัวอย่างเช่น ใน "10019_00_0.033s.RAF" ตัวเลขตัวแรก "1" หมายความว่ามาจากชุดทดสอบ ("0" สำหรับชุดการฝึกและ "2" คือชุดการตรวจสอบ) "0019" คือรหัสรูปภาพ "00" ต่อไปนี้คือตัวเลขในลำดับ/ชุด "0.033 วินาที" คือเวลาเปิดรับแสง 1/30 วินาที
python download_models.py
ตามค่าเริ่มต้น โค้ดจะนำข้อมูลในโฟลเดอร์ "./dataset/Sony/" และ "./dataset/Fuji/" หากคุณบันทึกชุดข้อมูลในโฟลเดอร์อื่น โปรดเปลี่ยน "input_dir" และ "gt_dir" ที่จุดเริ่มต้นของโค้ด
ตามค่าเริ่มต้น โค้ดจะนำข้อมูลในโฟลเดอร์ "./dataset/Sony/" และ "./dataset/Fuji/" หากคุณบันทึกชุดข้อมูลในโฟลเดอร์อื่น โปรดเปลี่ยน "input_dir" และ "gt_dir" ที่จุดเริ่มต้นของโค้ด
การโหลดข้อมูลดิบและการประมวลผลโดย Rawpy ใช้เวลามากกว่าการเผยแพร่ย้อนกลับอย่างมาก ตามค่าเริ่มต้น โค้ดจะโหลดข้อมูล Groundtruth ทั้งหมดที่ประมวลผลโดย Rawpy ลงในหน่วยความจำโดยไม่มีการหาปริมาณ 8 บิตหรือ 16 บิต ต้องใช้ RAM อย่างน้อย 64 GB สำหรับการฝึกรุ่น Sony และ RAM 128 GB สำหรับรุ่น Fuji หากคุณต้องการฝึกฝนบนเครื่องที่มี RAM น้อยกว่า คุณอาจต้องแก้ไขโค้ดและใช้ข้อมูลพื้นฐานบนดิสก์ เราจัดเตรียมภาพ Groundtruth 16 บิตที่ประมวลผลโดย Rawpy: Sony (12 GB) และ Fuji (22 GB)
หากคุณใช้โค้ดและชุดข้อมูลของเราเพื่อการวิจัย โปรดอ้างอิงรายงานของเรา:
Chen Chen, Qifeng Chen, Jia Xu และ Vladlen Koltun "การเรียนรู้การมองเห็นในความมืด" ใน CVPR ปี 2018
ใบอนุญาตเอ็มไอที
วิธีการที่นำเสนอได้รับการออกแบบสำหรับข้อมูลดิบของเซ็นเซอร์ โมเดลที่ได้รับการฝึกล่วงหน้าอาจไม่ทำงานกับข้อมูลจากเซ็นเซอร์กล้องตัวอื่น เราไม่มีการรองรับข้อมูลกล้องอื่นๆ นอกจากนี้ยังใช้ไม่ได้กับรูปภาพหลังจาก ISP ของกล้อง เช่น ข้อมูล JPG หรือ PNG
ซึ่งเป็นโครงการวิจัยและเป็นต้นแบบเพื่อพิสูจน์แนวคิด
โดยทั่วไป คุณเพียงแค่ต้องลบระดับสีดำที่ถูกต้องและแพ็คข้อมูลในลักษณะเดียวกับข้อมูลของ Sony/Fuji หากใช้ rawpy คุณต้องอ่านระดับสีดำแทนการใช้ 512 ในโค้ดที่ให้มา ช่วงข้อมูลอาจแตกต่างกันหากไม่ใช่ 14 บิต คุณต้องทำให้เป็นมาตรฐานเป็น [0,1] สำหรับอินพุตเครือข่าย
มักเกิดจากการดาวน์โหลดโมเดลที่ฝึกไว้ล่วงหน้าไม่ถูกต้อง หลังจากดาวน์โหลด คุณควรได้รับไฟล์ที่เกี่ยวข้องกับจุดตรวจสอบ 4 ไฟล์สำหรับโมเดลนี้
หากคุณมีคำถามเพิ่มเติมหลังจากอ่านคำถามที่พบบ่อยแล้ว โปรดส่งอีเมลไปที่ [email protected]