aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYann Herklotz Grave <git@yannherklotzgrave.com>2019-02-24 15:03:22 +0000
committerYann Herklotz Grave <git@yannherklotzgrave.com>2019-02-24 15:03:22 +0000
commit66fb61785ad2ea9f055e7420d6f622dc3d0c05ee (patch)
tree84e547f455ca02bd011fa9641a70bc847836e5c8
parenta6cd2da20801ac860538e536913b84d8b2f8371d (diff)
downloadmedian-cut-66fb61785ad2ea9f055e7420d6f622dc3d0c05ee.tar.gz
median-cut-66fb61785ad2ea9f055e7420d6f622dc3d0c05ee.zip
Add file conversion from pfm to ppm
-rw-r--r--src/Main.hs11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/Main.hs b/src/Main.hs
index 647885c..9f73361 100644
--- a/src/Main.hs
+++ b/src/Main.hs
@@ -164,9 +164,20 @@ generateCuts stop splitFun image prefix i = do
newColour = splitFun i (fIntens $ pfmColour image) $ pfmColour image
img = PFMImage (pfmWidth image) (pfmHeight image) newColour
+convertPFMtoPPM :: String -> IO ()
+convertPFMtoPPM name = do
+ im <- B.readFile $ name <> ".pfm"
+ let image = revColour $ parse im
+ BL.writeFile (name <> ".ppm")
+ . encodePPM
+ . clampImage 0
+ . applyGamma 2.2
+ $ image
+
main :: IO ()
main = do
im <- B.readFile "data/grace_latlong.pfm"
let grace = revColour $ parse im
mapM_ (generateCuts 0 recSplit grace "median_cut") [1 .. 10]
mapM_ (generateCuts (-6) recSplitRadiance grace "median_cut_radiance") [6]
+ mapM_ convertPFMtoPPM $ ("data/simple_sphere"<>) <$> ["08", "16", "32", "64"]