1 // This file is part of OpenCV project.
2 // It is subject to the license terms in the LICENSE file found in the top-level directory
3 // of this distribution and at http://opencv.org/license.html.
4 
5 /*
6  * MIT License
7  *
8  * Copyright (c) 2018 Pedro Diamel Marrero Fernández
9  *
10  * Permission is hereby granted, free of charge, to any person obtaining a copy
11  * of this software and associated documentation files (the "Software"), to deal
12  * in the Software without restriction, including without limitation the rights
13  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14  * copies of the Software, and to permit persons to whom the Software is
15  * furnished to do so, subject to the following conditions:
16  *
17  * The above copyright notice and this permission notice shall be included in all
18  * copies or substantial portions of the Software.
19  *
20  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26  * SOFTWARE.
27  */
28 
29 /**
30   *  @file wiener_filter
31   *  @brief filter wiener for denoise
32   *  @author: Pedro D. Marrero Fernandez
33   *  @data: 17/05/2016
34   */
35 
36 #ifndef _WIENER_FILTER_HPP
37 #define _WIENER_FILTER_HPP
38 
39 #include "precomp.hpp"
40 namespace cv
41 {
42 namespace mcc
43 {
44 
45 /// CWienerFilter
46 /**  @brief wiener class filter for denoise
47       *  @author: Pedro D. Marrero Fernandez
48       *  @data: 17/05/2016
49       */
50 class CWienerFilter
51 {
52 public:
53     CWienerFilter();
54     ~CWienerFilter();
55 
56     /** cvWiener2
57           * @brief A Wiener 2D Filter implementation for OpenCV
58           * @author: Ray Juang / rayver{ _at_ } hkn{ / _dot_ / } berkeley(_dot_) edu
59           * @date : 12.1.2006
60           */
61     void wiener2(InputArray _src, OutputArray _dst, int szWindowX, int szWindowY);
62 };
63 
64 } // namespace mcc
65 
66 } // namespace cv
67 
68 #endif //_WIENER_FILTER_HPP
69