30 พฤศจิกายน 2552

ใช้งาน Processing กับ OpenCV

ใช้งาน Processing กับ OpenCV


    พี่หนึ่งได้แนะนำภาษา Processing มาหลายสัปดาห์วันนี้ได้มีโอกาสลองซักที


สิ่งที่ต้องมี




  1. Processing 1.0


  2. OpenCV 1.0 รุ่นอื่นที่ใหม่กว่าใช้ไม่ได้ลองแล้ว


  3. OpenCV for Processing/Java
  4. ไม่จำเป็น OpenCV Processing examples

เสร็จแล้วติดตั้งตามขั้นตอนในหน้านี้เลยครับ 
  1. ติดตั้ง OpenCV1.0 ก่อน
    ระหว่างลงอย่าลืม Check ถูกที่ add PATH
  2. Copy OpenCv for Processing ไปไว้ที่ โฟลเดอร์ของ Processing 

    ต่อไปเป็นการทดลองใช้งาน กล้องเว็บแคมจาก OpenCV 

    //ที่อยู่ของ OpenCv ที่เรา Copy ไฟไว้ที่ Processing\library\Opencv
    import hypermedia.video.*;
    OpenCV opencv;

    // code ที่จะให้ทำงานครั้งเดียว
    void setup()
    {
      //ขนาดหน้า
      size(320,240);
      
      //สร้าง ออบเจค
      opencv = new OpenCV(this);
      
      // จับภาพมาขนาด 320,240
      opencv.capture(width, height); 
    }

    public void stop()
    {
      opencv.stop();
      super.stop();
    }

    void draw()
    {
      // เอารูปมา 1 Frame
      opencv.read();
      
      // แสดงภาพ
      image( opencv.image(),0,0);
      
      //
      
    }








26 พฤศจิกายน 2552

มุมในการติดตั้งกล้องและกระจก บน pan/tilt

มุมในการติดตั้งกล้องและกระจก บน pan/tilt

ผมได้พยายามออกแบบ โปรเจ็กเตอร์เพื่อฉายไปได้ทั่วห้อง 
และติดตั้งกล้อง ติดตามภาพที่ฉายไปด้วยเพื่อใช้ คาริเบต และ โต้ตอบกับผู้ใช้
แต่จุดประสงค์หลักต้องการให้ทั้งสองอย่างอยู่บน Pan/Tilt ตัวเดียวกัน
จากการศึกษาด้วย The Geometer's Sketchpad:GSP ทำให้เห็นว่า จุดหมุนมันจะอยู่คนละจุดกัน
ทำให้เราไม่สามารถวางไว้บน Pan/ุTilt ตัวเดียวกันได้
ซึ่งจากการ Survey ก็เองก็ยังไม่เห็น โปรเจ็คไหนใช้ Pan/Tilt ตัวเดียว
มาดูผลการศึกษากัน

1. กระจกทำมุมตกกระทบกระจก 60 องศา ฉายภาพมุมสูง

2. กระจกทำมุมตกกระทบกระจก 50 องศา ระดับสายตา สำหรับท่ายืน

3. กระจกทำมุมตกกระทบกระจก 40 องศา ระดับสายตา สำหรับท่านั่ง

4. กระจกทำมุมตกกระทบกระจก 30 องศา ฉายภาพบนพื้นห้อง

5. กระจกทำมุมตกกระทบกระจก 25 องศา ฉายภาพบนพื้นห้อง

6. กระจกทำมุมตกกระทบกระจก 20 องศา มุมแคบที่สุดที่ ฉายภาพบนพื้นห้อง

จะเห็นได้ว่าแกนของ กระจก กับแกนของกล้อง ไม่ได้มีความสัมพันธ์กันในการหมุนมุึมแบบขนานกันไป
ทำให้ต้องเพิ่ม Pan/Tilt เข้าไปอีก 1 ตัว 
หรืออีกวิธีคือการติดตั้ง Projector ลงบน Pan/Tilt โดยตรงไม่ต้องฉายผ่านกระจก แต่ต้องออกแบบ
เรื่องการเก็บสายไฟเพิ่มขั้นไม่ให้มีผลกับการหมุน



24 พฤศจิกายน 2552

เจอะลึกการ Implement Rubik ด้วย Array 3 มิติของ Cube

เจอะลึกการ Implement Rubik ด้วย Array 3 มิติของ Cube 

