Lua 图片错误

Lua image errors

我已经根据这个 - link 安装了 lua 图像。我还使用 luajit -limage -e "image.test()" 测试了我的安装,它显示 0 个错误和 0 个警告。另外,当我尝试

> require 'image'
> l = image.lena()

没有错误。但是,当我尝试 image.display(l) 时,出现以下错误:

/home/srilatha/torch/install/share/lua/5.1/trepl/init.lua:384: module 'qt' not found:No LuaRocks module found for qt
    no field package.preload['qt']
    no file '/home/srilatha/.luarocks/share/lua/5.1/qt.lua'
    no file '/home/srilatha/.luarocks/share/lua/5.1/qt/init.lua'
    no file '/home/srilatha/torch/install/share/lua/5.1/qt.lua'
    no file '/home/srilatha/torch/install/share/lua/5.1/qt/init.lua'
    no file './qt.lua'
    no file '/home/srilatha/torch/install/share/luajit-2.1.0-beta1/qt.lua'
    no file '/usr/local/share/lua/5.1/qt.lua'
    no file '/usr/local/share/lua/5.1/qt/init.lua'
    no file '/home/srilatha/.luarocks/lib/lua/5.1/qt.so'
    no file '/home/srilatha/torch/install/lib/lua/5.1/qt.so'
    no file '/home/srilatha/torch/install/lib/qt.so'
    no file './qt.so'
    no file '/usr/local/lib/lua/5.1/qt.so'
    no file '/usr/local/lib/lua/5.1/loadall.so'
stack traceback:
    [C]: in function 'error'
    /home/srilatha/torch/install/share/lua/5.1/trepl/init.lua:384: in function 'require'
    /home/srilatha/torch/install/share/lua/5.1/image/init.lua:1363: in function 'display'
    [string "_RESULT={image.display(l)}"]:1: in main chunk
    [C]: in function 'xpcall'
    /home/srilatha/torch/install/share/lua/5.1/trepl/init.lua:651: in function 'repl'
    ...atha/torch/install/lib/luarocks/rocks/trepl/scm-1/bin/th:199: in main chunk
[C]: at 0x00406670  

我的手电筒 运行 正常,所以我不知道 qt 会有什么问题。我该如何解决这个问题?

你有没有看过这篇文章?

https://github.com/torch/image/blob/master/doc/gui.md

image.display 等函数只能通过 qlua Lua 解释器访问。

从 LuaJit 调用该函数将导致您遇到的错误。

只是添加到 Piglet 的回答中 - 阅读有关 qlua:

https://github.com/torch/qtlua/blob/master/doc/qt.md#qlua

起初我以为:"Oh dear, I'm using luajit, in a torch installation, I have no time and motivation to install another interpreter, configure luarocks to work with it, and then install everything from scratch"。 好消息:我错了

qlua 是一个解释器,但它安装在您现有的 Lua + Torch 目录中。

$ luarocks install qtlua
$ luarocks install qttorch
$ which qlua
/home/me/torch/install/bin/qlua
$ qlua
Lua 5.1 Copyright (...)
> require('image')
> l = image.lena()
> image.display(l)
> 

..弹出window,立即提示returns。

这是因为 qlua 有一个后台 GUI 线程来显示您的图像并对事件做出反应(关闭并调整 window 的大小,图像将在其上缩放 - 不保留纵横比: W & H 独立)。