Image Demosaicking with Contour Stencils
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros
inv3x3.h
Go to the documentation of this file.
1 
31 #ifndef _INV3X3_H_
32 #define _INV3X3_H_
33 
34 #ifndef DOXYGEN_SHOULD_SKIP_THIS
35 
36 #define DET3X3(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33) \
37  ((M_11)*((M_22)*(M_33) - (M_32)*(M_23)) \
38  - (M_12)*((M_21)*(M_33) - (M_31)*(M_23)) \
39  + (M_13)*((M_21)*(M_32) - (M_31)*(M_22)))
40 
41 #define INV3X3_11(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33) \
42  (((M_22)*(M_33) - (M_32)*(M_23)) \
43  / DET3X3(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33))
44 #define INV3X3_12(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33) \
45  (((M_13)*(M_32) - (M_33)*(M_12)) \
46  / DET3X3(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33))
47 #define INV3X3_13(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33) \
48  (((M_12)*(M_23) - (M_22)*(M_13)) \
49  / DET3X3(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33))
50 #define INV3X3_21(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33) \
51  (((M_23)*(M_31) - (M_33)*(M_21)) \
52  / DET3X3(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33))
53 #define INV3X3_22(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33) \
54  (((M_11)*(M_33) - (M_13)*(M_31)) \
55  / DET3X3(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33))
56 #define INV3X3_23(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33) \
57  (((M_13)*(M_21) - (M_23)*(M_11)) \
58  / DET3X3(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33))
59 #define INV3X3_31(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33) \
60  (((M_21)*(M_32) - (M_31)*(M_22)) \
61  / DET3X3(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33))
62 #define INV3X3_32(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33) \
63  (((M_12)*(M_31) - (M_32)*(M_11)) \
64  / DET3X3(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33))
65 #define INV3X3_33(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33) \
66  (((M_11)*(M_22) - (M_21)*(M_12)) \
67  / DET3X3(M_11, M_12, M_13, M_21, M_22, M_23, M_31, M_32, M_33))
68 
69 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
70 
71 #endif /* _INV3X3_H_ */