Month: มกราคม 2010
Community-generated Traffic Information System
- by Nat
ข้อมูลหาย ขออัพอีกครั้ง
Community-generated Traffic Information System
http://www.slideshare.net/inatialz/communitygenerated-traffic-information-system
Related Blogs
- » Learning to use CSS and DIV Tags for Columns in Dreamweaver
- Behind the Video: Alicia Keys – 'Un-thinkable (I'm Ready)'
- Telos™ Stacking Chair, 12? Seat Height | ProductCheckpoint.com
- Aries 202007 Black Side Step Bar | Center Bestsellers cheaper from …
- The width of « best-self-help.info
- Airsoft BBs .20 gram 4000 round bag SRC Brand | Airsoft Gun Store
- Sonnd › <a href="http://www.mondaynote.com/2010/05/02/balkanizing …
- Why choose a comfortable height toilets? | Solar Comfort Heater
- Deewana (Full Song) By Param D [HQ]
- HTML Pro Series Tutorial – #1 Working With DIV & Setting Up | HTML …
- Series C:Half Height Door Kit | Home Computer Desk Furniture …
- Yoko height increasing device? | Grow Taller Free
- Nana Plaza Bangkok – Thailand Shock Value
- Advance band div coding video 2 | geeksonsteroids.us
- OPINION: Dorothy Height's Life Is An Example To All Young Women …
- Tillers » Blog Archive » poulan pro front tine tiller – 24in. till …
- Cialis brand name « Erectile Dysfunction
- WordPress width issues by net2ride | Web Freelancing – Website …
- Valley View Online™ » Home of the Spartans » Home of the Spartans …
- A 15kg object is released from a height of 90cm above its lowest …
[note] curly braces และ เพื่อนๆ
- by Nat

From the top: square brackets, curly brackets (braces),
parentheses, angle brackets, and (in red) inequality signs
จาก http://en.wikipedia.org/wiki/Braces_%28punctuation%29#Braces
Related Blogs
- Behind the Video: Alicia Keys – 'Un-thinkable (I'm Ready)'
- Explaining Inequality Trends: Pretty Simple? | Progressive Fix
- It's IMG next – Mumbai Mirror | Indian Premier League
- Investment information including spread betting.
- Airsoft BBs .20 gram 4000 round bag SRC Brand | Airsoft Gun Store
- Woods Recruiting › Bay Area local scoreboard for May 9
- Sonnd › <a href="http://www.mondaynote.com/2010/05/02/balkanizing …
- Why choose a comfortable height toilets? | Solar Comfort Heater
- Professional Video Camera » Blog Archive » Lowest Price .5x Wide …
- Series C:Half Height Door Kit | Home Computer Desk Furniture …
- Yoko height increasing device? | Grow Taller Free
- Cricket Blog – IMG denies role in ECB allegations
- Household Activities » Blog Archive » Power One Size 312 Zinc Air …
- OPINION: Dorothy Height's Life Is An Example To All Young Women …
- Tillers » Blog Archive » poulan pro front tine tiller – 24in. till …
- WordPress width issues by net2ride | Web Freelancing – Website …
- Isaiah Murphy | why inequality education
- IMG Can Sue England Board Chief for Claims About Modi | Vamban News
- A 15kg object is released from a height of 90cm above its lowest …
- 15 Mind-Blowing Facts About Wealth And Inequality In America | The …
ลองเล่น python + Imaging + numpy
- by Nat
มี 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[istep+jchannels+k]=255-data[istep+jchannels+k];แต่ในพวก MATLAB มันเขียนแค่ 255 – matrix สี จึงคิดหาโปรแกรมอื่นมาใช้แทน MATLAB เพราะขี้เกียจเข้า windows เพื่อไปใช้ MATLAB และ อีกอย่างมันไม่ฟรีด้วย
จึงได้ข้อมูลพวก scilab , octave เอ้า ! โหลดมาลองซะหน่อย
และหลังจากนั้นไปอีก….. Read this article »
(Cache) Python 2.4 + numpy + matplotlib + Imaging
- by Nat
จากความเดิมตอนที่แล้วที่ ใช้ python 2.5 กับ numpy แล้วก็ Imaging 1.1.6 ก็ทำงานไปได้ระดับหนึ่ง
แต่เกิดอยากจะ plot histogram ขึ้นมาเลยไปมองที่ scipy เนื่องจากครั้งที่แล้วยังลงไม่ได้
แต่แล้วก็ได้พบพานกับ matplotlib-0.99.1.1 เคยเห็นใน superpack ก็เลยโหลดมาลองซะหน่อย
Unit Vectors – Normalizing ใช้ python และ numpy
- by Nat
ก่อนที่เราจะ normalize vector ได้ เราต้องหา norm ( magnitude หรือ ขนาด) ของมันก่อน