Cube 1 ลูกคือ สี่เหลี่ยมเล็กๆ มี 6 หน้าหน้าที่อยู่ใน Rubik จะกำหนดให้เป็นสีดำ 
    ส่วนหน้าที่เหลือจะเป็น 

enum Color
{
blue,
red,
green,
orange,
yello,
white,
black
};

ภายใน Rubik มีทั้งหมด 3 X 3 X 3 ลูก



Rubik คือการเอา Cube มาจัดเรียงในลักษณะ 3 แถว 3 คอลัมน์ 3 สูง  
       จะมีหน้าที่บิดได้ในผิวนอกทั้งหมด 6 หน้า สาเหตุที่ไม่ีคิดด้านในเพราะสามารถแทนได้ด้วยการบิดหน้าข้างนอก 2 ครั้ง
enum Side
{ front, //+x
back, //-x
right,  //+y
left, //-y
top, //+z
down //-z
};


ส่วนในการบิด จะใช้ rotation matrix มาคิด ซึ่งต้องอธิบายเป็นรูปถึงจะเห็นภาพดังนี้


ตัวอย่างการคำนวณตามสูตรโดยการบิดด้านบน


รวมเว็บที่ใช้แก้ปัญหา Rubik

รวมเว็บที่ใช้แก้ปัญหา Rubik
ต้องขอขอบคุณ ป้อ สาธิต ด้วยที่ให้คำแนะนำ
http://www.wrongway.org/cube/solve.html แสดงขึ้นตอนที่เป็นธรรมชาติเหมาะกับคนเล่นมากๆ
แต่ยังไม่เหมาะในการนำมาใช้กับหุ่นยนต์

มีการบิด layer ตรงกลางด้วยทำให้ slove ได้เร็วแต่หุ่นยนต์ที่ทำมันบิดตรงกลางไม่ได้


เว็บรวมcode อันนี้เป็น library ของ C++ เหมาะมากที่จะเอามาเขียน หุ่นยนต์ generate path ที่หุ่นพอจะบิดได้
แต่path ค่อนข้างมาก ประมาณ 100 ครั้ง พอคิดถึงการหมุนลูกเพื่อให้ตรงกับด้านที่จะบิด น่าจะประมาณ 250 ครั้งได้
code ที่แกะกำใช้ง่ายมาก แทบไม่ต้องแก้ไขเลย เหลือแค่เพิ่มเท่านั้นเอง ดูได้ในไฟล์ main.cpp > Method SendSolution()
ตรงนี้ลองพิสูจน์ดูแล้วว่าจะไม่มีการสร้าง Path ที่หมุนตรงกลาง เพราะหุ่นยนต์ทำไม้ได้เกิดขึ้น

ยังมีอีกเว็บนึงที่ทำได้ดีมากมีเรื่องการ Vision เรียบร้อยแต่แกะ code ยาก เพราะ GUI มันไฮโซ เขียนด้วย Java
จำเว็บไม่ได้แต่โหลดไฟล์ที่นี้



Speech Recognitionง่ายๆ สำหรับ RoboBu...

Speech Recognitionง่ายๆ สำหรับ RoboBuilder ด้วย Microsoft Robotics Developer Studio
จาก ควบคุม RoboBuilder ด้วย Microsoft Robotics Developer Studio เราควบคุม RoboBuilder 
ได้จากรีโมตคอนโทรลในคอมของเราแล้ว ในบนความนี้จะใช้เสียงสั่งการ
ซอฟตแวร์ที่ใช้
  1. Microsoft Speech SDK 5.1
  2. แมนนวล ต้องโหลดที่ robosavvy.com download มีอยู่ 200 กว่าหน้า แต่ข้างบนไม่เกี่ยวอ่านหน้า 191 ได้เลย
ตัวอย่างโปรแกรม source code  
1. เริ่มด้วยการใช้ Service SpeechRecognizerGui แล้ว run หรือ F5
ตัวนี้จะเป็นหน้าเว็บให้เราเพิ่มคำศัพท์ ในที่นี้ยังใช้ภาษาไทยไม่ได้ แต่พอทำเป็นภาษาคาราโอแกะแก้ขัดไปก่อนได้
การเข้ามาแก้คำศัพท์ให้เปิด Internet Explorer ไปที่ http://localhost:50000/speechrecognizergui
แล้วเลื่อนลงมาด้านล่าง 
จะเห็นหน้าจอให้เราเพิ่มคำศัพท์
คลิก + แล้วใส่คำศัพท์เช่น "Hello" แล้วกด save

