[英]How do I keep passing the output of a Halide pipeline back into the pipeline until some condition is met?
我有一個 Halide 管道,它接收圖像,並對其應用一些過濾器。 它適用於單次傳遞。 我傳入一個圖像,然后將處理后的圖像作為輸出。 我想要做的是實現多次傳遞,即,我想繼續將輸出圖像傳遞回管道中的多個步驟,直到滿足圖像上的某些條件。 我怎么做這個鹵化物? 我能想到的唯一另一種方法是擁有一個可以在循環中調用管道的外部 C++ 方法。 我希望這是否可以在 Halide 本地實現。
代碼看起來像這樣。 我想在循環中使用輸出作為輸入,直到滿足某些條件。
int main(int argc, char **argv) {
Buffer<uint8_t> input = Tools::load_and_convert_image("img.png");
int W = input.width();
int H = input.height();
Buffer<uint8_t> output(W, H);
// after some Funcs. res is last Func of the pipeline
res.realize(output);
Tools::convert_and_save_image(output, "out.png");
return 0;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.