准备
**接上一文, 开始学习lesson_02_input_image**
问题
前面配置好了环境, 直接上手撸代码......撸着, 撸着发现问题:
//问题一: 缺少头文件
#include "halide_image_io.h" //这个头是哪里的, 好像不对
...
//问题二:缺少数据
Halide::Buffer<uint8_t> input = load_image("images/rgb.png"); //这里需要数据
~配置Halide头文件的时候添加一项: -->\Halide-12.0.1-x86-64-windows\share\Halide\tools
~去source code /tutorial/images里面把图像copy过来
缺环境
以上, 貌似可以编译运行了, run...一堆bug, 发现缺少libpng和libjpeg
本着 **缺什么就补什么**的原则, 准备这两个库:
~参考本人两外两文[libpng](https://blog.csdn.net/weixin_45331269/article/details/120047280)和[libjpeg](https://blog.csdn.net/weixin_45331269/article/details/120050146)
End
一切顺利如果, 又可以看到 "Success!", 得到了鹦鹉的高亮图
原图
学到了什么:
1. debug + 配环境
2. 了解了Halide计算过程:
load_image到"Buffer"中, 然后转float, 像素值x1.5倍, 截断255,
转回uint8_t;
realize(), 编译计算;
转回"Buffer", save_image;
3. 三通道image, 用Var: x, y, c即可
4. Halide使用float, 而不是double