반응형

Linux 명령어 Tip - grep & find

내 대부분의 업무는 윈도우즈 상에서 이루어 진다.

개발환경도 윈도우즈 OS 위에 구축되어 있다.

하지만, 서버는 LINUX환경이라

때때로 Linux 명령어를 사용해야 하는 경우가 있다.

그럴 때마다 인터넷을 뒤져가며 명령어를 찾아서 사용하는데,

이번에 업무를 하면서 grep과 find 명령어에 대해 잘 정리된 블로그를 발견하였다.

필요하면 나중에 다시 참고할 수 있도록,

링크를 남겨 둔다.


http://slgi97.egloos.com/10947881

반응형
반응형

돈, 일하게 하라



주식부자 박영욱의 <돈, 일하게 하라>라는 책을 읽으며

많은 감명을 받았다.

그러면서, 그곳에 소개된 기업 리스트를

나중에 참고하려고 메모해 보았다.

대동공업

보령제약

삼광글라스

삼천리자전거

참좋은레저

알톤스포츠

쎄트렉아이

에스피지

에이티넘잉베스트먼트

대성창투

디피씨

와토스코리아

조광피혁

코엔텍

태평양물산

호텔신라


그밖에, 다음은 주식과 관련된 정보를 얻기 위한 사이트들이다.

djsi

krx green

kodi

kind.krx.co.kr


그리고 다음은, 검색 중 인상 깊었던 블로그들이다.

http://stock79.tistory.com/

http://dividendfarmerdiary.tistory.com/

http://yazine.tistory.com/category/%EB%8F%88%EA%B3%BC%20%ED%88%AC%EC%9E%90%EC%9D%98%20%EC%A7%80%ED%98%9C


반응형
반응형

C# Tips!! 한글과 영어가 섞인 경우의 Format 정렬

 

C#에서 문자열 출력시, 한글 한글자는 영어 2글자 분의 자리를 차지한다.

따라서 일반적인 정렬 방식을 쓰게 되면, 한글과 영어의 차이 때문에 정렬이 안된다.

이럴 때는 바이트수를 계산해서 출력해 주어야 자리수를 맞출 수 있다.

가령, 한글이냐 영어냐에 상관 없이 영어 열자리 간격에 맞추어 오른쪽 정렬로 출력하려면,

다음과 같이 하면 된다.


String strToPrint = "출력할 문자열";

int padLen = 10 - Encoding.Default.GetBytes(strToPrint).Length;

Console.WriteLine("{0}", "".PadLeft(padLen) + strToPrint);


또는, 다음과 같은 방법도 있다.

String strToPrint = "출력할 문자열";

byte[] byte1 = Encoding.Default.GetBytes(strToPrint  + "          ");

byte[] byte2 = new byte[10];

Array.Copy(byte1, byte2, 10);

Console.WriteLine("{0}", Encoding.Default.GetString(byte2));

반응형
반응형

Software release life cycle

소프트웨어를 다운로드하려다 보면,

BETA, ALPHA, RC 등등의 수식어가 뒤에 따라 붙는 것을 볼 수 있다.

BETA나 ALPHA정도는 게임 등을 통해 귀에 익숙해져서

테스트 단계의 버전이라는 것은 알고 있다.

그런데 RC는 무엇인지 잘 몰라서 인터넷을 찾아 보니,

Release Candidate의 약자로, 큰 버그가 보이지 않는 한

정식으로 출시(Release)하게 될 버전이란 의미였다.


Software release life cycle이란 것이 있는데,

우리말로는 소프트웨어 생명주기라고 번역하며,

다음과 같은 주기를 갖는다는 것도 알게 되었다.

  • Pre-alpha
  • Alpha
  • Beta
    • Open beta, Closed beta
  • RTM
  • GA
  • Production or live release, Gold

이 중에서, RTM부터가 출시 단계에 속한다.

 

