From 40acf9ddc8f700b45d05bb2098be23a93c3bfa6a Mon Sep 17 00:00:00 2001 From: cathook Date: Fri, 27 Jun 2014 18:24:38 +0800 Subject: fix dimension size error --- doc/html/Bitmap_8h_source.html | 486 +++++++++++++++++++++-------------------- 1 file changed, 246 insertions(+), 240 deletions(-) (limited to 'doc/html/Bitmap_8h_source.html') diff --git a/doc/html/Bitmap_8h_source.html b/doc/html/Bitmap_8h_source.html index 596d8a3..f5f7c7c 100644 --- a/doc/html/Bitmap_8h_source.html +++ b/doc/html/Bitmap_8h_source.html @@ -28,7 +28,7 @@ Logo
Templates -- Meow -  204.13.18 +  1.2.9
A C++ template contains kinds of interesting classes and functions
@@ -86,269 +86,275 @@ $(document).ready(function(){initNavTree('Bitmap_8h_source.html','');});
32  size_t width = std::max(ceil((double)(sigma * 2)), 0.0);
33  std::vector<double> factor(width + 1 + width);
34  for (size_t x = 0; x < width; x++) {
-
35  factor[width - x - 1] = exp(-(squ((double)x)) / (2.0 * sigma2));
-
36  factor[width + x + 1] = exp(-(squ((double)x)) / (2.0 * sigma2));
-
37  }
-
38  factor[width] = 1.0;
-
39  return factor;
-
40  }
-
41 
-
43  static std::vector<double> gradianceFactor1(double sigma) {
-
44  double sigma2 = squ(sigma), ss = sigma * 2;
-
45  size_t width = std::max(ceil(ss), 1.0);
-
46  std::vector<double> factor(width + 1 + width);
-
47  for (size_t x = 0; x < width; x++) {
-
48  factor[width - x - 1] = (double)x * exp(-(squ((double)x))/(2.0*sigma2));
-
49  factor[width + x + 1] = -(double)x * exp(-(squ((double)x))/(2.0*sigma2));
-
50  }
-
51  factor[width] = 0.0;
-
52  return factor;
-
53  }
-
54 
-
56  Bitmap xyBlur(std::vector<double> const& factor,
-
57  ssize_t dx, ssize_t dy) const {
-
58  Bitmap ret(*this);
-
59  if (factor.size() > 0) {
-
60  ssize_t w = factor.size() / 2;
-
61  for (size_t y = 0, Y = height(); y < Y; y++) {
-
62  for (size_t x = 0, X = width(); x < X; x++) {
-
63  Pixel sum(0);
-
64  double fsum(0);
-
65  for (ssize_t i = -w; i <= w; i++) {
-
66  ssize_t x2 = (ssize_t)x + dx * i;
-
67  ssize_t y2 = (ssize_t)y + dy * i;
-
68  if (0 <= x2 && x2 < (ssize_t)X && 0 <= y2 && y2 < (ssize_t)Y) {
-
69  sum = sum + pixel(y2, x2) * factor[i + w];
-
70  fsum = fsum + fabs(factor[i + w]);
-
71  }
-
72  }
-
73  ret.pixel(y, x, sum / fsum);
-
74  }
-
75  }
-
76  }
-
77  return ret;
-
78  }
-
79 public:
-
83  Bitmap() {
-
84  }
-
85 
-
89  Bitmap(Bitmap const& b): matrix_(b.matrix_) {
-
90  }
-
91 
-
99  Bitmap(size_t h, size_t w, Pixel const& p): matrix_(h, w, p) {
-
100  }
-
101 
-
105  ~Bitmap() {
-
106  }
-
107 
-
111  Bitmap& copyFrom(Bitmap const& b) {
-
112  matrix_.copyFrom(b.matrix_);
-
113  return *this;
-
114  }
-
115 
-
119  Bitmap& referenceFrom(Bitmap const& b) {
-
120  matrix_.referenceFrom(b.matrix_);
-
121  return *this;
-
122  }
-
123 
-
132  void reset(size_t h, size_t w, Pixel const& p) {
-
133  matrix_.reset(h, w, p);
-
134  }
-
135 
-
139  void clear() {
-
140  matrix_.size(0, 0, Pixel(0));
+
35  double e = exp(-(squ((double)x)) / (2.0 * sigma2));
+
36  factor[width - x - 1] = e;
+
37  factor[width + x + 1] = e;
+
38  }
+
39  factor[width] = 1.0;
+
40  return factor;
+
41  }
+
42 
+
44  static std::vector<double> gradianceFactor1(double sigma) {
+
45  double sigma2 = squ(sigma), ss = sigma * 2;
+
46  size_t width = std::max(ceil(ss), 1.0);
+
47  std::vector<double> factor(width + 1 + width);
+
48  for (size_t x = 0; x < width; x++) {
+
49  double e = exp(-(squ((double)x)) / (2.0 * sigma2));
+
50  factor[width - x - 1] = (double)x * e;
+
51  factor[width + x + 1] = -(double)x * e;
+
52  }
+
53  factor[width] = 0.0;
+
54  return factor;
+
55  }
+
56 
+
58  Bitmap xyBlur(std::vector<double> const& factor,
+
59  ssize_t dx, ssize_t dy) const {
+
60  if (factor.size() <= 1)
+
61  return *this;
+
62  Bitmap ret(height(), width(), Pixel(0));
+
63  ssize_t w = factor.size() / 2;
+
64  for (size_t y = 0, Y = height(); y < Y; y++)
+
65  for (size_t x = 0, X = width(); x < X; x++) {
+
66  Pixel sum(0);
+
67  double fsum(0);
+
68  for (ssize_t i = -w; i <= w; i++) {
+
69  ssize_t x2 = (ssize_t)x + dx * i;
+
70  ssize_t y2 = (ssize_t)y + dy * i;
+
71  if (0 <= x2 && x2 < (ssize_t)X && 0 <= y2 && y2 < (ssize_t)Y) {
+
72  sum = sum + pixel(y2, x2) * factor[i + w];
+
73  fsum = fsum + fabs(factor[i + w]);
+
74  }
+
75  }
+
76  ret.pixel(y, x, sum / fsum);
+
77  }
+
78  return ret;
+
79  }
+
80 public:
+
84  Bitmap() {
+
85  }
+
86 
+
90  Bitmap(Bitmap const& b): matrix_(b.matrix_) {
+
91  }
+
92 
+
96  Bitmap(Matrix<Pixel> const& b): matrix_(b) {
+
97  }
+
98 
+
106  Bitmap(size_t h, size_t w, Pixel const& p): matrix_(h, w, p) {
+
107  }
+
108 
+
112  ~Bitmap() {
+
113  }
+
114 
+
118  Bitmap& copyFrom(Bitmap const& b) {
+
119  matrix_.copyFrom(b.matrix_);
+
120  return *this;
+
121  }
+
122 
+
126  Bitmap& referenceFrom(Bitmap const& b) {
+
127  matrix_.referenceFrom(b.matrix_);
+
128  return *this;
+
129  }
+
130 
+
139  void reset(size_t h, size_t w, Pixel const& p) {
+
140  matrix_.reset(h, w, p);
141  }
142 
-
146  size_t height() const {
-
147  return matrix_.rows();
+
146  void clear() {
+
147  matrix_.clear();
148  }
149 
-
153  size_t width() const {
-
154  return matrix_.cols();
+
153  size_t height() const {
+
154  return matrix_.rows();
155  }
156 
-
160  size_t size() const {
-
161  return matrix_.size();
+
160  size_t width() const {
+
161  return matrix_.cols();
162  }
163 
-
171  size_t height(size_t h2, Pixel const& p) {
-
172  return matrix_.rows(h2, p);
-
173  }
-
174 
-
182  size_t width(size_t w2, Pixel const& p) {
-
183  return matrix_.cols(w2, p);
-
184  }
-
185 
-
194  size_t size(size_t h2, size_t w2, Pixel const& p) {
-
195  return matrix_.size(h2, w2, p);
-
196  }
-
197 
-
205  Pixel pixel(size_t y, size_t x) const {
-
206  return matrix_.entry(y, x);
-
207  }
-
208 
-
217  Pixel pixel(size_t y, size_t x, Pixel const& p) {
-
218  return matrix_.entry(y, x, p);
-
219  }
-
220 
-
233  void pixels(ssize_t yFirst, ssize_t yLast,
-
234  ssize_t xFirst, ssize_t xLast,
-
235  Pixel const& p) {
-
236  return matrix_.entries(yFirst, yLast, xFirst, xLast, p);
-
237  }
-
238 
-
242  Matrix<Pixel> matrix() const {
-
243  return matrix_;
+
167  size_t size() const {
+
168  return matrix_.size();
+
169  }
+
170 
+
178  size_t height(size_t h2, Pixel const& p) {
+
179  return matrix_.rows(h2, p);
+
180  }
+
181 
+
189  size_t width(size_t w2, Pixel const& p) {
+
190  return matrix_.cols(w2, p);
+
191  }
+
192 
+
201  size_t size(size_t h2, size_t w2, Pixel const& p) {
+
202  return matrix_.size(h2, w2, p);
+
203  }
+
204 
+
212  Pixel pixel(size_t y, size_t x) const {
+
213  return matrix_.entry(y, x);
+
214  }
+
215 
+
224  Pixel pixel(size_t y, size_t x, Pixel const& p) {
+
225  return matrix_.entry(y, x, p);
+
226  }
+
227 
+
240  void pixels(ssize_t yFirst, ssize_t yLast,
+
241  ssize_t xFirst, ssize_t xLast,
+
242  Pixel const& p) {
+
243  return matrix_.entries(yFirst, yLast, xFirst, xLast, p);
244  }
245 
-
249  Matrix<Pixel>& matrixGet() {
+
249  Matrix<Pixel> matrix() const {
250  return matrix_;
251  }
252 
-
256  Matrix<Pixel> matrix(Matrix<Pixel> const& p) {
-
257  matrix_.copyFrom(p);
-
258  return matrix();
-
259  }
-
260 
-
268  Bitmap gaussian(double radiusY, double radiusX) const {
-
269  return (xyBlur(gaussianFactor1(radiusY), 1, 0).
-
270  xyBlur(gaussianFactor1(radiusX), 0, 1));
-
271  }
-
272 
-
280  Bitmap& gaussianed(double radiusY, double radiusX) {
-
281  return copyFrom(gaussian(radiusY, radiusX));
-
282  }
-
283 
-
291  Bitmap gradianceX(double radiusY, double radiusX) const {
-
292  return (xyBlur(gaussianFactor1(radiusY), 1, 0).
-
293  xyBlur(gradianceFactor1(radiusX), 0, 1));
-
294  }
-
295 
-
303  Bitmap<Pixel>& gradiancedX(double radiusY, double radiusX) {
-
304  return copyFrom(gradianceX(radiusY, radiusX));
-
305  }
-
306 
-
314  Bitmap<Pixel> gradianceY (double radiusY, double radiusX) const {
-
315  return (xyBlur(gaussianFactor1(radiusX), 0, 1).
-
316  xyBlur(gradianceFactor1(radiusY), 1, 0));
-
317  }
-
318 
-
326  Bitmap<Pixel>& gradiancedY(double radiusY, double radiusX) {
-
327  return copyFrom(gradianceY(radiusY, radiusX));
-
328  }
-
329 
-
333  Bitmap& operator=(Bitmap const& b) {
-
334  return copyFrom(b);
+
256  Matrix<Pixel>& matrixGet() {
+
257  return matrix_;
+
258  }
+
259 
+
263  Matrix<Pixel> matrix(Matrix<Pixel> const& p) {
+
264  matrix_.copyFrom(p);
+
265  return matrix();
+
266  }
+
267 
+
275  Bitmap gaussian(double radiusY, double radiusX) const {
+
276  return (xyBlur(gaussianFactor1(radiusY), 1, 0).
+
277  xyBlur(gaussianFactor1(radiusX), 0, 1));
+
278  }
+
279 
+
287  Bitmap& gaussianed(double radiusY, double radiusX) {
+
288  return copyFrom(gaussian(radiusY, radiusX));
+
289  }
+
290 
+
298  Bitmap gradianceX(double radiusY, double radiusX) const {
+
299  return (xyBlur(gaussianFactor1(radiusY), 1, 0).
+
300  xyBlur(gradianceFactor1(radiusX), 0, 1));
+
301  }
+
302 
+
310  Bitmap<Pixel>& gradiancedX(double radiusY, double radiusX) {
+
311  return copyFrom(gradianceX(radiusY, radiusX));
+
312  }
+
313 
+
321  Bitmap<Pixel> gradianceY (double radiusY, double radiusX) const {
+
322  return (xyBlur(gaussianFactor1(radiusX), 0, 1).
+
323  xyBlur(gradianceFactor1(radiusY), 1, 0));
+
324  }
+
325 
+
333  Bitmap<Pixel>& gradiancedY(double radiusY, double radiusX) {
+
334  return copyFrom(gradianceY(radiusY, radiusX));
335  }
336 
-
340  Pixel operator()(size_t y, size_t x) const {
-
341  return pixel(y, x);
+
340  Bitmap& operator=(Bitmap const& b) {
+
341  return copyFrom(b);
342  }
343 
-
347  Pixel const& operator()(size_t y, size_t x, Pixel const& p) const {
-
348  return pixel(y, x, p);
+
347  Pixel operator()(size_t y, size_t x) const {
+
348  return pixel(y, x);
349  }
350 
-
355  bool write(FILE* f, bool bin, unsigned int fg) const {
-
356  if (fg & kBitmapReadWritePixels)
-
357  return false;
-
358  if (bin) {
-
359  long tmp;
-
360  if (fwrite(&(tmp = matrix_.cols()), sizeof(tmp), 1, f) < 1) return false;
-
361  if (fwrite(&(tmp = matrix_.rows()), sizeof(tmp), 1, f) < 1) return false;
-
362  }
-
363  else {
-
364  if (fprintf(f, "%ld %ld\n", (long)matrix_.cols(), (long)matrix_.rows())
-
365  < 2) return false;
-
366  }
-
367  return true;
-
368  }
-
369 
-
374  bool read(FILE* f, bool bin, unsigned int fg) {
-
375  if (fg & kBitmapReadWritePixels)
-
376  return false;
-
377  long tmp1, tmp2;
-
378  if (bin) {
-
379  if (fread(&tmp1, sizeof(tmp1), 1, f) < 1) return false;
-
380  if (fread(&tmp2, sizeof(tmp2), 1, f) < 1) return false;
-
381  }
-
382  else {
-
383  if (fscanf(f, "%ld %ld", &tmp1, &tmp2) < 2) return false;
-
384  }
-
385  matrix_.size(tmp1, tmp2, Pixel(0));
-
386  return true;
-
387  }
-
388 
-
393  ObjBase* create() const {
-
394  return new Bitmap();
-
395  }
-
396 
-
406  ObjBase* copyFrom(ObjBase const* b) {
-
407  return &(copyFrom(*(Bitmap*)b));
-
408  }
-
409 
-
414  char const* ctype() const{
-
415  return typeid(*this).name();
-
416  }
-
417 
-
422  std::string type() const {
-
423  return std::string(ctype());
-
424  }
-
425 };
-
426 
-
427 
-
428 } // meow
-
429 
-
430 #endif // gra_Bitmap_H__
-
Bitmap< Pixel > gradianceY(double radiusY, double radiusX) const
回傳對y偏微分
Definition: Bitmap.h:314
-
ObjBase * copyFrom(ObjBase const *b)
複製資料
Definition: Bitmap.h:406
-
void pixels(ssize_t yFirst, ssize_t yLast, ssize_t xFirst, ssize_t xLast, Pixel const &p)
區塊修改
Definition: Bitmap.h:233
-
Bitmap(size_t h, size_t w, Pixel const &p)
constructor, 指定寬高, 預設Pixel
Definition: Bitmap.h:99
-
size_t size(size_t h2, size_t w2, Pixel const &p)
修改寬高
Definition: Bitmap.h:194
-
Matrix & referenceFrom(Matrix const &m)
reference
Definition: Matrix.h:104
-
Pixel operator()(size_t y, size_t x) const
same as pixel(y, x)
Definition: Bitmap.h:340
-
size_t height() const
回傳高度
Definition: Bitmap.h:146
-
size_t rows() const
Return number of rows.
Definition: Matrix.h:123
-
void clear()
清除資料, 寬高階規零
Definition: Bitmap.h:139
-
Pixel const & operator()(size_t y, size_t x, Pixel const &p) const
same as pixel(y, x, p)
Definition: Bitmap.h:347
+
354  Pixel const& operator()(size_t y, size_t x, Pixel const& p) const {
+
355  return pixel(y, x, p);
+
356  }
+
357 
+
362  bool write(FILE* f, bool bin, unsigned int fg) const {
+
363  if (fg & kBitmapReadWritePixels)
+
364  return false;
+
365  if (bin) {
+
366  long tmp;
+
367  if (fwrite(&(tmp = matrix_.cols()), sizeof(tmp), 1, f) < 1) return false;
+
368  if (fwrite(&(tmp = matrix_.rows()), sizeof(tmp), 1, f) < 1) return false;
+
369  }
+
370  else {
+
371  if (fprintf(f, "%ld %ld\n", (long)matrix_.cols(), (long)matrix_.rows())
+
372  < 2) return false;
+
373  }
+
374  return true;
+
375  }
+
376 
+
381  bool read(FILE* f, bool bin, unsigned int fg) {
+
382  if (fg & kBitmapReadWritePixels)
+
383  return false;
+
384  long tmp1, tmp2;
+
385  if (bin) {
+
386  if (fread(&tmp1, sizeof(tmp1), 1, f) < 1) return false;
+
387  if (fread(&tmp2, sizeof(tmp2), 1, f) < 1) return false;
+
388  }
+
389  else {
+
390  if (fscanf(f, "%ld %ld", &tmp1, &tmp2) < 2) return false;
+
391  }
+
392  matrix_.size(tmp1, tmp2, Pixel(0));
+
393  return true;
+
394  }
+
395 
+
400  ObjBase* create() const {
+
401  return new Bitmap();
+
402  }
+
403 
+
413  ObjBase* copyFrom(ObjBase const* b) {
+
414  return &(copyFrom(*(Bitmap const*)b));
+
415  }
+
416 
+
421  char const* ctype() const{
+
422  return typeid(*this).name();
+
423  }
+
424 
+
429  std::string type() const {
+
430  return std::string(ctype());
+
431  }
+
432 };
+
433 
+
434 
+
435 } // meow
+
436 
+
437 #endif // gra_Bitmap_H__
+
Bitmap< Pixel > gradianceY(double radiusY, double radiusX) const
回傳對y偏微分
Definition: Bitmap.h:321
+
ObjBase * copyFrom(ObjBase const *b)
複製資料
Definition: Bitmap.h:413
+
void pixels(ssize_t yFirst, ssize_t yLast, ssize_t xFirst, ssize_t xLast, Pixel const &p)
區塊修改
Definition: Bitmap.h:240
+
Bitmap(size_t h, size_t w, Pixel const &p)
constructor, 指定寬高, 預設Pixel
Definition: Bitmap.h:106
+
size_t size(size_t h2, size_t w2, Pixel const &p)
修改寬高
Definition: Bitmap.h:201
+
Matrix & referenceFrom(Matrix const &m)
reference
Definition: Matrix.h:109
+
Pixel operator()(size_t y, size_t x) const
same as pixel(y, x)
Definition: Bitmap.h:347
+
size_t height() const
回傳高度
Definition: Bitmap.h:153
+
size_t rows() const
Return number of rows.
Definition: Matrix.h:128
+
void clear()
清除資料, 寬高階規零
Definition: Bitmap.h:146
+
Pixel const & operator()(size_t y, size_t x, Pixel const &p) const
same as pixel(y, x, p)
Definition: Bitmap.h:354
const unsigned int kBitmapReadWritePixels
Definition: Bitmap.h:17
-
char const * ctype() const
回傳class的type
Definition: Bitmap.h:414
-
Bitmap & operator=(Bitmap const &b)
same as copyFrom(b)
Definition: Bitmap.h:333
-
Bitmap gaussian(double radiusY, double radiusX) const
回傳高斯模糊
Definition: Bitmap.h:268
-
size_t cols() const
Return number of cols.
Definition: Matrix.h:128
+
char const * ctype() const
回傳class的type
Definition: Bitmap.h:421
+
Bitmap & operator=(Bitmap const &b)
same as copyFrom(b)
Definition: Bitmap.h:340
+
Bitmap gaussian(double radiusY, double radiusX) const
回傳高斯模糊
Definition: Bitmap.h:275
+
size_t cols() const
Return number of cols.
Definition: Matrix.h:133
-
Bitmap()
constructor, 產生一個空的Bitmap
Definition: Bitmap.h:83
-
Matrix< Pixel > matrix() const
回傳矩陣形式
Definition: Bitmap.h:242
-
Bitmap(Bitmap const &b)
constructor, 複製一個bitmap
Definition: Bitmap.h:89
-
Matrix< Pixel > matrix(Matrix< Pixel > const &p)
直接設定
Definition: Bitmap.h:256
+
Bitmap()
constructor, 產生一個空的Bitmap
Definition: Bitmap.h:84
+
Matrix< Pixel > matrix() const
回傳矩陣形式
Definition: Bitmap.h:249
+
Bitmap(Bitmap const &b)
constructor, 複製一個bitmap
Definition: Bitmap.h:90
+
Matrix< Pixel > matrix(Matrix< Pixel > const &p)
直接設定
Definition: Bitmap.h:263
二維點陣資料
Definition: Bitmap.h:25
-
bool read(FILE *f, bool bin, unsigned int fg)
將資料讀入
Definition: Bitmap.h:374
-
Matrix< Pixel > & matrixGet()
回傳矩陣形式 (non-constant form)
Definition: Bitmap.h:249
-
Pixel pixel(size_t y, size_t x) const
取得 (y, x) 的pixel
Definition: Bitmap.h:205
-
size_t width() const
回傳寬度
Definition: Bitmap.h:153
-
bool write(FILE *f, bool bin, unsigned int fg) const
將資料寫入檔案
Definition: Bitmap.h:355
-
Matrix & copyFrom(Matrix const &m)
copy
Definition: Matrix.h:91
+
bool read(FILE *f, bool bin, unsigned int fg)
將資料讀入
Definition: Bitmap.h:381
+
Matrix< Pixel > & matrixGet()
回傳矩陣形式 (non-constant form)
Definition: Bitmap.h:256
+
Pixel pixel(size_t y, size_t x) const
取得 (y, x) 的pixel
Definition: Bitmap.h:212
+
size_t width() const
回傳寬度
Definition: Bitmap.h:160
+
bool write(FILE *f, bool bin, unsigned int fg) const
將資料寫入檔案
Definition: Bitmap.h:362
+
Matrix & copyFrom(Matrix const &m)
copy
Definition: Matrix.h:96
一切物件的Base, 並要求每個物件都要有read, write, create, ... 等功能
Definition: ObjBase.h:15
-
Bitmap & copyFrom(Bitmap const &b)
複製
Definition: Bitmap.h:111
-
void entries(ssize_t rFirst, ssize_t rLast, ssize_t cFirst, ssize_t cLast, Entry const &e)
Change the entries from rFirst x cFirst to rLast x cLast.
Definition: Matrix.h:221
-
size_t size() const
Return number of rows times number of cols.
Definition: Matrix.h:133
-
size_t size() const
回傳高度乘以寬度
Definition: Bitmap.h:160
-
Pixel pixel(size_t y, size_t x, Pixel const &p)
修改 (y, x) 的pixel
Definition: Bitmap.h:217
-
~Bitmap()
destructor
Definition: Bitmap.h:105
-
Bitmap gradianceX(double radiusY, double radiusX) const
回傳對x偏微分
Definition: Bitmap.h:291
-
size_t width(size_t w2, Pixel const &p)
修改寬度
Definition: Bitmap.h:182
+
Bitmap & copyFrom(Bitmap const &b)
複製
Definition: Bitmap.h:118
+
void entries(ssize_t rFirst, ssize_t rLast, ssize_t cFirst, ssize_t cLast, Entry const &e)
Change the entries from rFirst x cFirst to rLast x cLast.
Definition: Matrix.h:236
+
size_t size() const
Return number of rows times number of cols.
Definition: Matrix.h:138
+
size_t size() const
回傳高度乘以寬度
Definition: Bitmap.h:167
+
void clear()
free the memory
Definition: Matrix.h:203
+
Pixel pixel(size_t y, size_t x, Pixel const &p)
修改 (y, x) 的pixel
Definition: Bitmap.h:224
+
~Bitmap()
destructor
Definition: Bitmap.h:112
+
Bitmap gradianceX(double radiusY, double radiusX) const
回傳對x偏微分
Definition: Bitmap.h:298
+
size_t width(size_t w2, Pixel const &p)
修改寬度
Definition: Bitmap.h:189
+
Bitmap(Matrix< Pixel > const &b)
constructor, copy data from a matrix
Definition: Bitmap.h:96
-
void reset(size_t h, size_t w, Pixel const &p)
全部重設
Definition: Bitmap.h:132
-
std::string type() const
回傳class的type
Definition: Bitmap.h:422
-
Bitmap & referenceFrom(Bitmap const &b)
reference
Definition: Bitmap.h:119
-
Entry entry(size_t r, size_t c) const
Access the entry at r x c.
Definition: Matrix.h:196
-
Bitmap< Pixel > & gradiancedX(double radiusY, double radiusX)
把自己對x偏微分
Definition: Bitmap.h:303
-
size_t height(size_t h2, Pixel const &p)
修改高度
Definition: Bitmap.h:171
-
void reset(size_t r, size_t c, Entry const &e)
reset the size of the matrix to r x c with entry all be e
Definition: Matrix.h:110
-
Bitmap & gaussianed(double radiusY, double radiusX)
把自己高斯模糊
Definition: Bitmap.h:280
-
ObjBase * create() const
new一個自己
Definition: Bitmap.h:393
+
void reset(size_t h, size_t w, Pixel const &p)
全部重設
Definition: Bitmap.h:139
+
std::string type() const
回傳class的type
Definition: Bitmap.h:429
+
Bitmap & referenceFrom(Bitmap const &b)
reference
Definition: Bitmap.h:126
+
Entry entry(size_t r, size_t c) const
Access the entry at r x c.
Definition: Matrix.h:211
+
Bitmap< Pixel > & gradiancedX(double radiusY, double radiusX)
把自己對x偏微分
Definition: Bitmap.h:310
+
size_t height(size_t h2, Pixel const &p)
修改高度
Definition: Bitmap.h:178
+
void reset(size_t r, size_t c, Entry const &e)
reset the size of the matrix to r x c with entry all be e
Definition: Matrix.h:115
+
Bitmap & gaussianed(double radiusY, double radiusX)
把自己高斯模糊
Definition: Bitmap.h:287
+
ObjBase * create() const
new一個自己
Definition: Bitmap.h:400
T squ(T const &x)
x*x
Definition: utility.h:67
-
Bitmap< Pixel > & gradiancedY(double radiusY, double radiusX)
把自己對y偏微分
Definition: Bitmap.h:326
+
Bitmap< Pixel > & gradiancedY(double radiusY, double radiusX)
把自己對y偏微分
Definition: Bitmap.h:333
@@ -356,7 +362,7 @@ $(document).ready(function(){initNavTree('Bitmap_8h_source.html','');});