You can subscribe to this list here.
2001 
_{Jan}

_{Feb}

_{Mar}

_{Apr}

_{May}

_{Jun}

_{Jul}

_{Aug}

_{Sep}

_{Oct}
(8) 
_{Nov}
(8) 
_{Dec}
(4) 

2002 
_{Jan}
(53) 
_{Feb}
(15) 
_{Mar}
(51) 
_{Apr}
(54) 
_{May}
(41) 
_{Jun}
(48) 
_{Jul}
(32) 
_{Aug}
(22) 
_{Sep}
(61) 
_{Oct}
(31) 
_{Nov}
(31) 
_{Dec}
(27) 
2003 
_{Jan}
(45) 
_{Feb}
(18) 
_{Mar}
(25) 
_{Apr}
(39) 
_{May}
(34) 
_{Jun}
(20) 
_{Jul}
(13) 
_{Aug}
(16) 
_{Sep}
(18) 
_{Oct}
(14) 
_{Nov}
(17) 
_{Dec}
(13) 
2004 
_{Jan}
(53) 
_{Feb}
(12) 
_{Mar}
(38) 
_{Apr}
(29) 
_{May}
(72) 
_{Jun}
(38) 
_{Jul}
(41) 
_{Aug}
(11) 
_{Sep}
(21) 
_{Oct}
(30) 
_{Nov}
(35) 
_{Dec}
(14) 
2005 
_{Jan}
(66) 
_{Feb}
(14) 
_{Mar}
(24) 
_{Apr}
(50) 
_{May}
(40) 
_{Jun}
(29) 
_{Jul}
(37) 
_{Aug}
(27) 
_{Sep}
(26) 
_{Oct}
(58) 
_{Nov}
(43) 
_{Dec}
(23) 
2006 
_{Jan}
(84) 
_{Feb}
(36) 
_{Mar}
(24) 
_{Apr}
(42) 
_{May}
(20) 
_{Jun}
(41) 
_{Jul}
(40) 
_{Aug}
(42) 
_{Sep}
(23) 
_{Oct}
(38) 
_{Nov}
(31) 
_{Dec}
(28) 
2007 
_{Jan}
(11) 
_{Feb}
(34) 
_{Mar}
(14) 
_{Apr}
(29) 
_{May}
(45) 
_{Jun}
(5) 
_{Jul}
(10) 
_{Aug}
(6) 
_{Sep}
(38) 
_{Oct}
(44) 
_{Nov}
(19) 
_{Dec}
(22) 
2008 
_{Jan}
(37) 
_{Feb}
(24) 
_{Mar}
(29) 
_{Apr}
(14) 
_{May}
(24) 
_{Jun}
(47) 
_{Jul}
(26) 
_{Aug}
(4) 
_{Sep}
(14) 
_{Oct}
(45) 
_{Nov}
(25) 
_{Dec}
(16) 
2009 
_{Jan}
(33) 
_{Feb}
(34) 
_{Mar}
(45) 
_{Apr}
(45) 
_{May}
(30) 
_{Jun}
(47) 
_{Jul}
(37) 
_{Aug}
(19) 
_{Sep}
(15) 
_{Oct}
(16) 
_{Nov}
(24) 
_{Dec}
(31) 
2010 
_{Jan}
(32) 
_{Feb}
(25) 
_{Mar}
(12) 
_{Apr}
(5) 
_{May}
(2) 
_{Jun}
(9) 
_{Jul}
(31) 
_{Aug}
(10) 
_{Sep}
(12) 
_{Oct}
(20) 
_{Nov}
(6) 
_{Dec}
(41) 
2011 
_{Jan}
(23) 
_{Feb}
(8) 
_{Mar}
(41) 
_{Apr}
(8) 
_{May}
(15) 
_{Jun}
(10) 
_{Jul}
(8) 
_{Aug}
(14) 
_{Sep}
(16) 
_{Oct}
(13) 
_{Nov}
(15) 
_{Dec}
(8) 
2012 
_{Jan}
(6) 
_{Feb}
(14) 
_{Mar}
(22) 
_{Apr}
(40) 
_{May}
(27) 
_{Jun}
(18) 
_{Jul}
(2) 
_{Aug}
(6) 
_{Sep}
(10) 
_{Oct}
(32) 
_{Nov}
(5) 
_{Dec}
(2) 
2013 
_{Jan}
(14) 
_{Feb}
(2) 
_{Mar}
(15) 
_{Apr}
(2) 
_{May}
(6) 
_{Jun}
(7) 
_{Jul}
(25) 
_{Aug}
(6) 
_{Sep}
(3) 
_{Oct}