자세한 내용은, 다음 사이트들에 설명이 잘 되어 있다.

  • 테크넷 블로그
    • http://blogs.technet.com/b/koalra/archive/2009/07/27/beta-rc-rtm.aspx
  • 영어 위키백과
    • https://en.wikipedia.org/wiki/Software_release_life_cycle
  • 한글 위키백과
    • https://ko.wikipedia.org/wiki/%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4_%EC%83%9D%EB%AA%85_%EC%A3%BC%EA%B8%B0


반응형
반응형

Restart

이제 다시 2차 개발로 들어가야 할 시기이다.

1차에서 미비한 점들을 보완해서 개선된 결과물을 만들어 보려 한다.

1차 개발에서 마지막에 발목을 잡은 것은 성능 문제였다.

특히나 떨림보정에서 FPS가 많이 저하되었으며,

안개보정에서도 어느 정도 FPS 저하 현상이 발행하였다.

그래서, 2차 개발의 목표는 다음과 같이 설정하려 한다.

  • 떨림보정, 안개보정에서의 FPS향상
  • 객체 추적 보완

특히나, 이번에는 FPS향상을 위해서 GPU 및 병렬처리 등을 이용할 계획인데,

그러기 위해서는 OpenCV 환경을 다시 설정해야 한다.

따라서, 처음 한주는 새로운 환경 설정을 위해 사용할 것이고,

그 이후로는 각 1차와 마찬가지로 각 기능별 2주씩 잡을 것이다.

반응형

'영상처리 프로젝트' 카테고리의 다른 글

OpenCV 속도 개선 방법  (2) 2015.12.04
OpenCV를 이용한 Blurring, Sharpening  (0) 2015.08.21
1차 개선 완료  (0) 2015.07.21
안개보정 개선  (4) 2015.07.21
객체추적 개선  (0) 2015.07.21
반응형

review

계획한 일정에 맞추어, 1차 개선작업을 완료하였다.

물론, '완료'라고는 하지만 '완료'라고 할 수 없는 '완료'이다.

생각보다는 잘 된 측면도 분명히 있다. 

하지만 또한, 품질과 성능 면에서 새로운 과제를 부여받기도 하였다.

그 내용들을 점검해 보면, 다음과 같다.

  1. 떨림보정
    • 생각보다 잘된 측면이 있다. 이전 알고리즘과 비교해 보면, 확실히 보정이 잘 된다.
    • 하지만, 속도 측면에서 개선의 여지가 많다.
    • 또한, 여러가지 다양한 환경에서도 잘 작동하는지는 두고 볼 일이다.
  2. 객체 추적
    • 사실상 개선이라고 보기는 어려울 것 같다.
    • 템플릿 매칭의 한계를 넘어서기 위해, 다른 알고리즘을 검토해 봐야 할 것 같다.
  3. 안개보정
    • 역시 생각보다는 잘 되었다.
    • 문제는, 떨림보정 만큼은 아니지만 속도 문제가 좀 있다.
    • 또한, 보정 후 영상의 품질을 좀더 좋게 만들기 위한 연구가 필요하다.


반응형

'영상처리 프로젝트' 카테고리의 다른 글

OpenCV를 이용한 Blurring, Sharpening  (0) 2015.08.21
2차 개발 계획  (0) 2015.07.22
안개보정 개선  (4) 2015.07.21
객체추적 개선  (0) 2015.07.21
떨림보정 개선  (0) 2015.07.06
반응형

안개보정

안개보정은, Retinex 알고리즘을 응용하였다.

Retinex에 대한 설명은, 다음 블로그에 잘 나와 있다.

  • https://flowergom.wordpress.com/2011/11/01/retinex-algorithm/

이번 버전에서는, 속도 향상을 위해 몇가지 변형을 하였다.

테스트를 해 보니, 확실히 이전보다 개선된 결과를 얻을 수 있었다.

 

원본1

보정1

 

원본2

보정2

 

원본3

보정3

 

원본4

보정4

 

원본5

보정5

 

원본6

보정6

 

원본7

보정7

반응형

'영상처리 프로젝트' 카테고리의 다른 글

