- RapidRAW คือโปรแกรมแก้ไขภาพ RAW แบบน้ำหนักเบาที่รองรับการเร่งความเร็วด้วย GPU และ การแก้ไขแบบไม่ทำลายต้นฉบับ
- สร้างด้วยเทคโนโลยีสมัยใหม่อย่าง Rust, React, Tauri และทำงานได้บน Windows, macOS, Linux ด้วยขนาด ต่ำกว่า 30MB
- มาพร้อมความสามารถทรงพลัง เช่น AI masking, การแก้ไขเชิงกำเนิดแบบแพตช์ที่ไม่ทำลายต้นฉบับ, และการรองรับฟอร์แมตกล้อง RAW ที่หลากหลาย
- รองรับเวิร์กโฟลว์เพื่อเพิ่มประสิทธิภาพการทำงาน เช่น งานแบบแบตช์, พรีเซ็ตในตัว, ธีมแบบกำหนดเอง, และ Undo/Redo
- เป็นโครงการโอเพนซอร์สที่นักพัฒนารุ่นใหม่สร้างขึ้นเพื่อใช้งานกับงานภาพถ่ายส่วนตัว โดยเน้น การตอบสนองที่รวดเร็วและการใช้งานที่ดี
ความสำคัญและจุดเด่นของโครงการโอเพนซอร์ส RapidRAW
- RapidRAW เป็นโปรแกรมแก้ไข RAW แบบเร่งความเร็วด้วย GPU ที่ เบากว่า ตอบสนองเร็วกว่า และติดตั้งง่ายกว่า เครื่องมือเดิมอย่าง Adobe Lightroom, Darktable, RawTherapee
- ใช้การผสาน Rust, React และ Tauri เพื่อส่งมอบเดสก์ท็อปแอปข้ามแพลตฟอร์มในขนาดเล็กมาก (ต่ำกว่า 30MB)
- โดยเฉพาะการผสาน generative AI, ระบบ masking ในตัว, และเวิร์กโฟลว์ปรับแต่งภาพแบบไม่ทำลายต้นฉบับ ทำให้มีจุดแข็งด้าน ความเร็ว ความสามารถในการขยาย และการทำงานแบบเรียลไทม์ เมื่อเทียบกับเครื่องมือคู่แข่งระดับเดียวกัน
สรุปความสามารถหลัก
-
เอนจินแก้ไขหลัก
- การประมวลผลแบบเร่งด้วย GPU: งานแก้ไขทั้งหมดถูกประมวลผลบน GPU (WGSL shader) ทันที เพื่อรับประกัน การตอบสนองแบบเรียลไทม์
- AI masking: ใช้ AI แบบ SAM เพื่อเลือกวัตถุและฉากหน้าอัตโนมัติ และสามารถรวมกับ masking ที่แม่นยำ เช่น brush, linear, radial mask
- การแก้ไขเชิงกำเนิด: รองรับการแก้ไข แบบแพตช์ที่ไม่ทำลายต้นฉบับ เช่น ลบ/แทรกวัตถุด้วยคำสั่งข้อความ (เชื่อมต่อกับแบ็กเอนด์ ComfyUI)
- รองรับฟอร์แมต RAW หลากหลาย: ใช้ rawler เพื่อรองรับการอ่าน ฟอร์แมตกล้อง RAW ได้อย่างกว้างขวาง
- เวิร์กโฟลว์แบบไม่ทำลายต้นฉบับ: ไฟล์ต้นฉบับไม่ถูกแก้ไข และบันทึกข้อมูลการแก้ไขไว้ในไฟล์ sidecar
.rrdata
- ความแม่นยำสี 32 บิต: ช่วยลด banding และการสูญเสียข้อมูลให้เหลือน้อยที่สุด
-
เครื่องมือปรับแต่งระดับมืออาชีพ
- การควบคุมโทน: ปรับ exposure, contrast, highlights, shadows, whites, blacks ได้อย่างละเอียด
- Tone curve: มี curve แยกสำหรับ Luma, R, G, B แต่ละแชนเนล
- Color grading: รองรับ temperature, tint, vibrance, saturation และ HSL mixer แบบครบชุด
- การเพิ่มรายละเอียด: sharpening, clarity, structure, noise reduction ฯลฯ
- เอฟเฟ็กต์: dehaze, vignette, และ film grain ที่สมจริง
- เครื่องมือแปลงภาพ: crop (ล็อกอัตราส่วน), rotate, flip เป็นต้น
-
ไลบรารีและเวิร์กโฟลว์
- การจัดการคลังภาพถ่าย: รองรับทั้งโครงสร้างโฟลเดอร์, การเรียงลำดับ, การให้คะแนน, ลบ, ทำสำเนา ฯลฯ เพื่อ จัดการภาพถ่ายได้อย่างมีประสิทธิภาพ
- งานแบบแบตช์: ใช้ การแก้ไขเดียวกันกับภาพจำนวนมาก และส่งออกจำนวนมาก ได้
- EXIF viewer: ดูข้อมูลเมตาของกล้อง (เช่น shutter, aperture)
-
ด้านประสิทธิภาพการทำงานและ UI
- ระบบพรีเซ็ต: บันทึก/เรียกใช้และแชร์สไตล์ของตนเองได้
- คัดลอก/วางการตั้งค่า: กระจายค่าการแก้ไขได้อย่างรวดเร็ว
- ประวัติ Undo/Redo: บันทึก/กู้คืนทุกขั้นตอน
- การปรับแต่ง UI ของผู้ใช้: แผงที่ปรับขนาดได้, ธีมหลากหลาย และ เอฟเฟ็กต์แอนิเมชัน
- การส่งออก: ควบคุมตัวเลือก JPEG, PNG, TIFF รวมถึงคุณภาพและขนาด
แรงจูงใจและกระบวนการพัฒนา RapidRAW
-
เบื้องหลังการพัฒนา
- นักพัฒนาที่รู้สึกไม่สะดวกกับซอฟต์แวร์แต่งภาพเดิมที่ ประสิทธิภาพต่ำและหนักเครื่อง จึงสร้างเครื่องมือขึ้นเองเพื่อให้ได้ เวิร์กโฟลว์ที่เร็วขึ้นและการตอบสนองที่ดีกว่า
- เป้าหมายคือความท้าทายในการพัฒนาเอง พร้อมกับเรียนรู้ Rust/React/Tauri และเทคนิคการประมวลผลภาพถ่ายดิจิทัลไปด้วย
-
แนวทางเทคนิคและวิธีพัฒนา
- เขียนเอนจินหลักด้วย Rust และใช้ Tauri เชื่อมกับเว็บฟรอนต์เอนด์น้ำหนักเบา
- ย้าย pipeline การประมวลผลภาพทั้งหมดไปยัง GPU (ใช้ WGPU, WGSL)
- เรียนรู้และนำอัลกอริทึมไปใช้ผ่าน Google Gemini AI (เช่น Menon demosaicing)
- ด้วยการพัฒนาอย่างรวดเร็วและโฟกัสที่โครงสร้างหลัก/การใช้งาน ทำให้สร้างฟีเจอร์หลักเสร็จภายใน 2 สัปดาห์
ลำดับความสำคัญของการพัฒนาในปัจจุบัน
- รีแฟกเตอร์ฟรอนต์เอนด์ React (ลด Prop Drilling ให้มากที่สุด)
- รองรับการหมุนภาพเกิน 45°
- ปรับปรุงผลลัพธ์ของเครื่องมือ dehaze ให้เป็นธรรมชาติมากขึ้น
- เพิ่มประสิทธิภาพ เช่น แทนที่การส่งภาพแบบ Base64
- เพิ่มฟีเจอร์ AI mask บนพื้นฐาน Segment Anything
- ผสาน MVP ของ generative AI บนพื้นฐาน ComfyUI
- ลงนามบิลด์ macOS และพัฒนาตัวโหลดไฟล์ RAW ให้ดียิ่งขึ้น
- ปรับปรุงความเร็วบน GPU รุ่นเก่า
- มีแผนเพิ่มการตรวจจับ white balance/exposure อัตโนมัติ
โรดแมปด้าน AI
- AI masking ในตัว: ใช้ โอเพนซอร์ส AI ขนาดเบา เช่น Meta SAM เพื่อรู้จำวัตถุและฉากหน้า และใช้งานแบบออฟไลน์ได้ทันที
- Generative AI แบบเลือกใช้: เชื่อมต่อ ComfyUI เพื่อให้ งานหนัก อย่าง inpainting ประมวลผลบนเซิร์ฟเวอร์ภายนอก ขณะที่ตัวแอปยังคงเบา
- ปัจจุบัน: ฟังก์ชัน masking ในตัวใช้งานได้ครบแล้ว ส่วน generative AI ยังต้องติดตั้ง ComfyUI ด้วยตนเองและอยู่ในสถานะ developer preview
-
วิธีผสานเทคโนโลยี generative AI
- แบ็กเอนด์แบบโมดูลาร์: เชื่อมต่อกับเซิร์ฟเวอร์ local ของ ComfyUI เพื่อทำหน้าที่เป็น inference engine
- Generative Replace: หลังจากกำหนด mask แล้ว สามารถสร้างพื้นที่ด้วยข้อความ และนำไปใช้เป็น patch layer แบบ ไม่ทำลายต้นฉบับ
- ลำดับการทำงาน: ภาพ, mask, prompt → เซิร์ฟเวอร์ ComfyUI → คืนค่าภาพที่แก้ไขแล้ว → นำไปใช้เป็น patch layer
- แอปพลิเคชันนี้ยังคงรักษา ประสบการณ์หลักที่เบาและรวดเร็ว ไว้เสมอ
ไลเซนส์และปรัชญาโอเพนซอร์ส
- RapidRAW เปิดเผยภายใต้ ไลเซนส์ AGPL v3 ทำให้ผลิตภัณฑ์ต่อยอดต้องคงเป็นโอเพนซอร์สทั้งหมด
- ป้องกันการนำไปทำเชิงพาณิชย์แบบปิดซอร์ส เพื่อให้การปรับปรุงทั้งหมดส่งกลับคืนสู่ทุกคน
- มุ่งส่งเสริมการมีส่วนร่วมจากชุมชนและนวัตกรรมแบบเปิด
1 ความคิดเห็น
ความเห็นจาก Hacker News
เครื่องมือประมวลผลภาพ RAW ที่ดีที่สุดเท่าที่ฉันรู้จักคือ RawTherapee ให้ความรู้สึกเหมือนสร้างโดยคนที่หลงใหลด้าน color science มาก ๆ และยังสคริปต์ผ่าน CLI ได้ด้วย เอกสารประกอบอย่าง RawPedia ก็เป็นคลังความรู้ชั้นยอดสำหรับเรียนพื้นฐานอย่างการสร้าง DCP profile, calibration, dark frame, flat field แค่ดูชื่อที่มีคำว่า "raw" ก็สัมผัสได้ถึงความเป็นมืออาชีพแล้ว (ที่พูดถึงนิดหน่อยก็เพราะหลายคนมักเข้าใจผิดเหมือนกับ WASM ทั้งที่ "raw" ไม่ใช่ตัวย่อ) ข้อเสียคือมีรายละเอียดเชิงเทคนิคโผล่มาตรง ๆ เยอะ เลยจะเจอคำที่ไม่คุ้นอย่าง "illuminant", "demosaicing method", "green equilibration", "CAM16", "PU", "nit" เป็นบางครั้ง แต่ส่วนตัวฉันกลับชอบตรงนี้เลยใช้อยู่ เรื่องที่น่าเสียดายอย่างหนึ่งคือยังรองรับเอาต์พุต HDR ไม่ดีพอ แต่คาดว่าถ้าเพิ่มการรองรับ PNG v3 กับ Rec. 2100 ก็น่าจะแก้ได้
ฉันชอบระบบประมวลผลของ RawTherapee แต่มีข้อยกเว้นอยู่ข้อเดียวคือเอฟเฟ็กต์จำลอง "filmic" ของ Darktable มันยอดเยี่ยมมากในการกู้ RAW ที่โอเวอร์เอ็กซ์โพสมาก ๆ แค่คลิกไม่กี่ครั้งก็เลื่อนทั้งฉากให้มืดลงหนึ่งหรือสองสต็อปได้ (ใน RAW มีข้อมูลจริงอยู่เยอะมาก) ฉันยังหาเครื่องมือใน RawTherapee ที่คล้ายฟังก์ชันนี้ไม่เจอ ถ้าใครรู้ก็อยากให้ช่วยบอกที
จากประสบการณ์ของฉัน ในงานแต่งภาพหลังถ่าย สิ่งที่สำคัญกว่ารายละเอียดทางเทคนิคมากคือ UX ที่ดี เวิร์กโฟลว์แบบหลายภาพที่ลื่นไหล และคอนโทรลที่เข้าใจง่าย ฉันคิดว่า RawTherapee ดีกว่า Darktable แต่ก็ไม่ได้ทิ้งห่างแบบขาดลอย และฉันก็เข้าใจดีว่าทำไมหลายคนยอมจ่ายเงินใช้ Lightroom
โดยรวมแล้ว RawTherapee ยอดเยี่ยมมาก แต่ UI ของเส้นโค้งสำหรับการปรับขนาดนั้นใช้งานลำบากถึงขั้นร้ายแรง ฟีเจอร์ปรับสีแบบ Lab นั้นยอดเยี่ยมจริง แต่พวกสไลเดอร์ทำให้ปรับละเอียดแบบจริงจังแทบไม่ได้เลย รีเซ็ตทีละสไลเดอร์หรือทีละจุดก็ไม่ได้ และก็ไม่สามารถ undo เฉพาะการกระทำล่าสุดได้ด้วย ทำได้แค่รีเซ็ตวิดเจ็ตทั้งหมด เลยแทบใช้งานไม่ได้ ถ้าแก้จุดนี้ได้เมื่อไร ฉันมั่นใจว่าความนิยมจะพุ่งขึ้นมาก และฉันเองก็น่าจะเลิกใช้ Lightroom ทันที Pro-Q3 ของปลั๊กอินเสียงจาก FabFilter คือมาตรฐานทองคำในแง่อินเทอร์เฟซแบบนี้ ถ้าจะทำ UI แบบเส้นโค้ง ฉันแนะนำมาก ๆ ให้ลองใช้เดโมดู
ฟังก์ชัน local adjustment นั้นยากเกินไปมาก ที่รองรับมีแค่ "Nik u point" แบบเก่า ๆ ด้วยเหตุผลนี้อย่างเดียวฉันก็ใช้ Darktable อยู่ ถึงอย่างนั้นฉันก็ยังอยากใช้ dual illuminant DCP ของ RawTherapee (ซึ่ง Darktable ไม่มี)
นี่คือ ที่เก็บ GitHub ของ RawTherapee
ขอแสดงความยินดีกับการเปิดตัวแอป RapidRAW นี่แหละคือแอปที่ฉันตามหา ฉันติดตั้งบน Mac M1 แล้วเปิดโฟลเดอร์ RAW พบว่าตอนโหลดภาพย่อทั้ง MacBook กระตุกหนักมาก หลังจากภาพย่อขึ้นครบแล้วก็ดีขึ้นบ้าง แต่ก็ยังไม่ลื่นอย่างที่หวังไว้ เลยสงสัยว่าแอปเชิงพาณิชย์ทำไมถึงไม่กระตุก หรือว่าเป็นเพราะเขาเขียนด้วย native code
RapidRAW กำลังสร้างภาพย่อ JPG 720px ด้วย CPU (โค้ดที่เกี่ยวข้อง 1) แล้วเข้ารหัสเป็น base64 เพื่อส่งจาก Rust ไป JavaScript ซึ่งไม่ได้ใช้ shared buffer และมีการคัดลอกข้อมูลภาพหลายรอบ (โค้ดที่เกี่ยวข้อง 2) แอป native จะไม่ส่งต่อด้วย base64 ซ้ำแบบนี้ แล้วก็ยังต้องไปถอดรหัส base64 ใน react ผ่าน webkit ก่อนจะแสดงผลอีก... สำหรับภาพเดียวมีการใช้หน่วยความจำซ้ำประมาณ 6 เท่า (แต่ละขั้นคือ: Rust raw, Rust base64, JSON base64 สำหรับ tauri ใน Rust, JavaScript JSON base64, JavaScript base64 และสุดท้าย raw image ใน webkit) จุดพวกนี้แหละคือสาเหตุหลักที่ช้ากว่าแอป native
ขอบคุณที่ลองใช้ RapidRAW และขอบคุณสำหรับฟีดแบ็ก ตอนนี้เราปรับแต่งมาสำหรับโฟลเดอร์ขนาดเล็ก/กลางราว 1~300 ภาพอยู่ ดังนั้นอาการหน่วงในโฟลเดอร์ที่มีรูปจำนวนมากถือว่าเป็นเรื่องปกติในตอนนี้ ความเร็วในการโหลดโฟลเดอร์ขนาดใหญ่เป็นงานลำดับความสำคัญสูงสุด และเราตั้งใจจะเร่งปรับปรุงอย่างรวดเร็ว คาดหวังความเปลี่ยนแปลงได้ภายในไม่กี่วัน ขอบคุณเสมอ -Tim
ถ้ายังไม่เคยลอง Ansel(https://ansel.photos/en/) หรือ Darktable(https://www.darktable.org/) ก็แนะนำให้ลอง ทั้งคู่เป็นแอปแต่ง RAW แบบโอเพนซอร์สที่ประสิทธิภาพค่อนข้างดี RapidRAW เองก็อาจมีประสิทธิภาพใกล้เคียงหรือแข่งขันได้ แต่ฉันยังไม่ได้ลองด้วยตัวเอง อย่างไรก็ตาม ansel กับ darktable ทำงานได้ดีบน M1
ฉันคิดว่า Capture One เป็นแอปที่ถูกประเมินค่าต่ำเกินไปจริง ๆ ใช้งานก็ง่าย ถึงจะไม่เคยใช้กล้องของ PhaseOne เลยก็ตาม แต่ยังไงมันก็ดีมาก
เป็นโปรเจ็กต์ที่ฉันอยากติดตาม ถ้าจะให้เลือกฟีเจอร์ที่ฉันต้องการที่สุดก็คือ luminosity masking ฉันกลับไปใช้ RAW editor ที่ไม่มีฟีเจอร์นี้ได้ยากแล้ว แน่นอนว่านี่ไม่ใช่ทั้งหมดของการทำ masking (เช่น color masking, saturation masking ฯลฯ) แต่ถ้าใช้ได้เลยโดยไม่ต้องเปิด Photoshop จะมีประโยชน์มาก ฉันก็ชอบที่มีเวิร์กโฟลว์ selection masking แบบใช้ AI ถูกทำไว้แล้ว
ฉันชอบที่ README มีภาพรวมเชิงภาพเยอะดี README ของโปรแกรม GUI หลายตัวมักขาดภาพแบบนี้ หรือไม่ก็มีแต่ลิงก์ให้กดไปดู แต่ GIF แต่ละอันมีขนาดประมาณ 10~22MB ซึ่งใหญ่กว่าตัวโปรแกรมจริงเสียอีก ถ้าฝังเป็นวิดีโอน่าจะเบากว่าและใช้งานสะดวกกว่า
ในความเห็นของฉัน การใช้ UI แบบเว็บกับแอปที่ต้องใช้ทรัพยากรสูงอย่าง image editor ไม่น่าใช่ไอเดียที่ดี มันน่าจะทั้งช้าและกินทรัพยากรเยอะ
ขอแนะนำให้ดู color.io เป็นตัวอย่าง มันเป็นแอปเน้น color grading แต่ก็มีฟังก์ชันหลากหลายสำหรับเวิร์กโฟลว์ภาพ RAW เช่นกัน มันรันแบบออฟไลน์ในเบราว์เซอร์ แต่บนพีซีเก่าของฉันกลับเร็วกว่าทั้ง RawTherapee และ Darktable มาก
แอปนี้ไม่ได้เป็น "เว็บ" แอปแบบที่คนทั่วไปนึกถึง เพราะมันใช้ rust และการประมวลผลด้วย GPU อย่างจริงจังมาก ถึงจะรันในเว็บเบราว์เซอร์ แต่ประสิทธิภาพจริงต่างออกไป
ฉันหาไม่เจอว่ามันจัดเก็บ metadata อย่างไร เลยสงสัยว่าใช้ระบบ shadow file แยกหนึ่งไฟล์ต่อ RAW เหมือน RAW editor โอเพนซอร์สตัวอื่นหรือเปล่า ถ้ามี shadow file เยอะ ๆ จะซิงก์ผ่านคลาวด์ลำบาก อีกทางเลือกหนึ่งคือทำเป็นไฟล์แค็ตตาล็อกใหญ่ไฟล์เดียว และก็อยากรู้ด้วยว่า metadata format เป็นแบบเปิดหรือไม่ เพื่อจะได้ย้ายงานแก้ไขไปโปรแกรมอื่นได้ ดีใจที่มีทางเลือกแทนการต้องจ่าย Lightroom รายเดือน เพราะฉันเป็นผู้ใช้ที่แก้ RAW เฉพาะช่วงท่องเที่ยวหรือวันหยุดยาว
เราต้องการ RAW editor ที่ใช้งานง่ายจริง ๆ เมื่อก่อนฉันใช้ Darktable มานาน และแค่ตั้งค่าเริ่มต้นก็ได้ภาพที่แทบเหมือน JPEG จากกล้องทันที แค่ปรับทิศทางตามต้องการก็พอแล้ว แต่พอมีการอัปเดตซ้ำ ๆ การปรับโทนสีผิวกลับยากขึ้นมาก ตอนนี้ฉันใช้ CaptureOne แบบเถื่อนอยู่ แต่จริง ๆ แล้วฉันอยากใช้ซอฟต์แวร์โอเพนซอร์สหรือซอฟต์แวร์ลิขสิทธิ์ราคาสมเหตุสมผลมากกว่า เลยอยากรู้ว่ามีโปรไฟล์กล้องและเลนส์พื้นฐานฝังมาให้หรือไม่
ฉันลองรันบน Windows 10 กับ AMD RX 6900 XT แล้ว พบว่าแม้แต่การลากหน้าต่างหรือปรับสไลเดอร์ก็ยังช้ามากกับไฟล์ DNG ขนาด 6000x4000
วันนี้ฉันเพิ่งสงสัยพอดีว่าจะสร้างภาพย่อ RAW ด้วย Rust อย่างไร แล้วก็มานั่งดูที่เก็บนี้อยู่พอดี บังเอิญแบบสุด ๆ