<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet href="http://gexon.egloos.com/style/style_rss.xsl" type="text/xsl" media="screen"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
	<title>Good_Leo님의 이글루</title>
	<link>http://gexon.egloos.com</link>
	<description>Robot Programming Project</description>
	<language>ko</language>
	<pubDate>Wed, 04 Jun 2008 08:57:57 GMT</pubDate>
	<generator>Egloos</generator>
	<image>
		<title>Good_Leo님의 이글루</title>
		<url>http://md.egloos.com/img/samplelogo.gif</url>
		<link>http://gexon.egloos.com</link>
		<width>80</width>
		<height>80</height>
		<description>Robot Programming Project</description>
	</image>
  	<item>
		<title><![CDATA[ 08년 6월 4일 ]]> </title>
		<link>http://gexon.egloos.com/431568</link>
		<guid>http://gexon.egloos.com/431568</guid>
		<description>
			<![CDATA[ 
  <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 맑은 고딕"><b style="mso-bidi-font-weight: normal"><span lang="EN-US" style="FONT-SIZE: 12pt; mso-bidi-font-size: 11.0pt">winsock</span></b><b style="mso-bidi-font-weight: normal"><span style="FONT-SIZE: 12pt; mso-bidi-font-size: 11.0pt">을 이용한 파일 보내기<span lang="EN-US">(C++) </span>소스<span lang="EN-US"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></span></span></b></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">#include&lt;winsock2.h&gt;</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">#include&lt;stdio.h&gt;</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">#include&lt;stdlib.h&gt;</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">#define BUFSIZE 4096</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">// </span>소켓 함수 오류 출력 후 종료</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">void err_quit(char *msg)</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">{</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>LPVOID lpMsgBuf;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>FormatMessage( </span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>FORMAT_MESSAGE_ALLOCATE_BUFFER|</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>FORMAT_MESSAGE_FROM_SYSTEM,</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>NULL, WSAGetLastError(),</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>(LPTSTR)&amp;lpMsgBuf, 0, NULL);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>MessageBox(NULL, (LPCTSTR)lpMsgBuf, msg, MB_ICONERROR);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>LocalFree(lpMsgBuf);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>exit(-1);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">}</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">// </span>소켓 함수 오류 출력</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">void err_display(char *msg)</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">{</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>LPVOID lpMsgBuf;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>FormatMessage( </span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>FORMAT_MESSAGE_ALLOCATE_BUFFER|</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>FORMAT_MESSAGE_FROM_SYSTEM,</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>NULL, WSAGetLastError(),</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>(LPTSTR)&amp;lpMsgBuf, 0, NULL);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>printf("[%s] %s", msg, (LPCTSTR)lpMsgBuf);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>LocalFree(lpMsgBuf);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">}</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">int main(int argc, char *argv[])</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">{</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>int err;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>if(argc &lt; 2){</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>fprintf(stderr, "Usage: %s &lt;FileName&gt;\n", argv[0]);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>return -1;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="mso-tab-count: 1"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>WSADATA wsa;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>if(WSAStartup(MAKEWORD(2,2),&amp;wsa) !=0 )</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>return -1;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>SOCKET senderSock = socket(AF_INET,SOCK_STREAM, 0); </span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>if(senderSock == INVALID_SOCKET){ </span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>err_quit("socket()");</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 9">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="mso-tab-count: 1"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>// connect()</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>SOCKADDR_IN senderaddr;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>ZeroMemory(&amp;senderaddr,sizeof(senderaddr));</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>senderaddr.sin_family = AF_INET;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>senderaddr.sin_port = htons(9000);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>senderaddr.sin_addr.s_addr = inet_addr("127.0.0.1");</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="mso-tab-count: 1"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>err = connect(senderSock, (SOCKADDR *)&amp;senderaddr,sizeof(senderaddr));<span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>if(err == SOCKET_ERROR) err_quit("connect()");</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>//</span>파일 열기</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>FILE *fp = fopen(argv[1],"rb");</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>if(fp== NULL)</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>{</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="mso-spacerun: yes">&nbsp;</span>perror("</span>파일 입출력 오류<span lang="EN-US">");</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="mso-spacerun: yes">&nbsp;</span>return -1;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>//</span>파일 이름 보내기</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>char filename[256];</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>ZeroMemory(filename,256);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>sprintf(filename,argv[1]);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>err = send(senderSock,filename,256,0);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>//if(err == SOCKET_ERROR) err_quit("send()");</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>//</span>파일 크기 얻기</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>fseek(fp,0,SEEK_END);//</span>파일 포인터를 파일의 끝으로 옮김<span lang="EN-US"> </span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>int totalbytes = ftell(fp);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>printf("</span>크기<span lang="EN-US"> :%d bytes\n",totalbytes); //ansi</span>로 된<span lang="EN-US"> text</span>파일에 있는 문자</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>err = send(senderSock,(char *)&amp;totalbytes,sizeof(totalbytes),0);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>if(err == SOCKET_ERROR) err_quit("send()");</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>//</span>파일 데이터 전송에 사용할 변수</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>char buf[BUFSIZE];</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>int numread;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>int numtotal = 0;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>//</span>파일 데이터 보내기<span lang="EN-US"> </span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>rewind(fp); // </span>파일 포인터를 제일 앞으로 이동</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>while(1){</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>numread = fread(buf, 1, BUFSIZE, fp);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>if(numread &gt; 0){</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>err = send(senderSock, buf, numread, 0);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>if(err == SOCKET_ERROR){</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>err_display("send()");</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>break;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>numtotal += numread;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>else if(numread == 0 &amp;&amp; numtotal == totalbytes){</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>printf("</span>파일 전송 완료<span lang="EN-US">!: %d </span>바이트<span lang="EN-US">\n", numtotal);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>break;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>else{</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>perror("</span>파일 입출력 오류<span lang="EN-US">");</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>break;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>fclose(fp);<span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>closesocket(senderSock);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>WSACleanup();</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">return 0;</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">}</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p>			 ]]> 
		</description>
		<category>Image Perception</category>
		<pubDate>Wed, 04 Jun 2008 08:57:57 GMT</pubDate>
		<dc:creator>Good_Leo</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 08년 6월 2일 ]]> </title>
		<link>http://gexon.egloos.com/429131</link>
		<guid>http://gexon.egloos.com/429131</guid>
		<description>
			<![CDATA[ 
  			 ]]> 
		</description>
		<category>Image Perception</category>
		<pubDate>Tue, 03 Jun 2008 16:26:18 GMT</pubDate>
		<dc:creator>Good_Leo</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 08년 5월 30일 ]]> </title>
		<link>http://gexon.egloos.com/413194</link>
		<guid>http://gexon.egloos.com/413194</guid>
		<description>
			<![CDATA[ 
  <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">WSADATA </span>구조체<span lang="EN-US"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></span></span></span></b></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">Windows Sockets </span>초기화 정보를 저장하기 위해 사용되고<span lang="EN-US"> AfxSocketInit</span>함수 호출에 의해 구조체의 포인터가 리턴된다<span lang="EN-US">.</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">struct WSAData {</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp;&nbsp; </span>WORD wVersion;<span style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>//Windows Sockets</span>의 버전</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp;&nbsp; </span>WORD wHighVersion;<span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>//DLL</span>이 제공하는 <span lang="EN-US">WinSock</span>의 가장 상위버전</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-spacerun: yes">&nbsp;&nbsp; </span>char szDescription[WSADESCRIPTION_LEN+1];<span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-spacerun: yes">&nbsp;&nbsp; </span>char szSystemStatus[WSASYSSTATUS_LEN+1];</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp;&nbsp; </span>unsigned short iMaxSockets;<span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </span>//open</span>할 수 있는 최대소켓 수</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp;&nbsp; </span>unsigned short iMaxUdpDg;<span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp; </span>//UDP</span>로 받을 수 있는 최대 메시지 크기</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-spacerun: yes">&nbsp;&nbsp; </span>char FAR * lpVendorInfo;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">};</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">WSAStartupWinsock DLL(WS2_32.DLL)</span>을 사용할 수 있도록 초기화하는데 사용하는 함수</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">int WSAStartup(</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp; </span>__in<span style="mso-spacerun: yes">&nbsp; </span>WORD wVersionRequested, //2Bytes</span>의 상위바이트는<span lang="EN-US"> minor</span>버전<span lang="EN-US">, </span>하위바이트는<span lang="EN-US"> major</span>버전</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-spacerun: yes">&nbsp; </span>__out<span style="mso-spacerun: yes">&nbsp; </span>LPWSADATA lpWSAData</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">);</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">가장 먼저 수행되어야 할 함수<span lang="EN-US"><o:p></o:p></span></span></span></b></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">윈도우 소켓을 사용할 필요가 없을때<span lang="EN-US"> WSACleanup</span>함수가 호출되어야 한다<span lang="EN-US">. </span>그래야만<span lang="EN-US"> Windows Sockets</span>에 할당되었던 리소스들을 해제 할 수 있다<span lang="EN-US">. SOCKADDR_IN</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><b style="mso-bidi-font-weight: normal"><span lang="EN-US">struct sockaddr_in</span></b><span lang="EN-US">{</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>short<span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>sin_family;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>unsigned short<span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span>sin_port;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>struct<span style="mso-spacerun: yes">&nbsp; </span>in_addr<span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </span>sin_addr;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>char<span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>sin_zero[8];</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">};</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">소켓이 접속해 있는 로컬 또는 원격지 주소를 표현하는데 사용<br><br></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><img class="image_left" border="0" onmouseover="this.style.cursor='pointer'" alt="" src="http://pds9.egloos.com/pds/200805/31/67/f0006367_4840b796bd170.jpg" width="400" height="538" onclick="Control.Modal.openDialog(this, event, 'http://pds9.egloos.com/pds/200805/31/67/f0006367_4840b796bd170.jpg');" align="left" />			 ]]> 
		</description>
		<category>Image Perception</category>
		<pubDate>Sat, 31 May 2008 02:26:38 GMT</pubDate>
		<dc:creator>Good_Leo</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 08년 5월 22일 ]]> </title>
		<link>http://gexon.egloos.com/413180</link>
		<guid>http://gexon.egloos.com/413180</guid>
		<description>
			<![CDATA[ 
  <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">고유 얼굴을 이용하여 얼굴을 인식<span lang="EN-US"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></span></span></span></b></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">1. </span>인식후보 얼굴 벡터 집합<span lang="EN-US">(S)</span>의 구성</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">2. </span>이미지 정규화</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">3. </span>평균얼굴 벡터 계산<span lang="EN-US">Ψ</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">4. </span>각 인식후보 얼굴 벡터와 평균얼굴 벡터의 차 벡터 계산</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">5. N2 X1 </span>벡터 로부터 공분산행렬 계산</span></span></p>			 ]]> 
		</description>
		<category>미분류</category>
		<pubDate>Sat, 31 May 2008 02:23:02 GMT</pubDate>
		<dc:creator>Good_Leo</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 08년 5월 21일 ]]> </title>
		<link>http://gexon.egloos.com/413177</link>
		<guid>http://gexon.egloos.com/413177</guid>
		<description>
			<![CDATA[ 
  <span style="FONT-SIZE: 10pt; FONT-FAMILY: '맑은 고딕'; mso-bidi-font-family: 'Times New Roman'; mso-fareast-theme-font: minor-fareast; mso-bidi-theme-font: minor-bidi; mso-bidi-font-size: 11.0pt; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: KO; mso-bidi-language: AR-SA"><strong>패턴 인식 개론<span lang="EN-US">: </span>특징 벡터 차원의 축소<br><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p><span style="FONT-SIZE: 100%">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%">특징벡터<span lang="EN-US">: </span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%">특징<span lang="EN-US">(</span>어떤 객체와 분류될 수 있는 고유의 특성<span lang="EN-US">)</span>을 하나 이상의 수치 값으로 가질 경우 특징 벡터라고 하는<span lang="EN-US"> d-</span>차원의 열 벡터로 표현된다<span lang="EN-US">.</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%">특징이 많으면<span lang="EN-US"> - </span>잡음 특징들까지 포함되므로 오히려 분류에 좋지 않다<span lang="EN-US">.</span></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 87pt; TEXT-INDENT: -18pt; mso-para-margin-left: 0gd; mso-list: l0 level1 lfo1"><span lang="EN-US" style="mso-bidi-font-family: '맑은 고딕'; mso-fareast-font-family: '맑은 고딕'; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%">-</span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%">패턴 분류기에 의한 학습과 인식 속도가 느려진다</span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 87pt; TEXT-INDENT: -18pt; mso-para-margin-left: 0gd; mso-list: l0 level1 lfo1"><span lang="EN-US" style="mso-bidi-font-family: '맑은 고딕'; mso-fareast-font-family: '맑은 고딕'; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%">-</span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%">모델링에 필요한 학습 집합의 크기가 커진다</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><u><span style="FONT-SIZE: 100%"><span lang="EN-US">1. </span>데이터 시각화<span lang="EN-US">: <o:p></o:p></span></span></u></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%">고차원 데이터의 분포를<span lang="EN-US"> 2</span>차원<span lang="EN-US">, 3</span>차원 공간상으로 시각화시키고자 할 때<span lang="EN-US"> PCA</span>가 사용된다<span lang="EN-US">.<br><br></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%">예<span lang="EN-US">) 2</span>차원 축소시<span lang="EN-US"> PCA</span>를 이용해 처음 두 개의 주축<span lang="EN-US">(X’, Y’)</span>을 구한 후<span lang="EN-US">, </span>이 주축으로 차원을 축소시키고<span lang="EN-US">, </span>이 주축을 기준으로 데이터의 추정 분포를 보여줄 수 있다<span lang="EN-US">.</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%"></span></o:p></span></p><span style="FONT-SIZE: 100%"><u><span lang="EN-US"><br>2. </span>특징 추출<span lang="EN-US">:</span></u><span lang="EN-US"> </span>고차원 데이터에 대한 분류기 설계시 적은 양의 표본으로 분류기를 설계하는데<span lang="EN-US"> PCA</span>가 사용된다<span lang="EN-US">.</span></span><p></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><b style="mso-bidi-font-weight: normal">실습<span lang="EN-US">1]<br></span></b><span lang="EN-US"><br>1. x, y </span>좌표상에 생성된 랜덤값 그리기<br></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /><v:shape id="그림_x0020_4" style="MARGIN-TOP: 0.05pt; Z-INDEX: -3; LEFT: 0px; VISIBILITY: visible; MARGIN-LEFT: 1.5pt; WIDTH: 187.5pt; POSITION: absolute; HEIGHT: 184.5pt; TEXT-ALIGN: left; mso-wrap-style: square; mso-wrap-distance-left: 9pt; mso-wrap-distance-top: 0; mso-wrap-distance-right: 9pt; mso-wrap-distance-bottom: 0; mso-position-horizontal: absolute; mso-position-horizontal-relative: text; mso-position-vertical: absolute; mso-position-vertical-relative: text" type="#_x0000_t75" o:spid="_x0000_s1028" wrapcoords="-173 0 -173 21424 21600 21424 21600 0 -173 0"><span style="FONT-SIZE: 100%"><v:imagedata o:title="" src="file:///C:\DOCUME~1\GoodLeo\LOCALS~1\Temp\msohtmlclip1\01\clip_image003.png"></v:imagedata><?xml:namespace prefix = w ns = "urn:schemas-microsoft-com:office:word" /><w:wrap type="tight"></w:wrap></span></v:shape><span style="FONT-SIZE: 100%"><span lang="EN-US"><br>R1=rand(1000,2); // 1000 x 2 </span>벡터<span lang="EN-US"> R1 </span>생성</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span lang="EN-US">figure; //</span>그래프 화면 객체 생성</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span lang="EN-US">plot(R1(:,1),R1(:,2),'r*'); //R1</span>의 모든 행<span lang="EN-US">, </span>모든<span lang="EN-US"> 1</span>열<span lang="EN-US"> : x</span>축</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>//R1</span>의 모든 행<span lang="EN-US">, </span>모든<span lang="EN-US"> 2</span>열<span lang="EN-US"> : y</span>축</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span lang="EN-US">axis('square'); // x,y</span>축을 정사각형으로 바꿈</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%"></span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span lang="EN-US">2. mean</span>함수로 <span lang="EN-US">x, y </span>평균이<span lang="EN-US"> 0</span>이 되도록 원 데이터의 집합을 재배치</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><v:shape id="그림_x0020_10" style="MARGIN-TOP: -0.3pt; Z-INDEX: -2; LEFT: 0px; VISIBILITY: visible; MARGIN-LEFT: 1.5pt; WIDTH: 186.75pt; POSITION: absolute; HEIGHT: 180.75pt; TEXT-ALIGN: left; mso-wrap-style: square; mso-wrap-distance-left: 9pt; mso-wrap-distance-top: 0; mso-wrap-distance-right: 9pt; mso-wrap-distance-bottom: 0; mso-position-horizontal: absolute; mso-position-horizontal-relative: text; mso-position-vertical: absolute; mso-position-vertical-relative: text" type="#_x0000_t75" o:spid="_x0000_s1027" wrapcoords="-173 0 -173 21510 21687 21510 21687 0 -173 0"><span style="FONT-SIZE: 100%"><v:imagedata o:title="" src="file:///C:\DOCUME~1\GoodLeo\LOCALS~1\Temp\msohtmlclip1\01\clip_image005.png"></v:imagedata><w:wrap type="tight"></w:wrap></span></v:shape><span lang="EN-US"><span style="FONT-SIZE: 100%">R1_Mean = [mean(R1(:,1)),mean(R1(:,2))]; </span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span lang="EN-US">//mean</span>으로<span lang="EN-US"> x, y</span>축의 평균이<span lang="EN-US"> 0</span>이 되도록 집합 재배치</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%">Rctr = [R1(:,1)-R1_Mean(:,1), R1(:,2)-R1_Mean(:,2)];</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%">plot(Rctr(:,1), Rctr(:,2), 'r*');</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%">&nbsp;</span></o:p></span><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span lang="EN-US">3. </span>원점에서 반경<span lang="EN-US"> 0.5</span>보다 멀리 떨어진<span lang="EN-US"> Rctr</span>에 있는 점들은 제거한 후<span lang="EN-US"> 0.5 </span>원안에 있는 점들을&nbsp;</span><span style="FONT-SIZE: 100%"><span lang="EN-US"><span style="mso-spacerun: yes"> </span></span>다시 그림</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%">for i=1:1000</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="mso-spacerun: yes">&nbsp;&nbsp; </span>if ((sqrt(Rctr(i,1)^2 + Rctr(i,2)^2)) &gt;0.5)</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>for j=1:2</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Rcirc(i,j)=0; //</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>end</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="mso-spacerun: yes">&nbsp;&nbsp; </span>else</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>for j=1:2</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Rcirc(i,j)=Rctr(i,j);</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>end<br></span></span><span lang="EN-US"><span style="FONT-SIZE: 100%">end<br></span></span><span lang="EN-US"><span style="FONT-SIZE: 100%">end<br></span></span><span lang="EN-US" style="mso-no-proof: yes"><span style="FONT-SIZE: 100%">plot(Rcirc(:,1),Rcirc(:,2),'r*');<o:p></o:p></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span lang="EN-US">4. cov, eig </span>를 이용하여 공분산 행렬과 고유값<span lang="EN-US">, </span>고유행렬을 구한다</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><span style="FONT-SIZE: 100%">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;고유 얼굴을 이용하여 얼굴을 인식<span lang="EN-US"><o:p></o:p></span></span></b></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span lang="EN-US">1. </span>인식후보 얼굴 벡터 집합<span lang="EN-US">(S)</span>의 구성</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span lang="EN-US">2. </span>이미지 정규화</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span lang="EN-US">3. </span>평균얼굴 벡터 계산<span style="mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'; mso-ascii-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast">Ψ</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span lang="EN-US">4. </span>각 인식후보 얼굴 벡터와 평균얼굴 벡터의 차 벡터 계산</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span lang="EN-US">5. N<sup>2 </sup>X1 </span>벡터 로부터 공분산행렬 계산</span></p></strong></span>			 ]]> 
		</description>
		<category>미분류</category>
		<pubDate>Sat, 31 May 2008 02:22:36 GMT</pubDate>
		<dc:creator>Good_Leo</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 08년 5월 20일 ]]> </title>
		<link>http://gexon.egloos.com/413163</link>
		<guid>http://gexon.egloos.com/413163</guid>
		<description>
			<![CDATA[ 
  <strong><span style="FONT-SIZE: 130%; FONT-FAMILY: 맑은 고딕">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OpenCV</span></strong><br><br><br><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><u><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">연산<span lang="EN-US"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></span></span></span></u></b></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></b></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 20pt; TEXT-INDENT: -20pt; mso-para-margin-left: 0gd; mso-list: l0 level1 lfo1"><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%"></span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">침식 연산 <span lang="EN-US">– </span>배경을 확장시키고 객체의 크기를 축소</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;</span></span>소금<span lang="EN-US">-</span>후추<span lang="EN-US">(salt&amp;pepper)</span>잡음<span lang="EN-US">, </span>임펄스<span lang="EN-US">(impulse)</span>잡음을 제거하기 위해 쓰임</span></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 20pt; TEXT-INDENT: -20pt; mso-para-margin-left: 0gd; mso-list: l0 level1 lfo1"><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%"></span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">팽창 연산 <span lang="EN-US">– </span>배경을 축소시키고 객체의 크기를 확장</span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 20pt; TEXT-INDENT: -20pt; mso-para-margin-left: 0gd; mso-list: l0 level1 lfo1"><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%"></span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">열림 연산 <span lang="EN-US">– </span>침식 연산과 팽창 연산 순으로 조합하여 수행</span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 20pt; TEXT-INDENT: -20pt; mso-para-margin-left: 0gd; mso-list: l0 level1 lfo1"><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings; mso-no-proof: yes"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%"></span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp; </span></span></span><span style="mso-no-proof: yes"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">닫힘 연산 <span lang="EN-US">– </span>팽창 연산과 침식 연산 순으로 조합하여 수행<span lang="EN-US"><o:p></o:p></span></span></span></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 20pt; TEXT-INDENT: -20pt; mso-para-margin-left: 0gd; mso-list: l0 level1 lfo1"><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings; mso-no-proof: yes"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%"></span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp; </span></span></span><span style="mso-no-proof: yes"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">탑<span lang="EN-US">-</span>햇<span lang="EN-US">(top-hat)</span>연산 <span lang="EN-US">– </span>원 명암도 영상에서 열림 연산을 수행한 결과를 차 연산<span lang="EN-US"><o:p></o:p></span></span></span></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 20pt; TEXT-INDENT: -20pt; mso-para-margin-left: 0gd; mso-list: l0 level1 lfo1"><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings; mso-no-proof: yes"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%"></span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp; </span></span></span><span style="mso-no-proof: yes"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">웰 연산 <span lang="EN-US"><o:p></o:p></span></span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US" style="mso-no-proof: yes"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </span>– </span><span style="mso-no-proof: yes">탑<span lang="EN-US">-</span>햇 영상과 반대되는 것으로 원 명암도 영상에서 닫힘 연산을 수행한 결과를 차 연산<span lang="EN-US"><o:p></o:p></span></span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US" style="mso-no-proof: yes"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><b style="mso-bidi-font-weight: normal"><u><span lang="EN-US" style="mso-no-proof: yes">Otsu method</span></u></b><u><span lang="EN-US"><o:p></o:p></span></u></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">히스토그램의 분포를 이용한 이진 영상 변환 방법</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><b style="mso-bidi-font-weight: normal"><span lang="EN-US" style="mso-no-proof: yes">thresholding</span></b><span lang="EN-US" style="mso-no-proof: yes"> </span><span style="mso-no-proof: yes">수행 또는<span lang="EN-US"> gray level </span>이미지를<span lang="EN-US"> binary </span>이미지로 바꾸는데 사용<span lang="EN-US"><o:p></o:p></span></span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">이 알고리즘은 이미지가 두 개의<span lang="EN-US"> class</span>를 가지고 있다고 가정한다<span lang="EN-US">. </span>이 두 개의 클래스가 분리되는 최소의 거리를 구하기 위해 최적의<span lang="EN-US"> threshold</span>를 찾는다<span lang="EN-US">.</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><b style="mso-bidi-font-weight: normal">Thresholding</b>: segmentation</span>의 가장 간단한 방법<span lang="EN-US">, </span>배경보다 밝은<span lang="EN-US"> object pixel</span>을 정하는데<span lang="EN-US"><span style="mso-spacerun: yes">&nbsp; </span><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span>보통 배경<span lang="EN-US"> pixel</span>은<span lang="EN-US"> 0, object pixel</span>은<span lang="EN-US"> 1</span>이다<span lang="EN-US">.</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><u><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">사상<span lang="EN-US"><o:p></o:p></span></span></span></u></b></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">전방향 사상<span lang="EN-US">: </span>오버랩<span lang="EN-US">(overlap)</span>과 홀<span lang="EN-US">(hole)</span>의 문제를 갖고 있음 </span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">역방향 사상<span lang="EN-US">: </span>목적 영상 조사 후<span lang="EN-US">, </span>역변환에 의해 원 영상 안에서 목적화소를 생성하기 위한 기법</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><b style="mso-bidi-font-weight: normal"><u><span lang="EN-US">cvResize</span></u></b><span lang="EN-US"> : </span>보간법 수행 함수</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><b style="mso-bidi-font-weight: normal"><u>공간 주파수</u></b><span lang="EN-US">: </span>영상의 주기적 요소에 대한 특징 요소<span lang="EN-US">, </span>화소값의 변화율</span></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 38pt; TEXT-INDENT: -18pt; mso-para-margin-left: 0gd; mso-list: l1 level1 lfo2"><span lang="EN-US" style="mso-bidi-font-family: '맑은 고딕'; mso-fareast-font-family: '맑은 고딕'; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">-</span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">고주파<span lang="EN-US">: </span>이웃 화소값이 <u>빨리 변화</u>하는 것</span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 38pt; TEXT-INDENT: -18pt; mso-para-margin-left: 0gd; mso-list: l1 level1 lfo2"><span lang="EN-US" style="mso-bidi-font-family: '맑은 고딕'; mso-fareast-font-family: '맑은 고딕'; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">-</span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">저주파<span lang="EN-US">: </span>같은 밝기값을 가지는 영역이나 영상의 밝기값이 <u>천천히 변화</u>하는 부분</span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 38pt; mso-para-margin-left: 0gd"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><b style="mso-bidi-font-weight: normal"><u>영삽입</u><span lang="EN-US">: </span></b><span lang="EN-US">FFT</span>를 구현하는데 있어서 중요한 성질은<span lang="EN-US"> FFT</span>알고리즘은 반복적으로 분해하며 수행하므로<span lang="EN-US">, </span>영상의 크기는 반드시<span lang="EN-US"> 2</span>의 지수승이 되어야만 한다는 것이다<span lang="EN-US">. </span>영상의 넓이가<span lang="EN-US"> 2</span>의 지수승이 아닌 경우 영상 데이터 집합에<span lang="EN-US"> 0</span>을 집어 넣어<span lang="EN-US"> 2</span>의 지수승으로 바꿔야만 하는데 이를 영삽입이라 한다<span lang="EN-US">.</span></span></span></p>			 ]]> 
		</description>
		<category>미분류</category>
		<pubDate>Sat, 31 May 2008 02:19:11 GMT</pubDate>
		<dc:creator>Good_Leo</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 08년 5월 19일 ]]> </title>
		<link>http://gexon.egloos.com/413159</link>
		<guid>http://gexon.egloos.com/413159</guid>
		<description>
			<![CDATA[ 
  <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><b style="mso-bidi-font-weight: normal"><span style="FONT-SIZE: 130%">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OpenCV</span><br><br><br><br>공간영역</b> <span lang="EN-US">– </span>영상을 구성하는 화소들의 집단 또는 공간적 배열</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><b style="mso-bidi-font-weight: normal">마스크<span lang="EN-US">(mask)</span>기반 처리 <span lang="EN-US">:</span></b><span lang="EN-US"> <span style="mso-spacerun: yes">&nbsp;</span>template, window, filter, kernel </span>와 같은 용어</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span>회선<span lang="EN-US">(convolution)</span>은 공간 필터링<span lang="EN-US">(spatial filtering)</span>으로 표현되기도 한다<span lang="EN-US">.</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><b style="mso-bidi-font-weight: normal"><span lang="EN-US">Embossing </span></b>효과<span lang="EN-US">: </span></span></span><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: '맑은 고딕'; POSITION: relative; TOP: 13pt; mso-bidi-font-family: 'Times New Roman'; mso-fareast-theme-font: minor-fareast; mso-bidi-theme-font: minor-bidi; mso-bidi-font-size: 11.0pt; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-text-raise: -13.0pt; mso-ansi-language: EN-US; mso-fareast-language: KO; mso-bidi-language: AR-SA"><?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /><v:shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><v:stroke joinstyle="miter"></v:stroke><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"></v:f><v:f eqn="sum @0 1 0"></v:f><v:f eqn="sum 0 0 @1"></v:f><v:f eqn="prod @2 1 2"></v:f><v:f eqn="prod @3 21600 pixelWidth"></v:f><v:f eqn="prod @3 21600 pixelHeight"></v:f><v:f eqn="sum @0 0 1"></v:f><v:f eqn="prod @6 1 2"></v:f><v:f eqn="prod @7 21600 pixelWidth"></v:f><v:f eqn="sum @8 21600 0"></v:f><v:f eqn="prod @7 21600 pixelHeight"></v:f><v:f eqn="sum @10 21600 0"></v:f></v:formulas><v:path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></v:path><o:lock aspectratio="t" v:ext="edit"></o:lock></v:shapetype><v:shape id="_x0000_i1025" style="WIDTH: 42.75pt; HEIGHT: 31.5pt" type="#_x0000_t75"><v:imagedata chromakey="white" o:title="" src="file:///C:\DOCUME~1\GoodLeo\LOCALS~1\Temp\msohtmlclip1\01\clip_image001.png"></v:imagedata></v:shape></span><span lang="EN-US"><span style="mso-spacerun: yes"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></span></span><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: '맑은 고딕'; POSITION: relative; TOP: 13pt; mso-bidi-font-family: 'Times New Roman'; mso-fareast-theme-font: minor-fareast; mso-bidi-theme-font: minor-bidi; mso-bidi-font-size: 11.0pt; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-text-raise: -13.0pt; mso-ansi-language: EN-US; mso-fareast-language: KO; mso-bidi-language: AR-SA"><v:shape id="_x0000_i1025" style="WIDTH: 47.25pt; HEIGHT: 31.5pt" type="#_x0000_t75"> <v:imagedata chromakey="white" o:title="" src="file:///C:\DOCUME~1\GoodLeo\LOCALS~1\Temp\msohtmlclip1\01\clip_image002.png"></v:imagedata></v:shape></span><span lang="EN-US"><span style="mso-spacerun: yes"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></span></span><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: '맑은 고딕'; POSITION: relative; TOP: 13pt; mso-bidi-font-family: 'Times New Roman'; mso-fareast-theme-font: minor-fareast; mso-bidi-theme-font: minor-bidi; mso-bidi-font-size: 11.0pt; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-text-raise: -13.0pt; mso-ansi-language: EN-US; mso-fareast-language: KO; mso-bidi-language: AR-SA"><v:shape id="_x0000_i1025" style="WIDTH: 51.75pt; HEIGHT: 31.5pt" type="#_x0000_t75"> <v:imagedata chromakey="white" o:title="" src="file:///C:\DOCUME~1\GoodLeo\LOCALS~1\Temp\msohtmlclip1\01\clip_image003.png"></v:imagedata></v:shape></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="mso-spacerun: yes"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></span></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 38pt; TEXT-INDENT: -18pt; mso-para-margin-left: 0gd; mso-list: l2 level1 lfo1"><span lang="EN-US" style="mso-bidi-font-family: '맑은 고딕'; mso-fareast-font-family: '맑은 고딕'; mso-fareast-theme-font: minor-latin; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">1.</span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">RGB </span>컬러 공간 </span><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'; mso-char-type: symbol; mso-symbol-font-family: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"><span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings">à</span></span><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"></span>각<span lang="EN-US"> RGB</span>에 대해 양각효과 회선 </span><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'; mso-char-type: symbol; mso-symbol-font-family: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"><span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings">à</span></span><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"></span>합성 </span><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'; mso-char-type: symbol; mso-symbol-font-family: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"><span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings">à</span></span><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"></span>결과 영상 생성</span></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 38pt; TEXT-INDENT: -18pt; mso-para-margin-left: 0gd; mso-list: l2 level1 lfo1"><span lang="EN-US" style="mso-bidi-font-family: '맑은 고딕'; mso-fareast-font-family: '맑은 고딕'; mso-fareast-theme-font: minor-latin; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">2.</span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">RGB </span>컬러 공간 </span><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'; mso-char-type: symbol; mso-symbol-font-family: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"><span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings">à</span></span><span lang="EN-US"><span style="FONT-FAMILY: 맑은 고딕">HSV</span></span><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'; mso-char-type: symbol; mso-symbol-font-family: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"><span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings">à</span></span><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">V</span>공간에 양각 효과 회선 </span><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'; mso-char-type: symbol; mso-symbol-font-family: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"><span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings">à</span></span><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">RGB</span>컬러 공간 변환 </span></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 38pt; mso-para-margin-left: 0gd"><span style="FONT-SIZE: 100%"><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'; mso-char-type: symbol; mso-symbol-font-family: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"><span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings">à</span></span><span style="FONT-FAMILY: 맑은 고딕">합성 </span><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'; mso-char-type: symbol; mso-symbol-font-family: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"><span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings">à</span></span><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"></span>결과 영상 생성</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><b style="mso-bidi-font-weight: normal">저주파 필터링</b> <span lang="EN-US">– </span>윤곽석 부분을 이루는 고주파 성분이 제거되어 영상이 부드러워지게 된다<span lang="EN-US">.</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span>영상대비가 악화된다는 단점이 있다<span lang="EN-US">.</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span>마스크 크기가 커질수록 주변화소들의 참여범위가 커져서 블러딩이 큰 효과를</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span>얻지만 수행 시간이 증가한다<span lang="EN-US">.</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">블러링<span lang="EN-US">: cvFilter2D(), cvSmooth()<o:p></o:p></span></span></span></b></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">cvSmooth()</span>함수의 기능</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp;</span><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span>기본 블러링<span lang="EN-US">(simple blurring)</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span>가우시안 블러링<span lang="EN-US">(Gaussian blurring)</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span>중간값 블러링<span lang="EN-US">(median blurring)</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span>바이래터럴 스무딩<span lang="EN-US">(bilateral smoothing)</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><b style="mso-bidi-font-weight: normal">잡음<span lang="EN-US">:</span></b><span lang="EN-US"> 1. </span>임펄스 잡음<span lang="EN-US">(impulse noise)</span></span></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 57.75pt; TEXT-INDENT: -18pt; mso-para-margin-left: 0gd; mso-list: l1 level1 lfo2"><span lang="EN-US" style="mso-bidi-font-family: '맑은 고딕'; mso-fareast-font-family: '맑은 고딕'; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">-</span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">0</span>과<span lang="EN-US"> 255 </span>최대 최소로만 이루어져 있음<span lang="EN-US">, </span></span></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 57.75pt; TEXT-INDENT: -18pt; mso-para-margin-left: 0gd; mso-list: l1 level1 lfo2"><span lang="EN-US" style="mso-bidi-font-family: '맑은 고딕'; mso-fareast-font-family: '맑은 고딕'; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">-</span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">이 경우 주변 화소들의 평균값에 기반을 두는 블러링 기법의 한계상 제거할 수 없음</span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 57.75pt; mso-para-margin-left: 0gd"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">이 때는 최소<span lang="EN-US">/</span>최대값 필터링을 사용한다<span lang="EN-US">. </span></span></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 42.5pt; TEXT-INDENT: -18pt; mso-para-margin-left: 0gd; mso-list: l0 level1 lfo3"><span lang="EN-US" style="mso-bidi-font-family: '맑은 고딕'; mso-fareast-font-family: '맑은 고딕'; mso-fareast-theme-font: minor-latin; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">2</span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">가우시안 잡음<span lang="EN-US">(Gaussian noise)</span></span></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 57.75pt; TEXT-INDENT: -18pt; mso-para-margin-left: 0gd; mso-list: l1 level1 lfo2"><span lang="EN-US" style="mso-bidi-font-family: '맑은 고딕'; mso-fareast-font-family: '맑은 고딕'; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">-</span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">블러링으로 어느 정도 제거 가능하다</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><b style="mso-bidi-font-weight: normal">샤프닝</b> <span lang="EN-US">– </span>샤프닝 마스크는 모든 계수의 합은<span lang="EN-US"> 1</span>이되<span lang="EN-US">, </span>중심계수는 양의 값을 갖고 있다<span lang="EN-US">. </span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span>중심 계수 위치에 있는 원래 화소값이 더 강조되고<span lang="EN-US">, </span>경계선이 두드러지게 된다<span lang="EN-US">.</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span>잡음의 분포를 증가시킨다<span lang="EN-US">.</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><br><br>고주파 지원 필터링<span lang="EN-US"><o:p></o:p></span></span></span></b></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 38pt; TEXT-INDENT: -18pt; mso-para-margin-left: 0gd; mso-list: l3 level1 lfo4"><span lang="EN-US" style="mso-bidi-font-family: '맑은 고딕'; mso-fareast-font-family: '맑은 고딕'; mso-fareast-theme-font: minor-latin; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">1.</span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">원 영상에 밝기값을 곱하면 더 밝아진 영상<span lang="EN-US"> A</span>를 얻는다<span lang="EN-US">.</span></span></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 38pt; TEXT-INDENT: -18pt; mso-para-margin-left: 0gd; mso-list: l3 level1 lfo4"><span lang="EN-US" style="mso-bidi-font-family: '맑은 고딕'; mso-fareast-font-family: '맑은 고딕'; mso-fareast-theme-font: minor-latin; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">2.</span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">원 영상에 저주파 필터링을 한 영상<span lang="EN-US"> B</span>를 얻는다<span lang="EN-US">.</span></span></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 38pt; TEXT-INDENT: -18pt; mso-para-margin-left: 0gd; mso-list: l3 level1 lfo4"><span lang="EN-US" style="mso-bidi-font-family: '맑은 고딕'; mso-fareast-font-family: '맑은 고딕'; mso-fareast-theme-font: minor-latin; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">3.</span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">A </span>영상과<span lang="EN-US"> B</span>영상간의 차 연산을 수행하여 결과 영상을 얻는다<span lang="EN-US">.</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><b style="mso-bidi-font-weight: normal">에지</b><span lang="EN-US"> : <span style="mso-tab-count: 1">&nbsp; </span>1. </span>라인에지<span lang="EN-US"> : </span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span>밝기 값이 갑자기 변하나 특정 구간을 지나 다시 원래값으로 돌아오는 부분</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 39.75pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 39.75pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">2 </span>루프 에지</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 39.75pt"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">잡음 제거 후의 라인 에지 부분</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 39.75pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 39.75pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">3 </span>스텝 에지</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 39.75pt"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">밝기 값이 갑자기 변하는 부분</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 39.75pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 38pt; mso-para-margin-left: 0gd"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">4<span style="mso-spacerun: yes">&nbsp; </span></span>램프 에지<span lang="EN-US"> .</span></span></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 38pt; mso-para-margin-left: 0gd"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">잡음 제거 후의 스텝 에지 부분</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p>			 ]]> 
		</description>
		<category>미분류</category>
		<pubDate>Sat, 31 May 2008 02:18:32 GMT</pubDate>
		<dc:creator>Good_Leo</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 08년 5월 15일  ]]> </title>
		<link>http://gexon.egloos.com/413147</link>
		<guid>http://gexon.egloos.com/413147</guid>
		<description>
			<![CDATA[ 
  <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="FONT-SIZE: 130%">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OpenCV</span><br><br><br><br>영상의 일반적인 정의<span lang="EN-US">: </span>컬러를 표현하는 화소값의 배열<span lang="EN-US"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></span></span></span></b></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><table class="MsoTableGrid" style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-yfti-tbllook: 1184; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt" cellspacing="0" cellpadding="0" border="1"><tbody><tr style="mso-yfti-irow: 0; mso-yfti-firstrow: yes"><td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 230.6pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent; mso-border-alt: solid black .5pt; mso-border-themecolor: text1" valign="top" width="307"><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">출판 작업</span></p></td><td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: #ece9d8; WIDTH: 230.6pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1" valign="top" width="307"><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">인쇄 시스템</span></p></td></tr><tr style="mso-yfti-irow: 1; mso-yfti-lastrow: yes"><td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 230.6pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1" valign="top" width="307"><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">일반적인 영상처리</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">같은 빛의 삼원색의 원리를 따름</span></p></td><td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: #ece9d8; WIDTH: 230.6pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" valign="top" width="307"><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">비친 빛을 반사함<span lang="EN-US">(reflective color)</span>에 기반을 둔 감법색<span lang="EN-US">(subtractive)</span>의 원리에 따라 인쇄</span></p></td></tr></tbody></table><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><table class="MsoTableGrid" style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-yfti-tbllook: 1184; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt" cellspacing="0" cellpadding="0" border="1"><tbody><tr style="mso-yfti-irow: 0; mso-yfti-firstrow: yes"><td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 196.8pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent; mso-border-alt: solid black .5pt; mso-border-themecolor: text1" valign="top" width="262"><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">그래픽 카드</span></p></td><td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: #ece9d8; WIDTH: 264.4pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1" valign="top" width="353"><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">모니터</span></p></td></tr><tr style="mso-yfti-irow: 1; mso-yfti-lastrow: yes"><td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 196.8pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1" valign="top" width="262"><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">RGB 3</span>원색을 제외한 모든 색을 </span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">RGB 3</span>원색의 배합에 의해 만들어 냄</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p></td><td style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ece9d8; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: #ece9d8; WIDTH: 264.4pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; BACKGROUND-COLOR: transparent; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" valign="top" width="353"><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">그래픽 카드가 보내는<span lang="EN-US"> RGB</span>값에 따라 서로 다른 전압을 전자총으로 보내 컬러를 조정<span lang="EN-US"> 3</span>개의 전자총에서 스크린 안쪽의 색세포로 전자가 발사되고<span lang="EN-US">, </span>이 전자가 색세포의 형광면에 충돌하면서 빛이 만들어진다<span lang="EN-US">.</span></span></span></p></td></tr></tbody></table><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><u><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">컬러 공간 처리 방법<span lang="EN-US"><o:p></o:p></span></span></span></u></b></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">영상읽기<span lang="EN-US">(cvLoadImage()) </span></span><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'; mso-char-type: symbol; mso-symbol-font-family: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"><span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings">à</span></span><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">RGB </span>컬러 공간 변환 </span><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'; mso-char-type: symbol; mso-symbol-font-family: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"><span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings">à</span></span><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"></span>변환 컬러 공간 채널 분리 </span><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'; mso-char-type: symbol; mso-symbol-font-family: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"><span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings">à</span></span><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"></span>영상 조작 </span><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'; mso-char-type: symbol; mso-symbol-font-family: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"><span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings">à</span></span><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"></span>변환 컬러 공간 채널 조합 </span><span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-hansi-font-family: '맑은 고딕'; mso-ascii-font-family: '맑은 고딕'; mso-char-type: symbol; mso-symbol-font-family: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"><span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings">à</span></span><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">RGB</span>컬러 공간 역 변환</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">1600</span>만 컬러<span lang="EN-US"> - 24</span>비트<span lang="EN-US">: 2^3 * 2^3 * 2^3 = 1600</span>만</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><u><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">다중 영상 출력을 위한<span lang="EN-US"> CMultiChannelViewer<o:p></o:p></span></span></span></u></b></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>CMultiChannelViewer mcv(2, 2);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>mcv.GS_setPosition( 0, 0, rgb_image, "Original image");</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>mcv.GS_setPosition( 0, 1, red, "Red channel");</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>mcv.GS_setPosition( 1, 0, green, "Green channel");</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>mcv.GS_setPosition( 1, 1, blue, "Blue channel");</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><u><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">단일영상에 대한 산술연산 함수<span lang="EN-US"><o:p></o:p></span></span></span></u></b></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">덧셈 연산<span lang="EN-US"> - cvAddS </span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">뺄셈 연산 <span lang="EN-US">– cvSubS</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p>			 ]]> 
		</description>
		<category>미분류</category>
		<pubDate>Sat, 31 May 2008 02:15:43 GMT</pubDate>
		<dc:creator>Good_Leo</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 08년 5월 13일 ]]> </title>
		<link>http://gexon.egloos.com/413133</link>
		<guid>http://gexon.egloos.com/413133</guid>
		<description>
			<![CDATA[ 
  <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><b style="mso-bidi-font-weight: normal"><span style="FONT-SIZE: 130%">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OpenCV<p></p><div style="TEXT-ALIGN: center"></div><div style="TEXT-ALIGN: left"></div><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"></p></span><p></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"></p><div style="TEXT-ALIGN: center"></div><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><br><br><u>스크롤 지원</u></b><span lang="EN-US"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>ResizeParentToFit(FALSE) </span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>//</span>시작시 나타나는 창 안 보여주기</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><b style="mso-bidi-font-weight: normal"><u>하얀창 띄우지 않는 방법<span lang="EN-US"> 1 : </span></u></b><u><span lang="EN-US"><o:p></o:p></span></u></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">if(cmdInfo.m_nShellCommand == CCommandLineInfo::FileNew){</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">cmdInfo.m_nShellCommand = CCommandLineInfo::FileNothing; }</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><u><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">하얀창 띄우지 않는 방법<span lang="EN-US"> 2 : App</span>의<span lang="EN-US"> Inininstance</span>에서 아래 부분을 주석 처리한다<span lang="EN-US">.<o:p></o:p></span></span></span></u></b></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="mso-tab-count: 1"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>// Dispatch commands specified on the command line</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>//<span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>if (!ProcessShellCommand(cmdInfo))</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>//<span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>return FALSE;</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><u><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">드래그앤 드롭 지원하기<span lang="EN-US"><o:p></o:p></span></span></span></u></b></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>pMainFrame-&gt;DragAcceptFiles();</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><u><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">모든 창 닫기<span lang="EN-US"><o:p></o:p></span></span></span></u></b></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></b></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">CWinApp </span>클래스를 상속받는<span lang="EN-US"> *App </span>클래스에서 선언해야 함</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>GetFirstDocTemplatePosition();</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>GetNextDocTemplate()</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>CloseAllDocuments()</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">// TODO: Add your command handler code here</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">POSITION pos;</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">CDocTemplate* pTemplate;</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">// </span>열려있는 모든 도큐먼트 템플릿을 알아낸 후<span lang="EN-US">, </span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span lang="EN-US">// CloseAllDocuments </span>함수 호출한다<span lang="EN-US">.</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">pos = GetFirstDocTemplatePosition();</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">while( pos != NULL )</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">{</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">pTemplate = GetNextDocTemplate(pos);</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">pTemplate-&gt;CloseAllDocuments(FALSE);</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">}</span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><b style="mso-bidi-font-weight: normal"><u><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">클립보드에 이미지를 복사하는 순서<span lang="EN-US"><o:p></o:p></span></span></span></u></b></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 38pt; TEXT-INDENT: -18pt; mso-para-margin-left: 0gd; mso-list: l0 level1 lfo1"><span lang="EN-US" style="mso-bidi-font-family: '맑은 고딕'; mso-fareast-font-family: '맑은 고딕'; mso-fareast-theme-font: minor-latin; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">1.</span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">먼저 클립보드를 열고<span lang="EN-US">(OpenClipboard) </span>데이터를 복사<span lang="EN-US">(SetClipboardData)</span>하고 클립보드를 다시 닫아준다<span lang="EN-US">(CloseClipboard). </span>먼저 클립보드를 열어준다<span lang="EN-US">.</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>::OpenClipboard(NULL);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 38pt; TEXT-INDENT: -18pt; mso-para-margin-left: 0gd; mso-list: l0 level1 lfo1"><span lang="EN-US" style="mso-bidi-font-family: '맑은 고딕'; mso-fareast-font-family: '맑은 고딕'; mso-fareast-theme-font: minor-latin; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">2.</span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">클립보드에 데이터를 복사해 준다<span lang="EN-US">. </span>클립보드는<span lang="EN-US"> OS</span>가 관리하는 메모리 공유 공간이므로 다양한 데이터가 복사될 수 있다<span lang="EN-US">. </span>복사되는 데이터 타입을 정해주는 옵션이<span lang="EN-US"> SetClipboardData</span>함수의 첫번째 인자이다<span lang="EN-US">. </span>예를 들면<span lang="EN-US"> CF_DIB</span>은 장치 독립 비트맵을 가리키고<span lang="EN-US"> CF_TEXT</span>는 텍스트<span lang="EN-US">, CF_RIFF</span>는 오디오데이터를 가리킨다<span lang="EN-US">.</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>::SetClipboardData(CF_DIB, m_hImage);</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">&nbsp;</span></o:p></span></p><p class="MsoListParagraph" style="MARGIN: 0cm 0cm 0pt 38pt; TEXT-INDENT: -18pt; mso-para-margin-left: 0gd; mso-list: l0 level1 lfo1"><span lang="EN-US" style="mso-bidi-font-family: '맑은 고딕'; mso-fareast-font-family: '맑은 고딕'; mso-fareast-theme-font: minor-latin; mso-bidi-theme-font: minor-latin"><span style="mso-list: Ignore"><span style="FONT-SIZE: 100%; FONT-FAMILY: 맑은 고딕">3.</span><span style="FONT: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span><span style="FONT-SIZE: 100%"><span style="FONT-FAMILY: 맑은 고딕">클립보드를 닫아준다<span lang="EN-US">.</span></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><o:p><span style="