2차 개발 계획  (0) 2015.07.22
1차 개선 완료  (0) 2015.07.21
객체추적 개선  (0) 2015.07.21
떨림보정 개선  (0) 2015.07.06
기존 모듈 분석  (0) 2015.07.03
반응형

Tracking

객체추적은, 개선을 위해 노력했지만 큰 성과를 얻지 못했다.

일단, 이번에 시도했던 내용은 다음과 같다.

  • 기존 모듈의 문제점으로 생각했던 템플릿 변형을 해결하기 위해, 매 프레임마다 템플릿을 갱신하되, 최초 템플릿과의 거리가 일정치 이상 벌어지면 다시 최초 템플릿으로 복귀

결과는 다음과 같다.


샘플1. 기존 버전


샘플1. 신규 버전


샘플2. 기존 버전


샘플2.신규 버전


샘플3.기존 버전


샘플3.신규 버전


* 영상 출저

[VTD] http://cv.snu.ac.kr/research/~vtd/



반응형

'영상처리 프로젝트' 카테고리의 다른 글

1차 개선 완료  (0) 2015.07.21
안개보정 개선  (4) 2015.07.21
떨림보정 개선  (0) 2015.07.06
기존 모듈 분석  (0) 2015.07.03
영상처리 개발 계획  (0) 2015.07.03
반응형

SQL Development

프로젝트를 하면서 새로 알게 된 지식들을 이곳에 정리할 생각이다.


첫번째로, Oracle DB에서의 UPDATE문과 SELECT문의 결합에 관한 내용이다.

TableA를 기초로 하여 TableB를 업데이트하는 경우에

다음과 같은 쿼리문을 사용할 수 있다.


UPDATE

(

SELECT A.col_1 AS A_col_1,

A.col_2 AS A_col_2,

B.col_1 AS B_col_1,

B.col_2 AS B_col_2

FROM TableA A, TableB B

WHERE A.col_3 = B.col_3

AND A.col_4=[value]

)

SET B_col_1 = A_col_1,

B_col_2 = A_col_2



반응형
반응형

시스템 트레이딩을 시작한 이후로, 지금까지 수익을 보기는 커녕

손실을 많이 보고 있다.

물론 한없는 손실을 막기 위해, 주식 투자는 정해진 금액 내에서 하고 있다.

원래 목표는 그 금액을 투자 이윤을 통해 계속 불려나가는 것이었다.

하지만 지금까지, 금액은 50%로 줄어들었다...헉...

어떻게 수익을 낼 수 있을지는 모르겠다.

단지, 그동안 무엇때문에 손실을 봤는지 돌아보면

무엇을 하지 말아야 하는지 정도는 알 수 있을 것 같다.


일단 내가 발견한 가장 위험한 태도는 다음과 같다.

  • 단기에 이익을 보려 하는 태도


시스템 트레이딩이니, 빠른 속도로 주가를 분석하고

직접 투자에서 놓칠 수 있는 타이밍을 잡을 수 있다는 생각으로

여러가지 시도를 해 보았다.

그러다 보니 틱 단위로 주가 변동을 체크하고

빈번하게 주식을 사고 팔게 되었다.

한동안 키움에서 거래수수료를 공제해 주었던 것 같아서 눈치채지 못했지만,

거래가 빈번하면 공연히 수수료만 많이 들어가게 된다.

또한, 아무리 시스템트레이딩이라 해도,

주문이 몰리는 시점에 내가 원하는 가격으로 주식을 사기는 쉽지 않다.

주문이 체결되기 전에 가격이 올라가거나 내려가는 경우가 비일비재하다.

따라서, 초단타매매는 피해야 할 것 같다.

통계에 기반한 예측을 통해 주식을 사거나 팔되,

한번 산 주식은 기본적으로 어느 정도 이상은 보유해야 할 것이다.

무엇이든 적절한 시간을 들여야 하듯이,

오를 것 같은 주식이라도 어느 정도는 기다려주어야 오르고든지 말든지 할 수 있는 것이다.


그래...이제 급하게 매매하는 방법을 버리고,

적절한 기다림을 배워야겠다.

반응형

+ Recent posts