มี Assignment Digital Image Processing เลยหาเครื่องมือที่จะเอามาใช้หน่อย ตอนแรกกะจะใช้ opencv แต่ลองเอา wrapper ที่ทำให้ python ใช้ opencv มาลองดีกว่า เพื่อความมันส์(อยากเขียน python เป็น)
เขียนไปเขียนมา ทำไปเกือบเสร็จ (python + opencv) เจอปัญหาเรื่อง datatype นิดหน่อย (ไม่รู้ว่ามัน cast ไปเป็น pointer to aligned image data ยังไง)
ผสานกับเวลาที่เหลือน้อย จึงคิดว่า กลับไปเขียน opencv + c ให้เสร็จก่อนดีกว่า ที่เขียนใน python มันเพี้ยนๆ
พอเขียน opencv + c เสร็จ (แต่ไม่เรียบร้อย)
แต่รู้สึกว่า ในการทำงานหลายๆส่วนกับ opencv นั้น ไม่ค่อยเป็นที่พอใจ มันเขียน code เวิ่นเว้อไป เช่นการทำ invert สีของรูปภาพ
// invert the image
for(i=0;i<height;i++) for(j=0;j<width;j++) for(k=0;k<channels;k++)
data[i*step+j*channels+k]=255-data[i*step+j*channels+k];
แต่ในพวก MATLAB มันเขียนแค่ 255 – matrix สี จึงคิดหาโปรแกรมอื่นมาใช้แทน MATLAB เพราะขี้เกียจเข้า windows เพื่อไปใช้ MATLAB และ อีกอย่างมันไม่ฟรีด้วย
จึงได้ข้อมูลพวก scilab , octave เอ้า ! โหลดมาลองซะหน่อย
และหลังจากนั้นไปอีก…..
ระหว่างรอโหลด Scilab และ Octave นั้น……
ได้ข้อมูลเกี่ยวกับ python + Image module และ numpy เข้ามา พอดี จึงลองเล่นดู(เพราะ มี python อยู่แล้ว)
พอลองเล่นดูแล้ว แล้วรู้สึกว่า ไอ้ python นี่เจ๋งดีแฮะ ถ้าเขียนเป็นน่าจะเอาไปทำอะไรได้เยอะแยะ
ก็ตกลงปลงใจใช้ python 2.4 + Imageing 1.1.6 และ numpy (numpy น่าจะ 1.40 )
แต่เส้นทางนี้ก็ไม่ได้โรยด้วยกลีบกุหลาบน่ะสิ เพราะ เจอปัญหาที่ต้องทำให้ setup ใหม่หลายรอบ
ดังนี้
เริ่มต้นกับ Python 2.4
แต่แรกใช้ python น่าจะ 2.4 หรือต่ำกว่านั้น ลง numpy ได้ ลง Imaging 1.1.6 ได้่ แต่ลง scipy ไม่ได้ แถม numpy ยังเป็น version 1.0 (แถวๆนั้น มันไม่ใหม่) เลยกระแดะ อยากลองใช้ python version ใหม่ๆ จึงต้องแยกทางกับ python 2.4
พบรักกับ Python 2.6
จึงไป download python 2.6 มาติดตั้ง การทำงานไม่ราบรื่น เพราะว่า ลง Imaging 1.1.6 ไม่ได้ จึงต้องลองลง Imaging 1.1.5 มีปัญหาอย่างแรง เพราะว่า ไม่มี method Image.show() ให้ใช้ เลยต้องจำใจเลิกรากับ Python 2.6 T_T
รักครั้งใหม่กับ Python 2.5
เริ่มต้นรักใหม่ด้วยการ ไปdownload python 2.5 มาลง ก็ลง numpy กับ Imageing 1.1.6 ได้ใช้ im.show() ได้ เรีบนรู้กันไปนิดเดียว ยังไม่ทะเลาะกัน
Tags: image, matlab, numpy, opencv, python, พบรัก


