본문 바로가기

연구관련/연구생활61

에잇, 그냥 할 껄, 괜히 꾀부리다 결국 알아낸 것은 원래 하려던 것이 더 빠를 것이라는 것. 논문을 쓰다 보니 다시 한 번, 이번에는 좀 더 방대하게 계산해야 하는 것이 생겼다. Pearson's correlation coefficient 를 계산하는 것인데, 말 그대로 정말 볓 백만번도 넘게 계산해야 한다. 지난 번에 이것 계산하는데 3일 정도 걸렸었는데, 이번에는 데이터 양을 급격히 늘려야 하기 때문에 어쩌면 엄청나게 오래 걸릴지도 모르기 때문에 속도 개선에 돌입. 코딩 전에 우선 좀 더 빠르게 하는 방법이 없을까를 궁리하다가 생각이 난 것은 correlation theorem. 그래, FFT 가 무지하게 빠르다니까 어디 되나 볼까 해서 인터넷좀 찾고 해서 (PCC랑 correlation theorem 을 같이 써 놓은.. 2011. 9. 14.
역시나 1픽셀인가 코딩을 하다 보면 너무 쪼잔해지는게 아닌가, 하는 생각을 할 때가 한두번이 아닌데, 특히나 1픽셀에 의존할 때 그렇다. 1픽셀이 어긋나는 것은 모르면 안 보이는데 알게 되면 계속 눈에 거슬리기 때문에 결국은 처리하게 되곤 한다. 지금도 비슷한데, 그림을 그리면 다음과 같이 나타난다. 위는 확대한 그림인데, 저 회색처럼 나오는 곳이 정수연산을 하면서 버려진 값이다. 즉, 전체 사각형의 폭이 50이고 그려야 할 작은 사각형의 개수가 9 개라면 50/9 를 내림한 값 5 가 작은 네모의 한 폭이 되고, 그러면 결국 50-5*9 = 5, 즉, 5픽셀은 남게 된다. 이것은 결국 모니터에 그리는 것은 픽셀이라는 정수 단위를 사용하기 때문에 이런 일이 발생하는 것인데, 지금까지는 배경색을 검은색으로 해 놓았었기 때문.. 2011. 8. 9.
컴퓨터 접붙이기? 학생들 방이 두 개로 나뉘어지면서(건물 자체가 다른 건물) 프린터기가 좀 애매한 녀석이 이 쪽으로 배정이 되었다. 얘는 자체 네트웍 카드가 없어서 결국 프린터용 컴퓨터 한 대를 따로 마련해서 사용하고 있는데, 이것이 영 아니올시아다. 성능이 너무 안좋아서 부팅되는데만 해도 한 5분은 족히 걸리는 것 같은 느낌이다. 그래서 남아 도는 컴퓨터들 중 그나마 나은 것으로 바꾸려고 이렇게 저렇게 시도를 해 보았는데, 일단 이것보다 썩 나은 것이 없었고, 유일하게 하나 있는 것은 왠일인지 모니터로 신호를 못 보낸다. 그래서, 구관이 명관이라고, 그냥 이것에다가 윈도우즈를 밀고 다시 설치하려고 했다. 스캐너용 소프트웨어 자체가 설치가 안 되었었는데, 그래서 혹시나 운영체제를 다시 설치하면 될까, 하는 마음도 있었지... 2011. 8. 2.
디버깅은 역시나 힘들다 컴파일 에러라든가, 잘못된 메모리 건드려서 프로그램이 죽어버리는 오류는 차라리 쉽다. 컴퓨터도 알 정도인 컴파일 에러는 오타가 대부분일테고, 메모리 잘못 건드려서 죽는 건 대충 어딘지 감이 오니까 쉽게 디버깅 할 수 있다. 문제는 논리적 오류, 프로그램이 죽지도 않고, 결과가 나오긴 했는데, 잘못된 결과가 나왔을 때. 가령, 100개 중 98번째 것만 잘못된다던가, 뭐, 그런 경우. 얼마 전에 이와 비슷한 에러가 있었다. 위와 같은 그림이 만들어 져야 하는데, 계속 저 제일 큰 검은, 둥근 모서리의 사각형이 너무 왼쪽에 그려진다. 실제로는 왼쪽이 잘려 나간다. 처음에는 내가 원본 데이터를 축소하면서 뭔가가 잘못 되어서 잘린다는 느낌이 들었다. 그래서 저 때 변형한 수식을 다시금 곰곰히 되살펴 보았다. 자.. 2011. 7. 21.