efros_freeman  0.1
patch_search.h
Go to the documentation of this file.
1 /*
2  Copyright (c) 2016 Lara Raad <lara.raad@cmla.ens-cachan.fr>,
3  Bruno Galerne <bruno.galerne@parisdescartes.fr>
4 
5  Quilting is free software: you can redistribute it and/or modify
6  it under the terms of the GNU Affero General Public License as
7  published by the Free Software Foundation, either version 3 of the
8  License, or (at your option) any later version.
9 
10  This program is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU Affero General Public License for more details.
14 
15  You should have received a copy of the GNU Affero General Public License
16  along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18 
19 /**
20  * @file patch_search.h
21  * This file contains all the functions for the patch search procedure that
22  * computes the distance of a patch to all input patches and then randomly
23  * pick on of the patches that are close to the minimal distance.
24  *
25  * @author Lara Raad, Bruno Galerne
26  * @date 2014/06/11
27  */
28 
29 #ifndef PATCH_SEARCH_H_
30 #define PATCH_SEARCH_H_
31 
32 #include "common.h"
33 
34 void compute_input_patch_norms(Image src_im,
35  long double *patch_normsH, long double *patch_normsV,
36  long double *patch_normsL, int patch_sz, int overlap_sz);
37 
38 void patch_search(Image src_im, Image out_im, Corner temp, int patch_sz,
39  long double *src_patch_normsH, long double *src_patch_normsV,
40  long double *src_patch_normsL, fftwl_complex *fft_srcR,
41  fftwl_complex *fft_srcG, fftwl_complex *fft_srcB,
42  int h_dict, int w_dict, Corner *patch, float tol);
43 
44 #endif