Haskell图像处理库 - hip - readImageExact OK,readImage编译错误

时间:2017-07-21 04:16:45

标签: haskell image-processing

我正在使用Haskell图像处理库,使用堆栈与lts-8.23解析器(iirc)进行拉伸。我只是在学习Haskell。简而言之:readImageExact按预期工作,但readImage不能。

此Main.hs按预期编译:

import Graphics.Image 
import Graphics.Image.IO 
type BasicImage = (Image VS YCbCr Word8)
main :: IO ()
main = do 
   img  <- readImageExact' JPG "frog.jpg" :: IO(BasicImage)
   return ()

仅使用readImage的那个不会:

   img  <- readImage' "frog.jpg" :: IO(BasicImage)

我得到的错误信息是:

• No instance for (Readable (Image VS YCbCr Word8) InputFormat)
    arising from a use of ‘readImage'’
• In a stmt of a 'do' block:
    img <- readImage' "frog.jpg" :: IO (BasicImage)
 [...]

设置:使用lts-8.23解析器重新安装堆栈,从Stackage(1.5.3.0)拉出臀部。

1 个答案:

答案 0 :(得分:2)

格式为Readable的{​​{1}}个实例,for one除外:

InputFormat

instance AllReadable arr cs => Readable (Image arr cs Double) InputFormat 基本上表示我们希望能够阅读所有格式。但是,踢球者是AllReadable。您不能将DoublereadImage'一起使用,必须使用Image * * Word8

我想这是由Image * * Double格式引起的,它使用HDR