본문 바로가기

분류 전체보기106

include 쌍따옴표와 꺽쇠의 차이 1 2 #include #include "aaa.h" cs 위 두 줄의 차이점은 무엇일까? 보통 은 standard library header 에 사용하고 "" 은 user defined header 사용한다고 알려져 있다. 관용적으로 그렇게 쓰다보니 크게 틀린 말은 아니지만 정확한 이해는 다음과 같다. 먼저 로 되어 있는 include 문은 컴파일러 구현체에 따라 정의된 곳에서 header 를 찾아 그 내용을 가지고 온다. 이때 헤더를 가르키는 문자열은 유일해야 한다. 이 헤더가 가르키는 것이 꼭 파일일 필요도 없다. 다음 "" 로 되어 있는 include 문은 컴파일러 구현체에 따라 정의된 곳에서 해당 파일을 찾아 그 내용을 가지고 온다. 만약 파일을 찾지 못하면, "" 를 로 바꿔 위에서 얘기한 r.. 2018. 7. 31.
Visual Studio 유용한 단축키 정리 (feat.자동정렬) 코딩에 관심 있는 사람이라면 한 번씩 쓸법한 유용한 비주얼 스튜디오 단축키를 정리해 보았다. 그중 내가 유용하다고 생각될만한 단축키는 강조 처리했으니 참고하면 될 것 같다. Ctrl-K, Ctrl-H : 바로가기 설정. ( 작업목록 창에서 확인 가능 ) Ctrl-K, K : 북마크 설정 / 해제 Ctrl-K, L : 북마크 모두 해제 Ctrl-K, N : 북마크 다음으로 이동 Ctrl-K, P : 북마크 이전으로 이동 Ctrl-K, C : 선택한 블록을 모두 주석 처리 Ctrl-K, U : 선택한 블록을 모두 주석 처리 해제 Ctrl-A : 전체 코드 블럭잡기 -> Ctrl-K,F : 선택한 영역 자동 코드 정렬 (이거 다시 찾다가 포스팅하는 중...) Ctrl-F3 : 현재 단어 찾기 -> F3 : 다.. 2018. 7. 26.
Microsoft Visual C++ 프로그래밍 자료형 총정리 자료형크기범위비고char signed char1바이트, 8비트-128~127 unsigned char1바이트, 8비트0~255 short short int2바이트, 16비트-32,768~32,767int 생략 가능unsigned short unsigned short int2바이트, 16비트0~65,535int 생략 가능int signed int4바이트, 32비트-2,147,483,648~ 2,147,483,647 unsigned unsigned int4바이트, 32비트0~4,294,967,295int 생략 가능long long int signed long signed long int4바이트, 32비트-2,147,483,648~ 2,147,483,647int 생략 가능unsigned long unsigne.. 2018. 7. 23.
비주얼 스튜디오 콘솔창 유지 비주얼 스튜디오에서 Visual C++ 빈프로젝트를 생성하고 코드를 작성하여 실행하였으나 콘솔창이 유지되지 못하고 바로 종료되는 현상 다들 한번씩 경험해 보셨을 껍니다. 제가 그래서 아주 간단한 근본적인 해결책을 들고 왓습니다!! 이방법은 비주얼 2017뿐만 아니라 이전버전에서도 적용이 가능합니다 1. 우선 보통 우측에 나타나있는 솔루션 탐색기에서 project탭에 커서를 놓고 마우스 왼쪽을 클릭한 후 속성을 클릭합니다. 2. 구성속성 > 링커 > 시스템 > 하위시스템 탭에서 콘솔을 클릭합니다. 적용버튼을 누르고 확인하면 다시 ctrl+alt키를 눌렀을 때 정상적으로 실행되는 것을 볼 수 있습니다~ 2018. 7. 20.
180720 Converting Realsense Cameca frame to AVI complete 드디어 저번주에 미션 받았던 인텔카메라에서 바로 avi 포멧으로 녹화하는 프로그램을 만들었다!!~실행과 동시에 디렉토리가 생성되어 avi형식으로 RGB(일반영상) Depth(깊이) infrared(적외선) 따로 따로 영상 3개가 각 폴더에 저장되는 프로그램이다.연구를 위한 자료 추출프로그램이라 할 수 있다.이프로젝트를 하며 도움을 많이 받은 블로그를 링크하며 간략한 설명을 첨부한다. http://unanancyowen.com/en/rs_bag2image/ 우선 프로그램을 개발할때 많은 도움이 된 Tsukasa Sugiura씨 블로그이다. 그냥 인텔 realsense SDK만 들여다보며 한숨짓고 있을 때 동아줄이 내려온 기분이었다. 예제를 보며 대략 감을 잡을 수 있었고 무엇보다 코드가 쉽게 구현되어있어서.. 2018. 7. 20.
180717 BAG 파일 자르기 어제 돈사를 가서 돼지 데이터를 받아왔다.이제 예제 프로그램도 받아 왔겟다. bag파일을 잘라서 실험을 해보려한다.bag파일을 자르는 이유는 18분에 용량이 40GB 정도 되기 때문에 로딩하는데 부하가 많이 걸리는 듯 하여 좀 파일을 줄여 시간을 빠르게 하기 위함이다. bag을 잘라보자! 찾아보니 BAG공식 홈페이지에 관련 command가 있었다. 좀 더 알아보니 깊이 bag파일만 쏙 뽑는 command도 있는거 아니겠는가!바로 실행에 들어갔다 가즈아~ 그런데 왜 필터를 했는데 원본파일보다 크기가 클까.. 불안감이 엄습하기 시작했다. rosbag info를 해보니 압축이 안되어서 그런거였다. 무튼 파일총시간을 파악하고 50초정도로 잘라서 최적의 환경에 구축해놓고 변수를 조절해서 어째하니 어느정도 최적값을.. 2018. 7. 17.
180716 ROS 파일을 읽은 후 rs_bag2image 등장! 지난 시간에 ROS를 Ubuntu에 깔고 나서 bag2video.py를 실행해보려 했지만 자꾸 환경변수문제인지 별의별 오류가 발생한다.그래서 다른 방법을 찾기로 했다. How to extract images from a rosbag file and convert them to video 이러한 제목이 눈에 들어왔다. 내가 찾던것이 아닌가 https://coderwall.com/p/qewf6g/how-to-extract-images-from-a-rosbag-file-and-convert-them-to-video 주소를 타고 들어가면 우분투에 ROS를 깔고 rosbag파일을 준비하고 MJPEG Tools [Ubuntu: sudo apt-get install mjpegtools]ffmpeg [Ubuntu: s.. 2018. 7. 17.
[Error, Python] SyntaxError: Missing parentheses in call to 'print' 파이썬3에서 파일을 실행하면 발생하는 오류 중 하나인 SyntaxError: Missing parentheses in call to 'print' 에 대해 알아보자. 알아보니 12345678 try: import roslib; roslib.load_manifest("bag2video") from cv_bridge import CvBridge except: print "Could not find ROS package: cv_bridge" print "If ROS version is pre-Groovy, try putting this package in ROS_PACKAGE_PATH" sys.exit(1) Colored by Color Scriptercs print "Could not find ROS pac.. 2018. 7. 13.
180712 윈도우 10에서 ROS 설치 우분투on windows에 Ros를 설치한 후 기본 홈 경로는 다음과 같다. C:\Users\%USERNAME%\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs\ 이 경로에 실행할 파이썬 파일을 넣고 아래의 작업을 통해 ROS를 설치하자 근데 실행하니 또 이런 오류가 뜬다.. rosbag의 헤더파일이 없는 것 같은데 wiki.ROS.org에 들어가서 rosbag를 찾아보기로 했다 둘의 차이점은 Kinectic Kame은 Ubuntu Wily (15.10) and Ubuntu Xenial (16.04 LTS)에 설치하는거 같고 Melodic Morenia는 좀 더 최신버전인 Ubuntu A.. 2018. 7. 12.
[C++] STL : Standard Template Library 4 -Vector 이번 회는 이전 회에 설명한 list와 같은 STL의 컨테이너 라이브러리인 vector에 대해서 이야기합니다. vector는 STL에서 가장 자주 사용합니다. 프로그래밍을 할 때 가장 자주 사용하는 자료구조는 배열입니다. vector는 배열을 대체하여 사용할 수 있습니다. vector는 배열과 비슷한 면이 많아서 STL 컨테이너 중에서 이해하기가 가장 쉽고 또 어디에 사용해야 하는지 알기 쉽습니다. 앞서 연재한 list에 대한 글을 보신 분들은(또는 아시는 분들은) vector와 사용 방법이 비슷한 점이 많아서 list보다 훨씬 더 빠르게 이해하리라 생각합니다. list에서 이미 언급한 몇몇 부분은 다시 언급하지 않으니 list에 대한 글을 보지 않으신 분은 꼭 보시기 바랍니다. 4.1 vector의 자.. 2018. 7. 11.
180709 .bag 파일에 대해 알아보자! 추가)윈도우 10에서 리눅스설치 오늘은 realsense 카메라로 녹화한 영상을 avi나 다른 영상 압축파일로 변환하는 임무를 받고!역시나 구글신께 도움을 요청했다.하지만 .bag이란 확장자가 많이 쓰이지 않는 듯 했다. 한국어로 된 설명 파일은 거의 없었고 영어로 된파일도 그렇게 많지 않았다. 그래서 부족한 파일을 뒤져 조사해본 결과! A bag is a file format in ROS for storing ROS message data. Bags -- so named because of their .bag extension -- have an important role in ROS, and a variety of tools have been written to allow you to store, process, analyze, a.. 2018. 7. 9.
180709 딥러닝/머신러닝 프레임워크 6종 비교 분석 오늘은 딥러닝/머신러닝 프레임워크에 대해 알아보기로 했다.관련자료를 찾던중 좋은 자료가 있어 소개한다. 지금은 인공 지능의 시대입니다. 머신러닝 및 예측 분석은 이제 거의 모든 현대 비즈니스에 수립되고 필수적이지만 인공 지능은 해당 분야에서 가능한 규모를 확장합니다. 이것은 딥러닝이 가능하도록 만드는 것입니다. 딥러닝이 보다 복잡한 문제를 해결하고보다 정교한 작업을 수행 할 수 있다면 이를 구축하는 것이 자연스럽게 데이터 과학자 및 엔지니어에게 큰 과제가됩니다. 다행히도 복잡성이 심화된 딥러닝 솔루션을 쉽게 구축 할 수 있도록 프레임워크가 다양해지고 있습니다. 모든 프레임워크는 다른 목적으로 제작되었으며 고유한 기능을 제공합니다. 1. TensorFlow가장 인기있는 딥러닝 라이브러리 중 하나인 Tens.. 2018. 7. 9.