halide

    1熱度

    2回答

    我想提取採用鹵化物有一個頻道的元組工作, Halide::Image<uint8_t> input = load_image("images/rgb.png"); Halide::Var x, y; Halide::Func green; green(x,y)= {0, input(x, y, 1), 0}; Halide::Image<uint8_t> output = g

    1熱度

    1回答

    我想爲各種圖像數據類型實現圖像管道。我正在定義一個Generator類,其中包含描述管道的build()方法,指定數據類型參數的GeneratorParam<type>以及指定輸入圖像的ImageParam成員。如果我將ImageParam的類型指定爲我上面定義的GeneratorParam<Type>,那麼無論我在執行生成器時指定什麼類型,輸入圖像的類型始終是默認類型。如果我將ImagePara

    0熱度

    1回答

    我試圖在鹵化物中實現歸一化交叉相關。 下面的代碼構建,Halide JIT編譯不會引發任何錯誤。但是,在JIT編譯之後,Halide似乎會掛起。不管有多少trace_*電話放在不同funcs中,只有一個跟蹤過版畫(上Func output): Begin realization normxcorr.0(0, 2028, 0, 2028) Produce normxcorr.0(0, 2028,

    0熱度

    2回答

    我開始使用Halide,雖然我已經掌握了其設計的基本原理,但我正在努力處理需要高效的(讀取:魔術)時間表計算。 我已經發布了使用Halide將數組從一個位置複製到另一個位置的MWE。我曾認爲這可以編譯成只有少數指令,並且運行時間不到一微秒。相反,它會產生4000行裝配,需要40ms運行!因此,顯然,我的理解存在一個重大漏洞。 什麼是在Halide::Image包裝現有數組的規範方式? 函數copy

    0熱度

    2回答

    這是我的第一篇文章,所以對不起,如果我做錯了什麼:)。我會盡力做到最好。 我目前正在研究HDR圖像處理程序,並且我使用Halide實現了一些基礎TMO。問題是我所有的圖像被表示爲浮點數組(例如:b1,g1,r1,a1,b2,g2,r2,a2,...)。使用Halide處理圖像需要使用Halide :: Image類。問題是我不知道如何在那裏傳遞這些數據。 任何人都可以幫忙,或有同樣的問題,並知道答

    0熱度

    1回答

    我試圖用Halide創建簡單的程序。使用第一個教程複製粘貼幾行代碼。然後得到一些問題在 e = x + y; 行; #include "stdafx.h" #include "Halide.h" int main() { Halide::Func gradient; Halide::Var x, y; Halide::Expr e; e = x

    2熱度

    1回答

    下面是代碼。我在2015年8月5日的VS2013,Win64主幹上使用Halide。當我執行diag.compile_to_lowered_stmt(「diag.html」,{},HTML)時,halide.dll中出現堆棧溢出。 Image<uint8_t> orig_uint = Tools::load_image("../foo.ppm"); Var x, y, c; Func ori

    2熱度

    1回答

    我在Siggraph多年來參加了一些Halide面板,最後決定做一些測試以確定它是否有助於轉碼現有軟件。迄今爲止,結果令人印象深刻。 我正在寫一個基於Siggraph 2015上展示的代碼的高斯模糊,並遇到了一些我無法理解的奇怪行爲。我不確定這是我自己的誤解還是某種錯誤/「功能」。 請參閱下面的代碼,注意空循環。 gkernel和normalize是我寫的用來產生高斯係數的函數。當我編譯並運行帶有

    0熱度

    1回答

    我有一個關於將Halide :: Image對象包裹在已定義的C++數組中的問題,該數組定義了一個2D雙精度浮點圖像。 我已經看了看: C++ array to Halide Image (and back) 這是接近我想要做的,但我通過uint8_t類型buffer_t的鹵化物的主機成員的困惑,你是如何工作的與現有的圖像不是uint8_t。 我看到在使用aot的模糊應用程序中,該示例分配了一個H

    5熱度

    1回答

    我正試圖在Halide中實現Meijster距離變換算法。我已經將this code改寫爲C++(使用openCV)並且工作正常。關於這種算法的文章是here。現在我的鹵化物代碼是完成50% - 第一階段工作正常,現在我有問題,第2階段(在鏈接的代碼掃描3)(簡體)是這樣的: //g is 2 dimensional cv::Mat (something like array) - result