_{Nov}
(8) 
_{Dec}

2014 
_{Jan}
(3) 
_{Feb}
(3) 
_{Mar}
(3) 
_{Apr}

_{May}
(19) 
_{Jun}
(6) 
_{Jul}
(1) 
_{Aug}
(4) 
_{Sep}
(18) 
_{Oct}
(5) 
_{Nov}
(1) 
_{Dec}

S  M  T  W  T  F  S 



1

2

3
(3) 
4
(1) 
5
(2) 
6

7
(7) 
8
(4) 
9
(3) 
10
(1) 
11
(1) 
12

13

14
(6) 
15
(1) 
16
(1) 
17
(2) 
18
(2) 
19

20
(2) 
21

22

23

24

25

26

27
(1) 
28

29

30

31



From: Wouter Klouwen <wouterk@im...>  20080118 13:38:17

Hello all, I'm trying to use a custom type with a vil_image_view, which is a struct of 10 bit components using VXL 1.9 I want to resample this using bilinear interpolation, just like I would with the more conventional types, such as vxl_byte, etc. However, when calling this, I get numerous errors regarding operators, which mostly originate from vil/vil_bilin_interp.h, function double vil_bilin_interp_raw. 1) This seems to convert the pixels into doubles. I understand this may give better results, but seems to break the advantage of templating. 2) From the error message and the syntax it's quite difficult to determine what operators I should define for my struct to work. Can anyone please advise? Currently it's looking as follows: typedef struct TenBitPixel { typedef struct TenBitPixel value_type; union { vxl_uint_32 padding : 2; vxl_uint_32 alpha : 2; }; vxl_uint_32 R : 10; vxl_uint_32 G : 10; vxl_uint_32 B : 10; TenBitPixel() : R(0), G(0), B(0) { } TenBitPixel(double) : R(0), G(0), B(0) { } TenBitPixel(vxl_uint_32 r, vxl_uint_32 g, vxl_uint_32 b) : R(r), G(g), B(b) { } const TenBitPixel *operator(const TenBitPixel *rhs) { return (const TenBitPixel *)((const vxl_int_32 *)this  (const vxl_int_32 *)rhs); } TenBitPixel operator(const TenBitPixel rhs) { return TenBitPixel(R  rhs.R, G  rhs.G, B  rhs.B); } TenBitPixel operator+(const TenBitPixel rhs) { return TenBitPixel(R + rhs.R, G + rhs.G, B + rhs.B); } } TenBitPixel; Error messages as follows: ../VXL/core/vil/vil_bilin_interp.h:69: error: cannot convert ‘const TenBitPixel’ to ‘double’ in return ../VXL/core/vil/vil_bilin_interp.h:70: error: passing ‘const TenBitPixel’ as ‘this’ argument of ‘TenBitPixel TenBitPixel::operator(const TenBitPixel&)’ discards qualifiers ../VXL/core/vil/vil_bilin_interp.h:70: error: no match for ‘operator*’ in ‘(((const TenBitPixel*)(((long unsigned int)ystep) * 8ul)) + pix1)>TenBitPixel::operator(((const TenBitPixel&)pix1)) * normy’ ../VXL/core/vil/vil_bilin_interp.h:71: error: no match for ‘operator*’ in ‘(((const TenBitPixel*)(((long unsigned int)xstep) * 8ul)) + pix1)>EVIL::TenBitPixel::operator(((const TenBitPixel&)pix1)) * normx’ ../VXL/core/vil/vil_bilin_interp.h:73: error: no match for ‘operator*’ in ‘(((const TenBitPixel*)(((long unsigned int)ystep) * 8ul)) + pix1)>TenBitPixel::operator(((const TenBitPixel&)pix1)) * normy’ ../VXL/core/vil/vil_bilin_interp.h:74: error: no match for ‘operator*’ in ‘(((const TenBitPixel*)(((long unsigned int)(xstep + ystep)) * 8ul)) + pix1)>TenBitPixel::operator(((const TenBitPixel&)(((const TenBitPixel*)(((long unsigned int)xstep) * 8ul)) + pix1))) * normy’ Offending lines are as follows, starting with 69, ending in 74: if (normx == 0 && normy == 0) return pix1[0]; if (normx == 0) return pix1[0]+(pix1[ystep]pix1[0])*normy; if (normy == 0) return pix1[0]+(pix1[xstep]pix1[0])*normx; double i1 = pix1[0 ]+(pix1[ ystep]pix1[0 ])*normy; double i2 = pix1[xstep]+(pix1[xstep+ystep]pix1[xstep])*normy;  Regards Wouter Klouwen Software Engineer, UN*X Systems Administrator & ... Imagineer Systems Ltd  40 Occam Rd, Surrey Research Park http://www.imagineersystems.com/  Guildford, GU27YG, UK 
From: Paulette Lieby <Paulette.L<ieby@rs...>  20080118 00:27:18

