มาทดสอบ library ที่เราคอมไพล์แล้วดูครับ
ตอนนี้เราก็จะมีโฟลเดอร์ C:\OpenCV ที่เก็บ library ที่ต้องใช้ในการเขียนโปรแกรมของเรา (bin,include,lib,doc) ให้เซ็ต path ของ windows ไปที่ C:\OpenCV\bin ด้วยครับ
เปิด Dev-C++ เลยครับ
เลือกเมนู Tools / Compiler Options แล้วเพิ่มในส่วนของ linker ตามนี้ครับ
-lopencv_core231 -lopencv_highgui231 -lopencv_imgproc231 -lopencv_features2d231 -lopencv_calib3d231 บางตัวก็อาจจะไม่ได้ใช้สำหรับทุกโปรแกรม แต่ก็ไม่เป็นไรครับ มีเกินไว้ก่อนก็ได้
จากนั้นก็กำหนดแทบ Directories ต่างๆตามนี้ครับ
-Binaries
C:\mingw\bin
C:\OpenCV\bin
-Libraries
C:\mingw\lib
C:\OpenCV\lib
-C++ Includes
C:\mingw\include
C:\OpenCV\include
ตอนนี้เราก็พร้อมที่จะเขียนโปรแกรมทดสอบแล้วครับ
สมมติว่ามีไฟล์ lenag.jpg อยู่ที่เดียวกับตัวไฟล์ผลลัพธ์ของโปรแกรมนะครับ
ผลลัพธ์ที่น่าจะได้
เอกสารอ้างอิง
http://opencv.itseez.com/doc/tutorials/introduction/display_image/display_image.html#display-image
Friday, September 30, 2011
OpenCV 2.31 & MinGW (Dev-C++) Part 2
เมื่อจะคอมไพล์ source code เอง ก็ต้องมีเครื่องมือให้พร้อมครับ
เดิมทีผมคิดว่าคงเป็นการยาก ไม่ทำดีกว่า แต่ได้อ่านในคู่มือ http://opencv.willowgarage.com/wiki/MinGW ก็น่าจะทำได้
โปรแกรมที่ต้องการนะครับ
จากนั้น กำหนดค่าของสองช่องด้านบน
ช่องแรก browse ไปที่ source code ของ OpenCV เช่น C:\OpenCV231Source
ช่องสอง browse ไปที่โฟลเดอร์ใหม่ที่ต้องการเก็บผลลัพธ์ของการคอมไพล์ เช่น C:\OpenCV231
จากนั้นคลิกปุ่ม Configure ครับ เลือกตามรูป
จากนั้นก็ browse เลือกคอมไพเลอร์ครับ
แล้วก็ finish
ในขณะนี้โปรแกรมก็จะทำการตรวจสอบ เช็คค่าพารามิเตอร์ต่างๆครับ
ถ้าเสร็จแล้ว ในช่องข้อความล่างสุดแสดงคำว่า configuring done ก็เป็นอันใช้ได้ครับ จะเกิดแถบสีแดงๆตรงช่องกลางเต็มไปหมด
ในคู่มือบอกว่า ให้กำหนดค่าเพิ่มหนึ่งค่าคือ CMAKE_BUILD_TYPE ให้เป็น Releaseตามรูปครับ
จากนั้นก็กด Configure อีกครั้ง แถบสีแดงก็จะหายไป
ให้กด Generate ถ้าเสร็จแล้ว ปิด CMake ได้
ไปที่ dos prompt แล้ว เข้าไปที่ไดเรกทอรีผลลัพธ์ เช่น C:\OpenCV231
พิมพ์ mingw32-make แล้วรอๆๆๆๆๆ นานอยู่ครับ
ความจริงถึงขั้นตอนนี้ก็เสร็จแล้วครับ แต่ถ้าอยากได้แค่ตัวหลักๆสำหรับการใช้งาน ให้ใช้ dos prompt ที่ไดเรกทอรีเดิม แล้วพิมพ์ mingw32-make install
จากนั้น จะพบว่าในไดเรกทอรีย่อย install จะมีไฟล์ทุกอย่างพร้อมใช้งานครับ ซึ่งหลักๆก็จะมีไดเรกทอรีย่อย bin, lib, include,doc ซึ่งสามารถแจกจ่ายให้คนที่ไม่ต้องการคอมไพล์เองก็ได้
สมมติว่าเราจะสำเนาทุกๆไฟล์ในไดเรกทอรี install นี้ไปไว้ยัง C:\OpenCV เพื่อใช้งานต่อไปนะครับ
เป็นอันว่าเราได้คอมไพล์และลิงก์ OpenCV สำเร็จ ได้ library ต่างๆที่เราต้องการแล้วครับ
เอกสารอ้างอิง
http://opencv.willowgarage.com/wiki/MinGW
http://www.cmake.org
http://www.mingw.org/
เดิมทีผมคิดว่าคงเป็นการยาก ไม่ทำดีกว่า แต่ได้อ่านในคู่มือ http://opencv.willowgarage.com/wiki/MinGW ก็น่าจะทำได้
โปรแกรมที่ต้องการนะครับ
- MinGW (gcc) ความจริงตัวนี้ก็มีใน Dev-C++ ครับ แต่ว่าเก่าแล้ว เลยไปดาวน์โหลดตัวใหม่กว่ามา มีให้เลือกหลายที่ครับ ผมใช้ http://get.qt.nokia.com/misc/MinGW-gcc440_1.zip เพราะว่าจะลองทดสอบกับ Qt ด้วยภายหลัง สมมติว่าโหลดมาแล้วและก็แตกไว้ที่ C:\mingw นะครับ ให้เซ็ต path ของ windows ไปที่ C:\mingw\bin ด้วยนะครับ
- OpenCV source ก็ได้จากการแตกไฟล์ที่ดาวน์โหลดมาคือ OpenCV-2.3.1-win-superpack.exe ครับ สมมติว่าอยู่ที่ C:\OpenCV231Source
- CMake สำหรับสร้าง makefile เพื่อคอมไพล์ครับ จะช่วยให้คนที่ไม่รู้เรื่องในการคอมไพล์เช่นผมทำงานได้ง่ายขึ้นมาก ดาวน์โหลดที่นี่ครับ http://www.cmake.org/files/v2.8/cmake-2.8.5-win32-x86.zip สมมติว่าแตกไว้ที่ C:\CMake
จากนั้น กำหนดค่าของสองช่องด้านบน
ช่องแรก browse ไปที่ source code ของ OpenCV เช่น C:\OpenCV231Source
ช่องสอง browse ไปที่โฟลเดอร์ใหม่ที่ต้องการเก็บผลลัพธ์ของการคอมไพล์ เช่น C:\OpenCV231
จากนั้นคลิกปุ่ม Configure ครับ เลือกตามรูป
จากนั้นก็ browse เลือกคอมไพเลอร์ครับ
แล้วก็ finish
ในขณะนี้โปรแกรมก็จะทำการตรวจสอบ เช็คค่าพารามิเตอร์ต่างๆครับ
ถ้าเสร็จแล้ว ในช่องข้อความล่างสุดแสดงคำว่า configuring done ก็เป็นอันใช้ได้ครับ จะเกิดแถบสีแดงๆตรงช่องกลางเต็มไปหมด
ในคู่มือบอกว่า ให้กำหนดค่าเพิ่มหนึ่งค่าคือ CMAKE_BUILD_TYPE ให้เป็น Releaseตามรูปครับ
จากนั้นก็กด Configure อีกครั้ง แถบสีแดงก็จะหายไป
ให้กด Generate ถ้าเสร็จแล้ว ปิด CMake ได้
ไปที่ dos prompt แล้ว เข้าไปที่ไดเรกทอรีผลลัพธ์ เช่น C:\OpenCV231
พิมพ์ mingw32-make แล้วรอๆๆๆๆๆ นานอยู่ครับ
ความจริงถึงขั้นตอนนี้ก็เสร็จแล้วครับ แต่ถ้าอยากได้แค่ตัวหลักๆสำหรับการใช้งาน ให้ใช้ dos prompt ที่ไดเรกทอรีเดิม แล้วพิมพ์ mingw32-make install
จากนั้น จะพบว่าในไดเรกทอรีย่อย install จะมีไฟล์ทุกอย่างพร้อมใช้งานครับ ซึ่งหลักๆก็จะมีไดเรกทอรีย่อย bin, lib, include,doc ซึ่งสามารถแจกจ่ายให้คนที่ไม่ต้องการคอมไพล์เองก็ได้
สมมติว่าเราจะสำเนาทุกๆไฟล์ในไดเรกทอรี install นี้ไปไว้ยัง C:\OpenCV เพื่อใช้งานต่อไปนะครับ
เป็นอันว่าเราได้คอมไพล์และลิงก์ OpenCV สำเร็จ ได้ library ต่างๆที่เราต้องการแล้วครับ
เอกสารอ้างอิง
http://opencv.willowgarage.com/wiki/MinGW
http://www.cmake.org
http://www.mingw.org/
OpenCV 2.31 & Mingw (Dev-C++) Part 1
OpenCV เวอร์ชันล่าสุด 2.31 ออกมาได้ระยะหนึ่งแล้วครับ
พอดีว่าผมกลับมาอยากใช้ OpenCV บนวินโดวส์ในช่วงนี้ โดยเฉพาะตัวล่าสุดที่มีฟังก์ชันใหม่ๆที่น่าสนใจ
เลยไปดาวน์โหลดจาก http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.3.1/ มาครับ
ได้ไฟล์ OpenCV-2.3.1-win-superpack.exe มาครับ มีทุกอย่างเลย ทั้ง source code และ binary (ที่คอมไพล์มาแล้ว) แตกไฟล์ได้ 1 GB :(
ในส่วนของ binary มีทั้งของ x86(32 bits) x64 มีทั้งสำหรับ mingw VC9 VC10
สำหรับผมวางแผนว่าจะใช้กับ mingw (Dev-C++) ก็เลยยิ้ม เพราะมีให้ใช้
กำหนดไดเรกทอรีต่างๆเสร็จ คอมไฟล์ผ่าน ดีใจๆ
แต่ ลองรันโค้ดตามตัวอย่างครับ ไม่ผ่าน เด้งออกตลอด
คราวนี้งงเลยครับ นั่งเสิร์ชหาในเน็ตกระหน่ำ ลองกับโปรแกรมตัวอื่นๆก็ยังไม่เวิร์ค
จะเปลี่ยนไปใช้ Visual C++ ก็ยังไม่อยากใช้
หากันอยู่หนึ่่งวันเต็มๆ สุดท้ายตัดสินใจคอมไพล์ source code ใหม่เลยก็แล้วกัน
พอดีว่าผมกลับมาอยากใช้ OpenCV บนวินโดวส์ในช่วงนี้ โดยเฉพาะตัวล่าสุดที่มีฟังก์ชันใหม่ๆที่น่าสนใจ
เลยไปดาวน์โหลดจาก http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.3.1/ มาครับ
ได้ไฟล์ OpenCV-2.3.1-win-superpack.exe มาครับ มีทุกอย่างเลย ทั้ง source code และ binary (ที่คอมไพล์มาแล้ว) แตกไฟล์ได้ 1 GB :(
ในส่วนของ binary มีทั้งของ x86(32 bits) x64 มีทั้งสำหรับ mingw VC9 VC10
สำหรับผมวางแผนว่าจะใช้กับ mingw (Dev-C++) ก็เลยยิ้ม เพราะมีให้ใช้
กำหนดไดเรกทอรีต่างๆเสร็จ คอมไฟล์ผ่าน ดีใจๆ
แต่ ลองรันโค้ดตามตัวอย่างครับ ไม่ผ่าน เด้งออกตลอด
คราวนี้งงเลยครับ นั่งเสิร์ชหาในเน็ตกระหน่ำ ลองกับโปรแกรมตัวอื่นๆก็ยังไม่เวิร์ค
จะเปลี่ยนไปใช้ Visual C++ ก็ยังไม่อยากใช้
หากันอยู่หนึ่่งวันเต็มๆ สุดท้ายตัดสินใจคอมไพล์ source code ใหม่เลยก็แล้วกัน
Subscribe to:
Posts (Atom)