ซึ่งมันหาได้โดยการ ถอด Square root ของ ผลบวกกำลังสองครับ (sumsquare)
length = sqrt((ax * ax) + (ay * ay) + (az * az))
length = sqrt(9 + 1 + 4) = 3.742ซึ่ง 3.742 จะเป็น ขนาดของ Vector [1,2,3] ครับ
ถ้าจะ normalize vector นี้ก็เอา magnitude ไปหารทุกตัวครับ
x = 3.0 / 3.742 = 0.802
y = 1.0 / 3.742 = 0.267
z = 2.0 / 3.742 = 0.534
ซึ่งใน python เขียนแค่
ก็จะได้คำตอบ
array([ 0.26726124, 0.53452248, 0.80178373])
[Google Maps Geocoding] ลอง Parse Json ด้วย Groovy + Java (Netbeans)
- by Nat
โปรเจ็คตลกๆมาอีกแล้ว เพราะโปรเจ็คนี้ผมใช้ Json Lib + Groovy + Java
แต่ผมใช้ Groovy ดึง json (URL.text) แล้วใช้ Java เป็นตัวแกะ jsonObject เป็น jsonArray
หลังจากนั้นเอาข้อมูลโยนกลับไปให้ Groovy ถอดเอาเฉพาะส่วนที่ต้องการออกมา (ในที่นี้คือ coordinates — latitude ,longitude นั่นแหละ)
ดูวุ่นวายมาก ทั้งๆที่ เขียน Groovy อย่างเดียวก็ได้ เพราะ Json Lib ก็ลองรับ groovy หรือจะเขียน Java เพียวๆ เลยก็ได้
เรื่องของเรื่องคืออยากเขียน Java ร่วมกับ Groovy อีกครั้ง เพราะไม่ค่อยถูกกับ Java จริงๆ
มันดูเวื่นเว้อ มันเขียนเวิ่นเว้อด้วย ยาวๆ งงๆ (อาจเป็นเพราะไม่ได้ศึกษาอย่างลึกซึ้ง)
groovy มันสั้น เข้าใจง่าย ไม่เวิ้นเว้อ (อาจจะใช้ได้ไม่เต็มประสิทธิภาพ แต่ผมชอบ พวก Closures )
เหตุผลที่ไม่เขียน Groovy เพียวๆไปเลยก็เพราะว่า
code ตัวอย่างที่เค้ามีให้ดู มันพิมพ์ผิด
def fromList = [1,true,'json'] as JSONarray
มันควรจะต้องเป็น JSONArray เมื่อแก้และเอาอันอื่นมาลองดู มัน cast เป็น Type พวก net.sf.json.* ไม่ได้ อาการประมาณนี้
ก็เลยลองซัด Java + Groovy ไปเลย
มันก็เจอปัญหานิดหน่อยเพราะ ไม่ได้อ่าน Dependency List เลยค่อยๆตามหา พอได้ครบแล้วเพิ่งจะเห็นว่ามันมีบอกไว้ว่า
Json-lib requires (at least) the following dependencies in your classpath:
- jakarta commons-lang 2.4
- jakarta commons-beanutils 1.7.0
- jakarta commons-collections 3.2
- jakarta commons-logging 1.1.1
- ezmorph 1.0.6
น่าเขกกะโหลกจริงๆ Read this article »
ลองถอดข้อมูลจาก JSON Format ด้วย Grails
- by Nat
จากตอนที่แล้ว Reverse Geocoding (Address Lookup) ผ่าน http
เรื่องวันนี้ ! ให้สังเกตว่า
เมื่อเรา Request ไปข้อข้อมูลของ Thammasat Rangsit เราจะได้ ข้อมูลหน้าตาประมาณนี้
{
"name": "Thammasat Rangsit",
"Status": {
"code": 200,
"request": "geocode"
},
"Placemark": [ {
"id": "p1",
"address": "Thammasat Rangsit Sport Center, Khlong Nueng, Khlong Luang, Pathum Thani 12110, Thailand",
"AddressDetails": {
"Accuracy" : 9,
"AddressLine" : [ "Thammasat Rangsit Sport Center" ]
},
"ExtendedData": {
"LatLonBox": {
"north": 14.0785781,
"south": 14.0569314,
"east": 100.6173654,
"west": 100.5853506
}Read this article » Reverse Geocoding (Address Lookup) ผ่าน http
- by Nat
ลองเล่น Reverse Geocoding ของ google map api ซักกะหน่อย
Reverse Geocoding คือการ เปลี่ยนชื่อสถานที่เป็นพิกัด (latitude , longitude) นั่นเอง (ความจริงมันได้ข้อมูลอื่นๆมาด้วยอีกเยอะ)
วิธีทำก็ไปอ่านดูได้ที่ Reverse Geocoding (Address Lookup)
หรือจะลองทำเลย ก็แค่ Request ไปที่ http://maps.google.co.th/maps/geo?q=Thammasat&output=json&sensor=falsegl=th
ก็จะได้ข้อมูลมาประมาณนี้
{
"name": "Thammasat Rangsit",
"Status": {
"code": 200,
"request": "geocode"
},
"Placemark": [ {
"id": "p1",
"address": "Thammasat Rangsit Sport Center, Khlong Nueng, Khlong Luang, Pathum Thani 12110, Thailand",
"AddressDetails": {
"Accuracy" : 9,
"AddressLine" : [ "Thammasat Rangsit Sport Center" ]
},
"ExtendedData": {
"LatLonBox": {
"north": 14.0785781,
"south": 14.0569314,
"east": 100.6173654,
"west": 100.5853506
}
},
"Point": {
"coordinates": [ 100.6013580, 14.0677550, 0 ]
}
}, ถ้าต้องการ output แบบ xml ก็ใส่ parameter ตรง output ไปว่า &output=xml
หลังจากนั้นก็เอาไป parse แล้ว ใช้ต่อได้เลย !!
Related Blogs
- Change the Search Header in Zen Cart | kerrinhardy.com
- Investment information including spread betting.
- Cheap 22 Quot Lcd Monitor
- Unilever Centre for Molecular Informatics, Cambridge – My …
- Woods Recruiting › Bay Area local scoreboard for May 9
- Sonnd › <a href="http://www.mondaynote.com/2010/05/02/balkanizing …
- Opera Finds Flash Unappetizing For Web Video [Blockquote] | Gadget …
- Opera Finds Flash Unappetizing For Web Video [Blockquote]
- Household Activities » Blog Archive » Power One Size 312 Zinc Air …
- The 14 October 1973 Uprising – Dying for a Cause « Alexander Duell
- Google Gets a New Geocoder | Webmonkey | Wired.com
- THAMMASAT UNIVERSITY OPENS WINDOW TO AUSTRALIA
- Social Entrepreneurship Talks – Thammasat MBA Pt.1
- Thainy – Thailand Blog » THAMMASAT UNIVERSITY OPENS WINDOW TO …
- Opera Finds Flash Unappetizing For Web Video [Blockquote …
- What is the difference between HREF and SRC links? « TagFocus.com
- Moving to Rangsit for New Job after next month
- APPEAL COURT REJECTS BODE GEORGE'S BAIL REQUEST | NBF NEWS, FREE …
- How To Get Over Somebody You Love | My Flirting Secrets
- MetsBlog.com – Pre-Game: Giants vs. Mets
เทคโนโลยีด้านการระบุตำแหน่งของผู้ส่งข้อมูล (ใช้ Geolocation API )
- by Nat
ขอ blog จากเอกสารบางส่วนที่ส่ง NSC ไปหน่อย เผื่อมีประโยชน์กับท่านอื่นด้วย
ว่าด้วยเรื่องของการดึงข้อมูลพิกัดผ่านทาง Browser (ดึงพิกัดออกมาจากมือถือนั่นแล)
การดึงพิกัดจากมือถือ ทำได้โยการใช้ Geolocation API ซึ่งส่วนสำคัญที่ใช้ในโครงงานนี้คือ Coordinates interface
ซึ่งมีรายละเอียดดังนี้
interface Coordinates {
readonly attribute double latitude;
readonly attribute double longitude;
readonly attribute double? altitude;
readonly attribute double accuracy;
readonly attribute double? altitudeAccuracy;
readonly attribute double? heading;
readonly attribute double? speed;
};
แอตทริบิวต์ latitude , longitude เป็นค่าตำแหน่งในภูมิศาสตร์เก็บอยู่ในรูปทศนิยม
ตัวอย่างการ ดึงค่าพิกัด
เมื่อเรียกฟังก์ชั่น displayLocation จะได้ดังนี้
sort List ใน views ที่มาจาก Relation แบบ hasMany ใน grails
- by NAzT
>
ไม่ Blog ยาว ขอสั้นๆ
มี Domain แบบนี้
package com.nazt class Experiment { static hasMany = [data:DataKeeper] String name = '[Experiment #]' Integer total Date dateCreated Date lastUpdated static constraints = { name(unique:true) } String toString() { name } }
code เดิมๆ ใน views มันเป็นแบบนี้
<g:each in=”${experimentInstance.data}” var=”d”>
ก็แก้ให้มันเป็นแบบนี้ Read this article »
(cache) [mini Review] Movie – Up 2009 ( อัพ ปู่ซ่าบ้าพลัง )
- by NAzT
เหตุผลที่เราไม่ควร Reply ผ่านทาง Retweet (RT) why?
- by NAzT
(cache) [Review] หนัง : Taken 2008
- by NAzT
เพิ่งดู Taken จบไป
หนังเรื่องนี้ได้คะแนนจาก IMDb ไป 7.9/10 92,805 votes
มองรวมๆ สนุกนะ ก็ตื่นเต้นดี
ถึงแม้ว่าจะลุยเดี่ยวทั้งเรื่อง แต่ก็ไม่เวอร์เท่าไหร่ พอเป็นไปได้เพราะเคยทำงานให้รัฐบาล
รายละเอียดหนัง :
หนังแสดงให้เห็นถึงความรักระหว่างพ่อที่มีต่อลูกสาว ส่วนลูกสาวก็เป็นเด็กวัยรุ่น(อายุ 17)
ซึ่งเป็นวัยรุ่นแบบคลาสสิคจริงๆ หนีพ่อเที่ยวตามประสา
Quote จากในหนัง ..
พ่อไปทำงานซะมากไป จนต้องเลิกกับเมีย ( อารมณ์หนังสื่อได้ถึงจริงๆ ว่าไม่ได้เลิกเพราะทะเลาะกัน แต่จำเป็นต้องเลิกด้วยเหตุผลบางอย่าง )
ตาม Quote นี้
Lenore: I don't get you.
Bryan: What?
Lenore: You sacrificed our marriage to the service of the country, you've made a mess of your life in the service of your country; can't you sacrifice a little one time for your own daughter?
Bryan: I would sacrifice anything for her.
[cache] Grails Project : การตัดคำภาษาไทย(ด้วย Java) และประมวลผลด้วย Grails
- by NAzT
ครึกครื้นอยากเขียน …
พอดีได้โจทย์ซึ่งเป็น Senior Project ของเพื่อน แต่ว่าอยากทำเลยเอามาลองเสียหน่อย
(ฝึกเขียน grails ด้วยการทำ โจทย์)
ได้ความรู้ + ประสบการณ์ มากเลยทีเดียว เพราะว่า
เพิ่งเริ่มจับ grails แล้วทำงานแบบเป็นชิ้นเป็นอัน ครั้งนี้ก็ครั้งแรก
แต่ก่อนหน้านี้มีใช้ grails + xfire ในการทำ project วิชา SOAp ก็เรียบร้อยไป
(แต่ client ใช้ nusoap + codeigniter) เล่นกันทีเดียวคุ้ม Read this article »
[cache] Grails meeting day 1 @ opendream
- by NAzT
เมื่อวันเสาร์ที่ 12 ธันวาคม 2552 ผมได้ไปงาน grails meeting day 1 มาครับ
ซึ่งกว่าจะสอบเสร็จ กว่าจะเขียนก็น๊านนาน (อู้ + อ้าง จริงๆ)
เริ่มเรื่องกันดีกว่า !
กว่าจะไปถึง ก็ “หลง” กันไปครับ ก็เมื่อยกันไปตามๆกัน เพื่อนร่วมทริปก็ @ka_klang , @disscovery , @biggykung ครับ
เส้นทางที่ได้ไปเดินชมวิวในเมืองครับผม ;p