OS: debian VXL: CVS Nov 2007 compiler: gcc Dear all, It looks like there is a pb with bignum dividion. I have verified the output with magma (computational algebra package). Any other software will do. Let's suppose I want to compute (n choose k). This is the code I am using : vnl_bignum fact(vnl_bignum n) { if (n > 1) return n * fact(n1); return vnl_bignum(1); } vnl_bignum C(vnl_bignum n, vnl_bignum k) // (n choose k) { vnl_bignum CC(1); if (n == k  k == 0) return CC; /* speed up */ else { for (vnl_bignum i(n); i >= n  k + 1; i) CC = CC * i; vcl_cout << "\nN " << CC << "\n";); vcl_cout << "fact(k) " << fact(k) << "\n";); CC = CC / fact(k); vcl_cout << "\nCC " << CC << "\n";); return CC; } } So, (n choose k) can be written as N / D where N = CC *= i for i = nk+1 ... n and D = fact(k) Let n = 100, k = 44. One verifies that computation of N and D is correct: N 131260760632562500136146347534839927958052506820465444563169450468678041600000000000 fact(k) 2658271574788448768043625811014615890319638528000000000 CC 48656022762127140676080092503 but that the result (CC) is not. In magma (or anything suitable), we have: > n := 100; k := 44; > N := 1; > for i := nk+1 to n do for> N *:= i; for> end for; > N; 131260760632562500136146347534839927958052506820465444563169450468678041600000000000 > Factorial(k); 2658271574788448768043625811014615890319638528000000000 > N / Factorial(k); 49378235797073715747364762200 which is equivalent to saying > Binomial(n, k); 49378235797073715747364762200 In the meantine, if we implement (n choose k) as follows, we get the right answer: vnl_bignum C(vnl_bignum n, vnl_bignum k) // (n choose k) { vnl_bignum CC(1); if (n == k  k == 0) return CC; /* speed up */ else { for (vnl_bignum i(n); i >= n  k + 1; i) CC *= i; IF_DEB(vcl_cout << "\nN " << CC << "\n";); for (vnl_bignum i(k); i >= 1; i) CC /= i; IF_DEB(vcl_cout << "\nCC " << CC << "\n";); return CC; } } N 131260760632562500136146347534839927958052506820465444563169450468678041600000000000 CC 49378235797073715747364762200 That is, instead of divide by a bignum, we actually divide by an int. I am sorry, I don't have the time to look into the inplementation of divide, but I thought I should notify this. Thanks! Paulette.  ============================== Paulette Lieby NICTA Tower A 7 London Circuit Canberra ACT 2601 T: +61 2 6267 6232 F: +61 2 6267 6210 