Menu

Tuesday, October 29, 2013

[Batch Script] คำสั่งและตัวเลือกสำหรับบราวเซอร์ Chrome
[Batch Script] Chrome Browser Command Line

สมมติว่า ;C:\Program Files (x86)\Google\Chrome\Application ถูกเพิ่มไปยัง system path (ตาม วิธีการเพิ่มค่าใหม่ใน System Path)
Suppose that ;C:\Program Files (x86)\Google\Chrome\Application is added to system path (follow How to Add New Values to System Path)

เพื่อเปิดบราวเซอร์ Chrome ใช้คำสั่ง
To open Chrome browser, use command
start chrome

เพื่อเปิด URL ที่ต้องการด้วยบราวเซอร์ Chrome ใช้คำสั่ง
To open Chrome browser with specified URL, use command
start chrome "url"

[Batch Script] วิธีการหาพาธของแฟ้มของไฟล์ Batch ที่กำลังประมวลผล
[Batch Script] How to Get Directory Path of Executing Batch File

เพื่อเข้าไปยังแฟ้มของไฟล์ batch ที่กำลังประมวลผล ใช้คำสั่ง
To get into directory path of executing batch file, use command
cd /d %~dp0

Friday, October 25, 2013

[FFmpeg] วิธีการติดตั้ง FFmpeg สำหรับ Windows 7
[FFmpeg] How to Install FFmpeg for Windows 7

ขั้นแรก ดาวน์โหลด FFmpeg จาก http://ffmpeg.zeranoe.com/builds/
First, download FFmpeg from http://ffmpeg.zeranoe.com/builds/ 

แตกไฟล์ที่ดาวน์โหลดมาด้วย 7-zip ไว้ที่ C:/
Extract downloaded file with 7-zip to C:/

เปลี่ยนชื่อแฟ้มที่ได้จากการแตกไฟล์เป็น ffmpeg
Rename extracted folder to ffmpeg


Tuesday, October 22, 2013

[EmguCV] วิธีการตั้งค่า EmguCV สำหรับ Visual C#
[EmguCV] How to Set EmguCV for Visual C#

ดาวน์โหลด EmguCV จาก http://sourceforge.net/projects/emgucv/ แล้วติดตั้ง
Download EmguCV from http://sourceforge.net/projects/emgucv/ then install

สร้างโปรเจคใหม่เป็น Windows Form Application
Create new Window Form Application project

เพิ่มไลบรารี่ EmguCV โดยไปที่ Solution Explorer คลิกขวาที่แฟ้ม References แล้วเลือกAdd Reference…
Add EmguCV Library by right click on References within Solution Explorer then select Add Reference... 

[VirtualBox] วิธีแก้ไขปัญหา "Attempting to load 64 bit however this CPU is not compatible with 64 bit mode" สำหรับการลง Window 7 64 bit
[VirtualBox] How to Fix Problem: "Attempting to load 64 bit however this CPU is not compatible with 64 bit mode" on Window 7 64 bit Installation

ปัญหานี้จะแสดงดังภาพด้านล่างหลังจากพยายามลง Window 7 64 bit
This problem is shown as image below after attempting to install Window 7 64 bit


การแก้ข้อผิดพลาด คือ เข้าไป enable virtualization ใน BIOS
To fix error, enable virtualization setting inside BIOS

Monday, October 21, 2013