2.เพิ่ม service SpeechRecognizer แล้วลาก Notification แล้วเลื่อก
From: SpeechRecognized
To: Condition

3.เพื่ม IF ตามคำสั่งที่เรากรอกไว้่ในดิกชันนารี

4. ลากเส้นต่อไปตามรหัสคำสั่งเพื่อสั่ง RoboBuilderBick เสร็จเรียบร้อย run ได้เลย


07 พฤศจิกายน 2552

ทริป เชียงใหม่ ชมดอกไม้เหมือนหนาวลอดอ...

http://thai.tourismthailand.org/interesting-article/content-877.htmlทริปเชียงใหม่ "เที่ยวดอยสูงท้าลมหนาวแล้วหาวก่อนดูทางช้างเผือก"
Update
1.จองรถเรียนร้อย ออกเดินทาง วันศุกร์ที่ 4 ทุ่มครึ่ง กลับ วันที่ 7 สามทุ่ม
2. จองที่พักเรียบร้อย วันแรก นอนซิกตี้เฮาส์ ใกล้ไนท์บาร์ซา คืนที่สองนอนเต้นท์ที่ห้วยน้ำดัง
ของที่ต้องเตรียมไ้ป
1. เสื้อกันหนาว
2. ถุงนอน คืนที่สองนอนเต้นท์ไม่มีเครื่องนอนให้ครับ 
    ***ใครไม่มีจะไปซื้อที่เชียงใหม่ หรือ ขนไปตั้งแต่กรุงเทพเลยก็ได้ 

กำหนดการ Final แล้ว
เวลารายการราคา(ประมาณ)เพิ่มเติม
วันศุกร์ 19.30 น.ออกเดินทางจากหมอชิตไปเชียงใหม่403http://203.146.151.20/aboutus/index.php
ไม่มีเรียน DSP ครับ อ.ยกเลิกให้
วันเสาร์ 7.00 น.ร้านโจ๊กสมเพชร30http://www.cmlifes.com/เรื่องกิน-กลางวัน/โจ๊กสมเพชร.html


นมัสการครูบาศรีวิชัย นักบุญแห่งล้านนาไทยค่าดอกไม้ 20 ตามจิตศรัทธาhttp://www.lannaworld.com/person/svchai.htm

พระตำหนักภูพิงค์ฯ20http://teawchiangmai.com/chiangmaiboard/index.php?topic=47.0
ดอกไม่สวย วิวมุมสูง เมฆหนา ากุระเมืองไทย


ดูดอกซากุระ เมืองไทย
http://travel.tlcthai.com/1179
ดอกสีชมพูสวนสะดุดตา


หมู่บ้านม้งฟรี การแสดง พิพิธภัณฑ์ตามอยากจ่ายดอกฟิ่น การแสดง วิถีชีวิตม้ง
http://www.oknation.net/blog/korkanok/2009/01/05/entry-1

         เที่ยงวัดพระธาตุดอยสุเทพ + พักทานข้าวค่าข้าวจ่ายเองไหว้พระธาตุคู่บ้านคู่เมืองเชียงใหม่ พระธาตุประจำคนเกิดปีมะแม
http://th.wikipedia.org/wiki/วัดพระธาตุดอยสุเทพราชวรวิหาร

          บ่าย 2แวะชิมโยเกิร์ต ไทย-เดนมาร์กถ้วยละ 15 ทำจากนมสดๆ มีไอติมด้วย
http://webboard.tourthai.com/index.php?topic=16878.msg102014

          
เที่ยวสวนสัตว์เชียงใหม่ + อควอเรี่ยม300 http://teawchiangmai.com/chiangmaiboard/index.php?topic=1269.0

http://www.chiangmaizoo.com/
อุโมงค์ใต้น้ำยาวที่สุดในโลก
         เย็นเด่นเลี้ยงมื้อค่ำ กินไม่อั้น120บ้านเด่น อยู่สันทรายเชียงใหม่ http://th.wikipedia.org/wiki/อำเภอสันทราย 


งานราชพฤกษ์รวมใจภักดิ์รักพ่อหลวง-พลุ 9 ชุด ชุดละ 999 
http://74.125.153.132/search?q=cache:Lz_SjB6JMrQJ:thai.tourismthailand.org/festival-event/grand-content-7011.html+http://thai.tourismthailand.org/festival-event/grand-content-7011.html&cd=1&hl=th&ct=clnk&gl=th&client=firefox-a

