Blender V4.3
stub.cc
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2013 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#include "libmv-capi.h"
6
7#include <cstdlib>
8#include <cstring>
9
10/* ************ Logging ************ */
11
12void libmv_initLogging(const char* /*argv0*/) {
13}
14
16}
17
18void libmv_setLoggingVerbosity(int /*verbosity*/) {
19}
20
21/* ************ Planar tracker ************ */
22
23/* TrackRegion (new planar tracker) */
25 const float* /*image1*/,
26 int /*image1_width*/,
27 int /*image1_height*/,
28 const float* /*image2*/,
29 int /*image2_width*/,
30 int /*image2_height*/,
31 const double* x1,
32 const double* y1,
34 double* x2,
35 double* y2) {
36 /* Convert to doubles for the libmv api. The four corners and the center. */
37 for (int i = 0; i < 5; ++i) {
38 x2[i] = x1[i];
39 y2[i] = y1[i];
40 }
41
42 result->termination = -1;
43 result->termination_reason = "Built without libmv support";
44 result->correlation = 0.0;
45
46 return false;
47}
48
49void libmv_samplePlanarPatchFloat(const float* /*image*/,
50 int /*width*/,
51 int /*height*/,
52 int /*channels*/,
53 const double* /*xs*/,
54 const double* /*ys*/,
55 int /*num_samples_x*/,
56 int /*num_samples_y*/,
57 const float* /*mask*/,
58 float* /*patch*/,
59 double* /*warped_position_x*/,
60 double* /*warped_position_y*/) {
61 /* TODO(sergey): implement */
62}
63
64void libmv_samplePlanarPatchByte(const unsigned char* /*image*/,
65 int /*width*/,
66 int /*height*/,
67 int /*channels*/,
68 const double* /*xs*/,
69 const double* /*ys*/,
70 int /*num_samples_x*/,
71 int /*num_samples_y*/,
72 const float* /*mask*/,
73 unsigned char* /*patch*/,
74 double* /*warped_position_x*/,
75 double* /*warped_position_y*/) {
76 /* TODO(sergey): implement */
77}
78
81
82/* ************ Tracks ************ */
83
85 return NULL;
86}
87
88void libmv_tracksInsert(libmv_Tracks* /*libmv_tracks*/,
89 int /*image*/,
90 int /*track*/,
91 double /*x*/,
92 double /*y*/,
93 double /*weight*/) {
94}
95
96void libmv_tracksDestroy(libmv_Tracks* /*libmv_tracks*/) {
97}
98
99/* ************ Reconstruction solver ************ */
100
102 const libmv_Tracks* /*libmv_tracks*/,
103 const libmv_CameraIntrinsicsOptions* /*libmv_camera_intrinsics_options*/,
104 libmv_ReconstructionOptions* /*libmv_reconstruction_options*/,
105 reconstruct_progress_update_cb /*progress_update_callback*/,
106 void* /*callback_customdata*/) {
107 return NULL;
108}
109
111 const libmv_Tracks* /*libmv_tracks*/,
112 const libmv_CameraIntrinsicsOptions* /*libmv_camera_intrinsics_options*/,
113 const libmv_ReconstructionOptions* /*libmv_reconstruction_options*/,
114 reconstruct_progress_update_cb /*progress_update_callback*/,
115 void* /*callback_customdata*/) {
116 return NULL;
117}
118
120 libmv_Reconstruction* /*libmv_reconstruction*/) {
121 return 0;
122}
123
125 const libmv_Reconstruction* /*libmv_reconstruction*/,
126 int /*track*/,
127 double /*pos*/[3]) {
128 return 0;
129}
130
132 const libmv_Reconstruction* /*libmv_reconstruction*/, int /*track*/) {
133 return 0.0;
134}
135
137 const libmv_Reconstruction* /*libmv_reconstruction*/, int /*image*/) {
138 return 0.0;
139}
140
142 const libmv_Reconstruction* /*libmv_reconstruction*/,
143 int /*image*/,
144 double /*mat*/[4][4]) {
145 return 0;
146}
147
149 const libmv_Reconstruction* /*libmv_reconstruction*/) {
150 return 0.0;
151}
152
154 struct libmv_Reconstruction* /*libmv_reconstruction*/) {
155}
156
157/* ************ Feature detector ************ */
158
159libmv_Features* libmv_detectFeaturesByte(const unsigned char* /*image_buffer*/,
160 int /*width*/,
161 int /*height*/,
162 int /*channels*/,
163 libmv_DetectOptions* /*options*/) {
164 return NULL;
165}
166
168 const float* /*image_buffer*/,
169 int /*width*/,
170 int /*height*/,
171 int /*channels*/,
172 libmv_DetectOptions* /*options*/) {
173 return NULL;
174}
175
176int libmv_countFeatures(const libmv_Features* /*libmv_features*/) {
177 return 0;
178}
179
180void libmv_getFeature(const libmv_Features* /*libmv_features*/,
181 int /*number*/,
182 double* x,
183 double* y,
184 double* score,
185 double* size) {
186 *x = 0.0;
187 *y = 0.0;
188 *score = 0.0;
189 *size = 0.0;
190}
191
192void libmv_featuresDestroy(struct libmv_Features* /*libmv_features*/) {
193}
194
195/* ************ Camera intrinsics ************ */
196
201
203 const libmv_CameraIntrinsicsOptions* /*libmv_camera_intrinsics_options*/) {
204 return NULL;
205}
206
208 const libmv_CameraIntrinsics* /*libmvIntrinsics*/) {
209 return NULL;
210}
211
213 libmv_CameraIntrinsics* /*libmvIntrinsics*/) {
214}
215
217 const libmv_CameraIntrinsicsOptions* /*libmv_camera_intrinsics_options*/,
218 libmv_CameraIntrinsics* /*libmv_intrinsics*/) {
219}
220
222 libmv_CameraIntrinsics* /*libmv_intrinsics*/, int /*threads*/) {
223}
224
226 const libmv_CameraIntrinsics* /*libmv_intrinsics*/,
227 libmv_CameraIntrinsicsOptions* camera_intrinsics_options) {
228 memset(camera_intrinsics_options, 0, sizeof(libmv_CameraIntrinsicsOptions));
229 camera_intrinsics_options->focal_length = 1.0;
230}
231
233 const libmv_CameraIntrinsics* /*libmv_intrinsics*/,
234 const unsigned char* source_image,
235 int width,
236 int height,
237 float /*overscan*/,
238 int channels,
239 unsigned char* destination_image) {
240 memcpy(destination_image,
241 source_image,
242 channels * width * height * sizeof(unsigned char));
243}
244
246 const libmv_CameraIntrinsics* /*libmv_intrinsics*/,
247 const float* source_image,
248 int width,
249 int height,
250 float /*overscan*/,
251 int channels,
252 float* destination_image) {
253 memcpy(destination_image,
254 source_image,
255 channels * width * height * sizeof(float));
256}
257
259 const struct libmv_CameraIntrinsics* /*libmv_intrinsics*/,
260 const unsigned char* source_image,
261 int width,
262 int height,
263 float /*overscan*/,
264 int channels,
265 unsigned char* destination_image) {
266 memcpy(destination_image,
267 source_image,
268 channels * width * height * sizeof(unsigned char));
269}
270
272 const libmv_CameraIntrinsics* /*libmv_intrinsics*/,
273 float* source_image,
274 int width,
275 int height,
276 float /*overscan*/,
277 int channels,
278 float* destination_image) {
279 memcpy(destination_image,
280 source_image,
281 channels * width * height * sizeof(float));
282}
283
284/* ************ utils ************ */
285
287 const struct libmv_CameraIntrinsics* /*libmv_intrinsics*/,
288 double /*x*/,
289 double /*y*/,
290 double* x1,
291 double* y1) {
292 *x1 = 0.0;
293 *y1 = 0.0;
294}
295
297 const struct libmv_CameraIntrinsics* /*libmv_intrinsics*/,
298 double /*x*/,
299 double /*y*/,
300 double* x1,
301 double* y1) {
302 *x1 = 0.0;
303 *y1 = 0.0;
304}
305
306void libmv_homography2DFromCorrespondencesEuc(/* const */ double (* /*x1*/)[2],
307 /* const */ double (* /*x2*/)[2],
308 int /*num_points*/,
309 double H[3][3]) {
310 memset(H, 0, sizeof(double[3][3]));
311 H[0][0] = 1.0f;
312 H[1][1] = 1.0f;
313 H[2][2] = 1.0f;
314}
315
316/* ************ autotrack ************ */
317
319 return NULL;
320}
321
322void libmv_autoTrackDestroy(libmv_AutoTrack* /*libmv_autotrack*/) {
323}
324
326 const libmv_AutoTrackOptions* /*options*/) {
327}
328
329int libmv_autoTrackMarker(libmv_AutoTrack* /*libmv_autotrack*/,
330 const libmv_TrackRegionOptions* /*libmv_options*/,
331 libmv_Marker* /*libmv_tracker_marker*/,
332 libmv_TrackRegionResult* /*libmv_result*/) {
333 return 0;
334}
335
337 const libmv_Marker* /*libmv_marker*/) {
338}
339
341 const libmv_Marker* /*libmv_marker-*/,
342 size_t /*num_markers*/) {
343}
344
346 int /*clip*/,
347 int /*frame*/,
348 int /*track*/,
349 libmv_Marker* /*libmv_marker*/) {
350 return 0;
351}
352
353/* ************ frame accessor ************ */
354
356 libmv_FrameAccessorUserData* /*user_data**/,
357 libmv_GetImageCallback /*get_image_callback*/,
358 libmv_ReleaseImageCallback /*release_image_callback*/,
359 libmv_GetMaskForTrackCallback /*get_mask_for_track_callback*/,
360 libmv_ReleaseMaskCallback /*release_mask_callback*/) {
361 return NULL;
362}
363
365}
366
368 const libmv_FrameTransform* /*transform*/) {
369 return 0;
370}
371
373 const libmv_FrameTransform* /*transform*/,
374 const libmv_FloatImage* /*input_image*/,
375 libmv_FloatImage* /*output_image*/) {
376}
#define NULL
struct libmv_AutoTrack libmv_AutoTrack
struct libmv_CameraIntrinsics libmv_CameraIntrinsics
struct libmv_FrameTransform libmv_FrameTransform
libmv_CacheKey(* libmv_GetImageCallback)(libmv_FrameAccessorUserData *user_data, int clip, int frame, libmv_InputMode input_mode, int downscale, const libmv_Region *region, const libmv_FrameTransform *transform, float **destination, int *width, int *height, int *channels)
struct libmv_FrameAccessorUserData libmv_FrameAccessorUserData
libmv_CacheKey(* libmv_GetMaskForTrackCallback)(libmv_FrameAccessorUserData *user_data, int clip, int frame, int track, const libmv_Region *region, float **destination, int *width, int *height)
void(* libmv_ReleaseImageCallback)(libmv_CacheKey cache_key)
void(* libmv_ReleaseMaskCallback)(libmv_CacheKey cache_key)
struct libmv_FrameAccessor libmv_FrameAccessor
void(* reconstruct_progress_update_cb)(void *customdata, double progress, const char *message)
struct libmv_Tracks libmv_Tracks
#define H(x, y, z)
__int64 int64_t
Definition stdint.h:89
void libmv_cameraIntrinsicsApply(const struct libmv_CameraIntrinsics *, double, double, double *x1, double *y1)
Definition stub.cc:286
void libmv_cameraIntrinsicsDestroy(libmv_CameraIntrinsics *)
Definition stub.cc:212
void libmv_autoTrackAddMarker(libmv_AutoTrack *, const libmv_Marker *)
Definition stub.cc:336
void libmv_floatImageDestroy(libmv_FloatImage *)
Definition stub.cc:79
void libmv_setLoggingVerbosity(int)
Definition stub.cc:18
void libmv_cameraIntrinsicsExtractOptions(const libmv_CameraIntrinsics *, libmv_CameraIntrinsicsOptions *camera_intrinsics_options)
Definition stub.cc:225
int libmv_trackRegion(const libmv_TrackRegionOptions *, const float *, int, int, const float *, int, int, const double *x1, const double *y1, libmv_TrackRegionResult *result, double *x2, double *y2)
Definition stub.cc:24
void libmv_cameraIntrinsicsDistortFloat(const libmv_CameraIntrinsics *, float *source_image, int width, int height, float, int channels, float *destination_image)
Definition stub.cc:271
void libmv_cameraIntrinsicsSetThreads(libmv_CameraIntrinsics *, int)
Definition stub.cc:221
struct libmv_Features * libmv_detectFeaturesFloat(const float *, int, int, int, libmv_DetectOptions *)
Definition stub.cc:167
void libmv_cameraIntrinsicsInvert(const struct libmv_CameraIntrinsics *, double, double, double *x1, double *y1)
Definition stub.cc:296
void libmv_homography2DFromCorrespondencesEuc(double(*)[2], double(*)[2], int, double H[3][3])
Definition stub.cc:306
void libmv_samplePlanarPatchByte(const unsigned char *, int, int, int, const double *, const double *, int, int, const float *, unsigned char *, double *, double *)
Definition stub.cc:64
void libmv_reconstructionDestroy(struct libmv_Reconstruction *)
Definition stub.cc:153
void libmv_frameAccessorgetTransformRun(const libmv_FrameTransform *, const libmv_FloatImage *, libmv_FloatImage *)
Definition stub.cc:372
double libmv_reprojectionErrorForImage(const libmv_Reconstruction *, int)
Definition stub.cc:136
libmv_AutoTrack * libmv_autoTrackNew(libmv_FrameAccessor *)
Definition stub.cc:318
int64_t libmv_frameAccessorgetTransformKey(const libmv_FrameTransform *)
Definition stub.cc:367
void libmv_autoTrackSetMarkers(libmv_AutoTrack *, const libmv_Marker *, size_t)
Definition stub.cc:340
void libmv_startDebugLogging(void)
Definition stub.cc:15
void libmv_samplePlanarPatchFloat(const float *, int, int, int, const double *, const double *, int, int, const float *, float *, double *, double *)
Definition stub.cc:49
double libmv_reprojectionErrorForTrack(const libmv_Reconstruction *, int)
Definition stub.cc:131
int libmv_reprojectionCameraForImage(const libmv_Reconstruction *, int, double[4][4])
Definition stub.cc:141
int libmv_reconstructionIsValid(libmv_Reconstruction *)
Definition stub.cc:119
libmv_Tracks * libmv_tracksNew(void)
Definition stub.cc:84
void libmv_FrameAccessorDestroy(libmv_FrameAccessor *)
Definition stub.cc:364
libmv_Reconstruction * libmv_solveReconstruction(const libmv_Tracks *, const libmv_CameraIntrinsicsOptions *, libmv_ReconstructionOptions *, reconstruct_progress_update_cb, void *)
Definition stub.cc:101
void libmv_tracksDestroy(libmv_Tracks *)
Definition stub.cc:96
libmv_CameraIntrinsics * libmv_cameraIntrinsicsNew(const libmv_CameraIntrinsicsOptions *)
Definition stub.cc:202
int libmv_autoTrackGetMarker(libmv_AutoTrack *, int, int, int, libmv_Marker *)
Definition stub.cc:345
void libmv_getFeature(const libmv_Features *, int, double *x, double *y, double *score, double *size)
Definition stub.cc:180
libmv_Features * libmv_detectFeaturesByte(const unsigned char *, int, int, int, libmv_DetectOptions *)
Definition stub.cc:159
void libmv_initLogging(const char *)
Definition stub.cc:12
void libmv_cameraIntrinsicsUndistortByte(const libmv_CameraIntrinsics *, const unsigned char *source_image, int width, int height, float, int channels, unsigned char *destination_image)
Definition stub.cc:232
int libmv_reprojectionPointForTrack(const libmv_Reconstruction *, int, double[3])
Definition stub.cc:124
double libmv_reprojectionError(const libmv_Reconstruction *)
Definition stub.cc:148
void libmv_autoTrackSetOptions(libmv_AutoTrack *, const libmv_AutoTrackOptions *)
Definition stub.cc:325
void libmv_cameraIntrinsicsUndistortFloat(const libmv_CameraIntrinsics *, const float *source_image, int width, int height, float, int channels, float *destination_image)
Definition stub.cc:245
void libmv_featuresDestroy(struct libmv_Features *)
Definition stub.cc:192
libmv_CameraIntrinsics * libmv_reconstructionExtractIntrinsics(libmv_Reconstruction *)
Definition stub.cc:197
libmv_Reconstruction * libmv_solveModal(const libmv_Tracks *, const libmv_CameraIntrinsicsOptions *, const libmv_ReconstructionOptions *, reconstruct_progress_update_cb, void *)
Definition stub.cc:110
libmv_CameraIntrinsics * libmv_cameraIntrinsicsCopy(const libmv_CameraIntrinsics *)
Definition stub.cc:207
void libmv_cameraIntrinsicsUpdate(const libmv_CameraIntrinsicsOptions *, libmv_CameraIntrinsics *)
Definition stub.cc:216
int libmv_countFeatures(const libmv_Features *)
Definition stub.cc:176
void libmv_tracksInsert(libmv_Tracks *, int, int, double, double, double)
Definition stub.cc:88
void libmv_autoTrackDestroy(libmv_AutoTrack *)
Definition stub.cc:322
void libmv_cameraIntrinsicsDistortByte(const struct libmv_CameraIntrinsics *, const unsigned char *source_image, int width, int height, float, int channels, unsigned char *destination_image)
Definition stub.cc:258
libmv_FrameAccessor * libmv_FrameAccessorNew(libmv_FrameAccessorUserData *, libmv_GetImageCallback, libmv_ReleaseImageCallback, libmv_GetMaskForTrackCallback, libmv_ReleaseMaskCallback)
Definition stub.cc:355
int libmv_autoTrackMarker(libmv_AutoTrack *, const libmv_TrackRegionOptions *, libmv_Marker *, libmv_TrackRegionResult *)
Definition stub.cc:329