27 template<RunData_t T,
unsigned int DISP_VALS>
29 unsigned int x_val,
unsigned int y_val,
30 T* data_cost_checkerboard_0, T* data_cost_checkerboard_1,
31 T* message_u_checkerboard_0, T* message_d_checkerboard_0,
32 T* message_l_checkerboard_0, T* message_r_checkerboard_0,
33 T* message_u_checkerboard_1, T* message_d_checkerboard_1,
34 T* message_l_checkerboard_1, T* message_r_checkerboard_1,
35 unsigned int width_level_checkerboard_part,
unsigned int heightLevel)
37 if (((x_val + y_val) % 2) == 0) {
38 printf(
"x_val: %d\n", x_val);
39 printf(
"y_val: %d\n", y_val);
40 for (
unsigned int current_disparity = 0; current_disparity < DISP_VALS; current_disparity++) {
41 printf(
"DISP: %d\n", current_disparity);
42 printf(
"messageUPrevStereoCheckerboard: %f \n",
44 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
45 current_disparity, DISP_VALS)]);
46 printf(
"messageDPrevStereoCheckerboard: %f \n",
48 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
49 current_disparity, DISP_VALS)]);
50 printf(
"messageLPrevStereoCheckerboard: %f \n",
52 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
53 current_disparity, DISP_VALS)]);
54 printf(
"messageRPrevStereoCheckerboard: %f \n",
56 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
57 current_disparity, DISP_VALS)]);
58 printf(
"dataCostStereoCheckerboard: %f \n",
60 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
61 current_disparity, DISP_VALS)]);
64 printf(
"x_val: %d\n", x_val);
65 printf(
"y_val: %d\n", y_val);
66 for (
unsigned int current_disparity = 0; current_disparity < DISP_VALS; current_disparity++) {
67 printf(
"DISP: %d\n", current_disparity);
68 printf(
"messageUPrevStereoCheckerboard: %f \n",
70 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
71 current_disparity, DISP_VALS)]);
72 printf(
"messageDPrevStereoCheckerboard: %f \n",
74 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
75 current_disparity, DISP_VALS)]);
76 printf(
"messageLPrevStereoCheckerboard: %f \n",
78 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
79 current_disparity, DISP_VALS)]);
80 printf(
"messageRPrevStereoCheckerboard: %f \n",
82 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
83 current_disparity, DISP_VALS)]);
84 printf(
"dataCostStereoCheckerboard: %f \n",
86 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
87 current_disparity, DISP_VALS)]);
93 template<RunData_t T,
unsigned int DISP_VALS>
95 unsigned int x_val,
unsigned int y_val,
96 T* data_cost_checkerboard_0, T* data_cost_checkerboard_1,
97 T* message_u_checkerboard_0, T* message_d_checkerboard_0,
98 T* message_l_checkerboard_0, T* message_r_checkerboard_0,
99 T* message_u_checkerboard_1, T* message_d_checkerboard_1,
100 T* message_l_checkerboard_1, T* message_r_checkerboard_1,
101 unsigned int width_level_checkerboard_part,
unsigned int heightLevel)
103 if (((x_val + y_val) % 2) == 0) {
104 printf(
"x_val: %d\n", x_val);
105 printf(
"y_val: %d\n", y_val);
106 for (
unsigned int current_disparity = 0; current_disparity < DISP_VALS; current_disparity++) {
107 printf(
"DISP: %d\n", current_disparity);
108 printf(
"messageUPrevStereoCheckerboard: %f \n",
110 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
111 current_disparity, DISP_VALS)]);
112 printf(
"messageDPrevStereoCheckerboard: %f \n",
114 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
115 current_disparity, DISP_VALS)]);
116 printf(
"messageLPrevStereoCheckerboard: %f \n",
118 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
119 current_disparity, DISP_VALS)]);
120 printf(
"messageRPrevStereoCheckerboard: %f \n",
122 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
123 current_disparity, DISP_VALS)]);
124 printf(
"dataCostStereoCheckerboard: %f \n",
126 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
127 current_disparity, DISP_VALS)]);
130 printf(
"x_val: %d\n", x_val);
131 printf(
"y_val: %d\n", y_val);
132 for (
unsigned int current_disparity = 0; current_disparity < DISP_VALS; current_disparity++) {
133 printf(
"DISP: %d\n", current_disparity);
134 printf(
"messageUPrevStereoCheckerboard: %f \n",
136 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
137 current_disparity, DISP_VALS)]);
138 printf(
"messageDPrevStereoCheckerboard: %f \n",
140 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
141 current_disparity, DISP_VALS)]);
142 printf(
"messageLPrevStereoCheckerboard: %f \n",
144 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
145 current_disparity, DISP_VALS)]);
146 printf(
"messageRPrevStereoCheckerboard: %f \n",
148 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
149 current_disparity, DISP_VALS)]);
150 printf(
"dataCostStereoCheckerboard: %f \n",
152 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
153 current_disparity, DISP_VALS)]);
159 template<RunData_t T,
unsigned int DISP_VALS>
161 unsigned int x_val,
unsigned int y_val,
162 T* data_cost_checkerboard_0, T* data_cost_checkerboard_1,
163 T* message_u_checkerboard_0, T* message_d_checkerboard_0,
164 T* message_l_checkerboard_0, T* message_r_checkerboard_0,
165 T* message_u_checkerboard_1, T* message_d_checkerboard_1,
166 T* message_l_checkerboard_1, T* message_r_checkerboard_1,
167 unsigned int width_level_checkerboard_part,
unsigned int heightLevel)
169 const unsigned int checkerboard_adjustment = (((x_val + y_val) % 2) == 0) ? ((y_val)%2) : ((y_val+1)%2);
170 if (((x_val + y_val) % 2) == 0) {
171 printf(
"x_val: %d\n", x_val);
172 printf(
"y_val: %d\n", y_val);
173 for (
unsigned int current_disparity = 0; current_disparity < DISP_VALS; current_disparity++) {
174 printf(
"DISP: %d\n", current_disparity);
175 printf(
"messageUPrevStereoCheckerboard: %f \n",
177 x_val / 2, y_val + 1, width_level_checkerboard_part, heightLevel,
178 current_disparity, DISP_VALS)]);
179 printf(
"messageDPrevStereoCheckerboard: %f \n",
181 x_val / 2, y_val - 1, width_level_checkerboard_part, heightLevel,
182 current_disparity, DISP_VALS)]);
183 printf(
"messageLPrevStereoCheckerboard: %f \n",
185 x_val / 2 + checkerboard_adjustment, y_val, width_level_checkerboard_part, heightLevel,
186 current_disparity, DISP_VALS)]);
187 printf(
"messageRPrevStereoCheckerboard: %f \n",
189 (x_val / 2 - 1) + checkerboard_adjustment, y_val, width_level_checkerboard_part, heightLevel,
190 current_disparity, DISP_VALS)]);
191 printf(
"dataCostStereoCheckerboard: %f \n",
193 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
194 current_disparity, DISP_VALS)]);
197 printf(
"x_val: %d\n", x_val);
198 printf(
"y_val: %d\n", y_val);
199 for (
unsigned int current_disparity = 0; current_disparity < DISP_VALS; current_disparity++) {
200 printf(
"DISP: %d\n", current_disparity);
201 printf(
"messageUPrevStereoCheckerboard: %f \n",
203 x_val / 2, y_val + 1, width_level_checkerboard_part, heightLevel,
204 current_disparity, DISP_VALS)]);
205 printf(
"messageDPrevStereoCheckerboard: %f \n",
207 x_val / 2, y_val - 1, width_level_checkerboard_part, heightLevel,
208 current_disparity, DISP_VALS)]);
209 printf(
"messageLPrevStereoCheckerboard: %f \n",
211 x_val / 2 + checkerboard_adjustment, y_val, width_level_checkerboard_part, heightLevel,
212 current_disparity, DISP_VALS)]);
213 printf(
"messageRPrevStereoCheckerboard: %f \n",
215 (x_val / 2 - 1) + checkerboard_adjustment, y_val, width_level_checkerboard_part, heightLevel,
216 current_disparity, DISP_VALS)]);
217 printf(
"dataCostStereoCheckerboard: %f \n",
219 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
220 current_disparity, DISP_VALS)]);
226 template<RunData_t T,
unsigned int DISP_VALS>
228 unsigned int x_val,
unsigned int y_val,
229 T* data_cost_checkerboard_0, T* data_cost_checkerboard_1,
230 T* message_u_checkerboard_0, T* message_d_checkerboard_0,
231 T* message_l_checkerboard_0, T* message_r_checkerboard_0,
232 T* message_u_checkerboard_1, T* message_d_checkerboard_1,
233 T* message_l_checkerboard_1, T* message_r_checkerboard_1,
234 unsigned int width_level_checkerboard_part,
unsigned int heightLevel)
236 const unsigned int checkerboard_adjustment = (((x_val + y_val) % 2) == 0) ? ((y_val)%2) : ((y_val+1)%2);
238 if (((x_val + y_val) % 2) == 0) {
239 printf(
"x_val: %d\n", x_val);
240 printf(
"y_val: %d\n", y_val);
241 for (
unsigned int current_disparity = 0; current_disparity < DISP_VALS; current_disparity++) {
242 printf(
"DISP: %d\n", current_disparity);
243 printf(
"messageUPrevStereoCheckerboard: %f \n",
245 x_val / 2, y_val + 1, width_level_checkerboard_part, heightLevel,
246 current_disparity, DISP_VALS)]);
247 printf(
"messageDPrevStereoCheckerboard: %f \n",
249 x_val / 2, y_val - 1, width_level_checkerboard_part, heightLevel,
250 current_disparity, DISP_VALS)]);
251 printf(
"messageLPrevStereoCheckerboard: %f \n",
253 x_val / 2 + checkerboard_adjustment, y_val, width_level_checkerboard_part, heightLevel,
254 current_disparity, DISP_VALS)]);
255 printf(
"messageRPrevStereoCheckerboard: %f \n",
257 (x_val / 2 - 1) + checkerboard_adjustment, y_val, width_level_checkerboard_part, heightLevel,
258 current_disparity, DISP_VALS)]);
259 printf(
"dataCostStereoCheckerboard: %f \n",
261 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
262 current_disparity, DISP_VALS)]);
265 printf(
"x_val: %d\n", x_val);
266 printf(
"y_val: %d\n", y_val);
267 for (
unsigned int current_disparity = 0; current_disparity < DISP_VALS; current_disparity++) {
268 printf(
"DISP: %d\n", current_disparity);
269 printf(
"messageUPrevStereoCheckerboard: %f \n",
271 x_val / 2, y_val + 1, width_level_checkerboard_part, heightLevel,
272 current_disparity, DISP_VALS)]);
273 printf(
"messageDPrevStereoCheckerboard: %f \n",
275 x_val / 2, y_val - 1, width_level_checkerboard_part, heightLevel,
276 current_disparity, DISP_VALS)]);
277 printf(
"messageLPrevStereoCheckerboard: %f \n",
279 x_val / 2 + checkerboard_adjustment, y_val, width_level_checkerboard_part, heightLevel,
280 current_disparity, DISP_VALS)]);
281 printf(
"messageRPrevStereoCheckerboard: %f \n",
283 (x_val / 2 - 1) + checkerboard_adjustment, y_val, width_level_checkerboard_part, heightLevel,
284 current_disparity, DISP_VALS)]);
285 printf(
"dataCostStereoCheckerboard: %f \n",
287 x_val / 2, y_val, width_level_checkerboard_part, heightLevel,
288 current_disparity, DISP_VALS)]);
__device__ void printDataAndMessageValsToPointDevice(unsigned int x_val, unsigned int y_val, T *data_cost_checkerboard_0, T *data_cost_checkerboard_1, T *message_u_checkerboard_0, T *message_d_checkerboard_0, T *message_l_checkerboard_0, T *message_r_checkerboard_0, T *message_u_checkerboard_1, T *message_d_checkerboard_1, T *message_l_checkerboard_1, T *message_r_checkerboard_1, unsigned int width_level_checkerboard_part, unsigned int heightLevel)
__device__ void printDataAndMessageValsAtPointDevice(unsigned int x_val, unsigned int y_val, T *data_cost_checkerboard_0, T *data_cost_checkerboard_1, T *message_u_checkerboard_0, T *message_d_checkerboard_0, T *message_l_checkerboard_0, T *message_r_checkerboard_0, T *message_u_checkerboard_1, T *message_d_checkerboard_1, T *message_l_checkerboard_1, T *message_r_checkerboard_1, unsigned int width_level_checkerboard_part, unsigned int heightLevel)
ARCHITECTURE_ADDITION void PrintDataAndMessageValsAtPointKernel(unsigned int x_val, unsigned int y_val, const beliefprop::BpLevelProperties ¤t_bp_level, const T *data_cost_checkerboard_0, const T *data_cost_checkerboard_1, const T *message_u_checkerboard_0, const T *message_d_checkerboard_0, const T *message_l_checkerboard_0, const T *message_r_checkerboard_0, const T *message_u_checkerboard_1, const T *message_d_checkerboard_1, const T *message_l_checkerboard_1, const T *message_r_checkerboard_1, unsigned int bp_settings_disp_vals=0)
ARCHITECTURE_ADDITION void PrintDataAndMessageValsToPointKernel(unsigned int x_val, unsigned int y_val, const beliefprop::BpLevelProperties ¤t_bp_level, const T *data_cost_checkerboard_0, const T *data_cost_checkerboard_1, const T *message_u_checkerboard_0, const T *message_d_checkerboard_0, const T *message_l_checkerboard_0, const T *message_r_checkerboard_0, const T *message_u_checkerboard_1, const T *message_d_checkerboard_1, const T *message_l_checkerboard_1, const T *message_r_checkerboard_1, unsigned int bp_settings_disp_vals=0)
ARCHITECTURE_ADDITION unsigned int RetrieveIndexInDataAndMessage(unsigned int x_val, unsigned int y_val, unsigned int width, unsigned int height, unsigned int current_disparity, unsigned int total_num_disp_vals, unsigned int offset_data=0u)
Retrieve the current 1-D index value of the given point at the given disparity in the data cost and m...