ถนนคนเดิน(ถนนวัวลาย)แล้วแต่จะซื้อhttp://www.pantip.com/cafe/blueplanet/topic/E3108209/E3108209.html


เข้าที่พัก ซิกตี้เฮาส์250/ 2 คน http://www.hong-pak.com/www.php?web=sixtyhouse〈=th&p=index

วันอาทิตย์ 7.00ทานข้าวเช้า + ซื้อของทำอาหารเย็น
ตลาดประตูเชียงใหม่

http://www.smartmedia.co.th/service/portfolio.php?do=show&cat=4&id=104


ฟาร์มงูแม่สา + X Center 
http://www.chiangmai-xcentre.com/ กระโดดบันจี้ paint ball บอลกลิ้งกลางน้ำ

http://www.moohin.com/035/035m020.shtml ฟาร์มงูแม่สา

น้ำตกแม่สา + พักทานข้าว
http://www.thai-tour.com/thai-tour/North/chiangmai/data/pic_maesafalls.htm
เป็นน้ำตกมี 8 ชั้น แวะกินไก่ย่างส้มตำ ชมน้ำตกไป ลงไปเล่นก็ได้

บ่ายปางช้างแม่สา120http://www.maesaelephantcamp.com/th/index.html
ดูช้างแสดง การเลี้ยงช้าง ช้างวาดรูป World Record Picture


ห้วยน้ำดัง + ทำอาหารกินเอง
เสริมความสามัคคีด้วยการทำอาหารกินกันเอง
http://www.dnp.go.th/parkreserve/asp/style1/default.asp?npid=150&lg=1

นอนฟังเสียงน้ำ รอทางช้างเผือก 
http://www.moohin.com/trips/chiangmai/soju/


วันจันทร์ รอดูพระอาทิตย์ขึ้น 5.00ดูแสงทองส่องทาง
ดูพระอาทิตย์ เล่นทะเลหมอก
http://www.pantip.com/cafe/blueplanet/topic/E4933851/E4933851.html 

ปาย
http://www.thai-tour.com/thai-tour/north/maehongson/data/place/pai/index.html
http://thai.tourismthailand.org/interesting-article/content-877.html


พระธาตุแม่เย็น
ชมปายจากมุมสูง ได้ทั่วทั้งอำเภอเลย
http://www.thai-tour.com/thai-tour/north/maehongson/data/pic_chedi-maeyen.htm


ชมตัวอำเภอปาย
คิดถึงหนังเรืองรักจังได้เลย 
ทั้งร้านโปสการ์ดของพอลลา ร้านกาแฟที่ฟิลม์นั่งกิน
http://www.paiduaykan.com/76_province/north/maehongson/pai.html
http://www.oknation.net/blog/print.php?id=147686


สะพานประวัติศาสตร์ท่าปาย
เป็นสะพานเหล็ก สมัยสงครามโลกครั้งที่สอง
http://thai.tourismthailand.org/interesting-article/content-877.html


หมู่บ้านจีนยูนาน ปาย
แวะพาไปเที่ยวเมืองจีนซักหน่อย ชม บ้านดิน ชิมชา
http://www.moohin.com/trips/maehongson/jeamunan/

       เที่ยงทานขาหมูยูนาน
ร้านนี้ไม่ได้ขายเบียร์นะ
แต่อาหารพื้นเมืองอร่อยดี

       บ่ายอาบน้ำ + ชุดเปลี่ยน 80
http://www.moohin.com/035/035m025.shtml
ไม่ได้เห็นเป็นแค่บ่อๆ แต่เป็นลำธารน้ำตกที่เป็นน้ำร้อนไหลลงมาจากยอดเขาพลาดไปได้ต้องอาบน้ำร้อน อาบน้ำ่ก่อนกลับกรุงเทพครับ

        กลับเชียงใหม่

       เย็นหรือหัวค่ำซื้อของฝากที่กาดหลวง
http://oaenoys.multiply.com/photos/album/190
ซื้อของฝากประเภทอาหาร

       21.00 กลับกรุงเทพ518


แผนที่วันที่เสาร์ - อาทิตย์

ค่าใช้จ่าย คร่าวๆ
ค่ารถทัวร์ไป-กลับ กรุงเทพ-เชียงใหม่ 1200
ค่ารถตู้นำเที่ยว + เครื่องครัว 550 ต่อคน รับไป 11 คน
ค่าที่พัก 400
ค่าตั๋วเที่ยวที่ต่างๆ  500
รวมประมาณ  2700 ** ยังไม่ได้รวมค่ากิน