본문 바로가기
반응형

소프트웨어75

영상처리 강좌 1 - 컬러 영상을 그레이스케일 영상으로 변환 영상처리 관련 개념 및 구현을 틈나는대로 정리하여 블로그에 올릴 계획입니다. 편의상 opencv 라이브러리를 사용하여 이미지를 불러와서 Mat 객체에 저장, 이미지를 화면에 보여주기, 파일로 저장 등의 처리를 했습니다. opencv 설치는 아래 글들을 참고하세요. 첫번째 내용은 컬러영상을 그레이스케일 영상으로 변환하는 것입니다. OpenCV에서 보통 이미지를 불러올 때, BGR888 포맷을 사용합니다. 한 픽셀당 Blue 8비트, Green 8비트, Red 8비트 정보가 포함되어 있습니다. RGB라 하지 않고 BGR이라 하는 이유는 메모리상에 저장되는 순서가 Blue, Green, Red 이기 때문입니다. 4개의 픽셀을 예로 들면 다음처럼 저장됩니다.(0,0) (0.. 2018. 5. 15.
Application Memory Dump 분석하기 (part 2) 이 포스트에서는 WinDbg를 사용해 Application 메모리 덤프 (말하자면, 유저 메모리덤프)를 분석하는 방법을 설명합니다. WinDbg를 사용해본 적이 없는 초보자를 대상으로 하는 글이며, 메모리덤프 작성하는 방법을 모르시는 분은 아래의 글을 먼저 읽어 주세요. http://kuaaan.tistory.com/213 우선, Null 포인터에 쓰기를 시도하여 Access Violation을 일으키는 샘플 프로그램을 하나 작성해 보겠습니다. view plaincopy to clipboardprint? #include "stdafx.h" #include void funcC(INT x, INT y, INT z) { LPINT pInt = NULL; *(pInt) = x + y + z; // Crash!!.. 2016. 1. 19.
Application Memory Dump 분석하기 (part 1) 1. "포스트모템 디버깅"과 "메모리 덤프" "포스트 모템"이라는 말은 "사후(死後)"라는 의미입니다. 사후 세계를 믿는 종교를 "포스트모템 신앙"이라고 하죠. "포스트모템 디버깅 (Post Mortem Debugging)" 이라는 말도 대략 비슷한 의미입니다. 디버거가 설치되어 있고 개발환경이 꾸며져 있는 PC에서 문제가 발생한다면야 별 걱정할 게 없겠지만... 그렇지 않다면 문제가 발생한 PC에서 "메모리 덤프"를 작성하여 분석가능한 개발PC로 가져와서 덤프 분석을 수행해야 합니다. 이런 작업을 "포스트모템 디버깅"이라고 합니다. 대략은 아래와 같은 순서로 진행됩니다. 1. 문제가 발생하는 PC에 Just-In-Time Debugger를 등록 (관련된 내용은 여기를 참조) 2. 오류창이 발생하는 현상.. 2016. 1. 19.
[QT/Embedded] 우분투 Qt5 크로스 컴파일 (14/11/26 2차 수정) 환경은 아래와 같습니다. OS: Ubuntu 14.04 LTS (32bit) Cross compiler: arm-linux-gnueabi 1. tslib 설치 git clone https://github.com/kobolabs/tslib * 버그 fix 버전. cd tslib chmod 755 autogen-clean.sh chmod 755 autogen.sh ./autogen-clean.sh ./autogen.sh ./configure --build=i386-linux --host=arm-linux -prefix=/rootech/lib/tslib CC=/usr/local/arm/4.3.1-eabi-armv6/usr/bin/arm-linux-gcc CXX=/usr/local/arm/4.3.1-eabi-a.. 2015. 3. 11.
MFC + SQLite3 연동 테스트 환경 : Windows XP + Visual Studio 6.0 + CppSQLite - C++ Wrapper for SQLite Windows 2003 Server + VIsual Studio 2008(9.0) + CppSQLite - C++ Wrapper for SQLite CppSQLite - C++ Wrapper for SQLite : http://www.codeproject.com/KB/database/CppSQLite.aspx 1. 프로젝트 폴더에 밑에 파일 삽입 sqlite3.lib sqlite3.dll CppSQLite3.h CppSQLite3.cpp 2. Visual Studio 6.0 : ALT+F7 -> Link탭 -> Object/library modules: sqlite3... 2014. 3. 1.
Introduction to GPU programing through AMP C++ Few months ago I tried to learn a bit about GPU programming and I took notes a started to write this post. I am publishing this now even though it's not complete, however being too busy, I am not sure whether I will have the time to get back to this later. Since couple years CUDA (*2007) and OpenCL (*2008) have established themselves as standard frameworks for parallel programming on the GPU. In.. 2013. 10. 27.
반응형