ConvoluteKernel.h
上传用户:yatsl7111
上传日期:2007-01-08
资源大小:1433k
文件大小:3k
源码类别:

图形图象

开发平台:

Visual C++

  1. #include "Convolute.h"
  2. #ifndef _CONVOLUTEKERNEL_H
  3. #define _CONVOLUTEKERNEL_H
  4. static KERNEL LP1=
  5. {
  6. {
  7. 1,1,1,
  8. 1,1,1,
  9. 1,1,1
  10. },
  11. 9
  12. };
  13. static KERNEL LP2=
  14. {
  15. {
  16. 1,1,1,
  17. 1,2,1,
  18. 1,1,1
  19. },
  20. 10
  21. };
  22. static KERNEL LP3=
  23. {
  24. {
  25. 1,2,1,
  26. 2,4,2,
  27. 1,2,1
  28. },
  29. 16
  30. };
  31. static KERNEL HP1=
  32. {
  33. {
  34. -1,-1,-1,
  35. -1, 9,-1,
  36. -1,-1,-1
  37. },
  38. 1
  39. };
  40. static KERNEL HP2=
  41. {
  42. {
  43.  0,-1, 0,
  44. -1, 5,-1,
  45.  0,-1, 0
  46. },
  47. 1
  48. };
  49. static KERNEL HP3=
  50. {
  51. {
  52.  1,-2, 1,
  53. -2, 5,-2,
  54.  1,-2, 1
  55. },
  56. 1
  57. };
  58. // 以下用于边缘探测
  59. static KERNEL VertEdge=
  60. {
  61. {
  62.  0, 0, 0,
  63. -1, 1, 0,
  64.  0, 0, 0
  65. },
  66. 1
  67. };
  68. static KERNEL HorzEdge=
  69. {
  70. {
  71.  0,-1, 0,
  72.  0, 1, 0,
  73.  0, 0, 0
  74. },
  75. 1
  76. };
  77. static KERNEL VertHorzEdge=
  78. {
  79. {
  80. -1, 0, 0,
  81.  0, 1, 0,
  82.  0, 0, 0
  83. },
  84. 1
  85. };
  86. static KERNEL EdgeNorth=
  87. {
  88. {
  89.  1, 1, 1,
  90.  1,-2, 1,
  91. -1,-1,-1
  92. },
  93. 1
  94. };
  95. static KERNEL EdgeNorthEast=
  96. {
  97. {
  98.  1, 1, 1,
  99. -1,-2, 1,
  100. -1,-1, 1
  101. },
  102. 1
  103. };
  104. static KERNEL EdgeEast=
  105. {
  106. {
  107. -1, 1, 1,
  108. -1,-2, 1,
  109. -1, 1, 1
  110. },
  111. 1
  112. };
  113. static  KERNEL EdgeSouthEast=
  114. {
  115. {
  116. -1,-1, 1,
  117. -1,-2, 1,
  118.  1, 1, 1
  119. },
  120. 1
  121. };
  122. static KERNEL EdgeSouth=
  123. {
  124. {
  125. -1,-1,-1,
  126.  1,-2, 1,
  127.  1, 1, 1
  128. },
  129. 1
  130. };
  131. static KERNEL EdgeSouthWest=
  132. {
  133. {
  134.  1,-1,-1,
  135.  1,-2,-1,
  136.  1, 1, 1
  137. },
  138. 1
  139. };
  140. static KERNEL EdgeWest=
  141. {
  142. {
  143.  1, 1,-1,
  144.  1,-2,-1,
  145.  1, 1,-1
  146. },
  147. 1
  148. };
  149. static KERNEL EdgeNorthWest=
  150. {
  151. {
  152.  1, 1, 1,
  153.  1,-2,-1,
  154.  1,-1,-1
  155. },
  156. 1
  157. };
  158. static KERNEL Lap1=
  159. {
  160. {
  161.  0, 1, 0,
  162.  1,-4, 1,
  163.  0, 1, 0
  164. },
  165. 1
  166. };
  167. static KERNEL Lap2=
  168. {
  169. {
  170. -1,-1,-1,
  171. -1, 8,-1,
  172. -1,-1,-1
  173. },
  174. 1
  175. };
  176. static KERNEL Lap3=
  177. {
  178. {
  179. -1,-1,-1,
  180. -1, 9,-1,
  181. -1,-1,-1
  182. },
  183. 1
  184. };
  185. static KERNEL Lap4=
  186. {
  187. {
  188.  1,-2, 1,
  189. -2, 4,-2,
  190.  1,-2, 1
  191. },
  192. 1
  193. };
  194. static KERNEL Sobel2[2]=
  195. {
  196. {
  197. {
  198. -1, 0, 1,
  199. -2, 0, 2,
  200. -1, 0, 1
  201. },
  202. 1
  203. },
  204. {
  205. {
  206.  1, 2, 1,
  207.  0, 0, 0,
  208. -1,-2,-1
  209. },
  210. 1
  211. }
  212. };
  213. static KERNEL Sobel[4]=
  214. {
  215. {
  216. {
  217. -1, 0, 1,
  218. -2, 0, 2,
  219. -1, 0, 1
  220. },
  221. 1
  222. },
  223. {
  224. {
  225. -1,-2,-1,
  226.  0, 0, 0,
  227.  1, 2, 1
  228. },
  229. 1
  230. },
  231. {
  232. {
  233. -2,-1, 0,
  234. -1, 0, 1,
  235.  0, 1, 2
  236. },
  237. 1
  238. },
  239. {
  240. {
  241.  0,-1,-2,
  242.  1, 0,-1,
  243.  2, 1, 0
  244. },
  245. 1
  246. }
  247. };
  248. static KERNEL Hough[4]=
  249. {
  250. {
  251. {
  252. -1, 0, 1,
  253. -1, 0, 1,
  254. -1, 0, 1
  255. },
  256. 1
  257. },
  258. {
  259. {
  260. -1,-1, 0,
  261. -1, 0, 1,
  262.  0, 1, 1
  263. },
  264. 1
  265. },
  266. {
  267. {
  268. -1,-1,-1,
  269.  0, 0, 0,
  270.  1, 1, 1
  271. },
  272. 1
  273. },
  274. {
  275. {
  276.  0,-1,-1,
  277.  1, 0,-1,
  278.  1, 1, 0
  279. },
  280. 1
  281. }
  282. };
  283. #endif // !_CONVOLUTEKERNEL_H