[C#] วิธีการเขียนไฟล์ข้อความ
[C#] How to Write Text File

ขั้นแรก เพิ่มประโยค using ตามด้านล่าง
First, add using statement
  1. using System.IO.StreamWriter;

ขั้นที่สอง ประกาศและนิยามออบเจ็ค StreamWriter ใหม่ เพื่อเขียนไฟล์ข้อความไปที่ file_path
Second, declare and define new StreamWriter object to write text file at file_path
  1. StreamWriter file = new StreamWriter(file_path);

Wednesday, October 16, 2013

[EmguCV] การแปลงภาพแบบ Affine
[EmguCV] Affine Transformation

การแปลงภาพแบบ Affine คือ การฉายจุดลงบนฉากรับภาพตามแนวเส้นขนาน นั่นคือ การแปลงภาพที่ยังคงรักษาความขนานของเส้นเอาไว้
Affine transformation is the projection of points onto the image plane along parallel.

ขั้นแรก โหลดภาพตั้งต้นเข้าตัวแปร img
First, load a source image to img 
  1. Image<Bgr, byte> img = new Image<Bgr, byte>(image_path);
Source Image

Tuesday, October 15, 2013

[EmguCV] วิธีการเข้าถึงพิกเซลของภาพ
[EmguCV] How to Access Pixels of Image

สมมติให้
Suppose that
  1. Image<Bgr,byte> img = new Image<Bgr,byte>();

มีสองวิธีสำหรับการเข้าถึงพิกเซลตำแหน่งแถวที่ y และหลักที่ x ของ img
There are two ways to access the pixel on the y-th row and x-th column of img

Monday, October 14, 2013

[EmguCV] ทำไมขนาดข้อมูลของภาพแตกต่างจากขนาดของภาพ
[EmguCV] Why Image Data Size is different from Image Size

สมมติให้
Suppose that
  1. Image<Bgr,byte> img = new Image<Bgr,byte>(73,100);

ค่าของ img.Cols และ img.Width จะเป็น 73 แต่ค่าของ img.Data.GetLength(1) จะเป็น 76.
The value of img.Cols and img.Width are 73 but the value of img.Data.GetLength(1) is 76.

อย่างไรก็ตาม ค่าของ img.Rows, img.Height, และ img.Data.GetLength(0) จะมีค่าเท่ากัน คือ 100
However, the value of  img.Rows, img.Height, and img.Data.GetLength(0) are the same which are 100

สาเหตุนี้เป็นเพราะ EmguCV ต้องการจัดเรียงแต่ละแถวของภาพให้มีขนาดเป็นจำนวนเท่าของ 4 ไบต์เพื่อเพิ่มประสิทธิภาพในการดึงข้อมูล
This is because EmguCV requires each row of image to be aligned by 4 bytes to improve efficiency in fetching data.

Wednesday, October 9, 2013

[EmguCV] การแปลงภาพแบบ Perspective
[EmguCV] Perspective Transformation

การแปลงภาพแบบ Perspective คือ การฉายจุดลงบนฉากรับภาพตามแนวเส้นที่พุ่งออกมาจากจุดจุดหนึ่งที่เรียกว่า จุดศูนย์กลางการฉาย
Perspective transformation is the projection of points onto the image plane along lines that emanate from a single point, called the center of projection.

ขั้นแรก โหลดภาพตั้งต้นเข้าตัวแปร img
First, load a source image to img 
  1. Image<Bgr, byte> img = new Image<Bgr, byte>(image_path);
Source image

Tuesday, October 8, 2013

[HTML] วิธีการเปลี่ยน In-page Style Tag เป็น Inline Style Attribute
[HTML] How to Change In-page Style Tags to Inline Style Attribute

เนื่องจากบางอีเมลล์ไคลเอนต์ เช่น gmail ไม่สนับสนุน in-page style tags (<style></style>) เทมเพลต HTML สำหรับอีเมลล์ จึงต้องเปลี่ยนเป็น inline style attribute (<a style=""></a>)
Due to some email client, such as gmail, does not support in-page style tags (<style></style>), the HTML template for email must be changed to inline style attribute (<a style=""></a>)

เทมเพลต HTML สามารถเปลี่ยนได้ที่ http://beaker.mailchimp.com/inline-css
HTML template can be changed at http://beaker.mailchimp.com/inline-css

[EmguCV] วิธีการสร้างภาพพื้นหลังจากชุดของภาพ
[EmguCV] How to Create Background Image from a series of images

ในกรณีนี้ กล้องถ่ายภาพจำเป็นต้องถูกยึดอยู่กับที่
In this case, a camera must be stationary. 

นั่นหมายความว่า ภาพพื้นหลังจะเหมือนกันทุกภาพ ในขณะที่วัตถุจะมีการปรากฏขึ้นเพียงบางภาพเท่านั้น
That mean background are the same for each image while objects (foreground) will appear in only few images. 

ดังนั้น ภาพพื้นหลังสามารถสร้างได้ โดยการเฉลี่ยชุดของภาพ
Therefore, background can be created by averaging a series of images.