본문 바로가기

분류 전체보기

ffplay를 통해 udp stack으로 streaming data를 재생하다 https://stackoverflow.com/questions/57002500/is-there-a-module-replace-with-winpcap-and-scapy-in-windows-or-binding-network/57185163#57185163 Is there a module replace with winpcap and scapy in Windows? or binding network-interface directly like using SO_BINDTODEVICE in I'm looking for new solution to play h.264 steaming video ,which is based on 1722 protocol and entered in Ethernet from other d.. 더보기
mongoose에서 min 또는 max 값 찾아서 삭제 mongoose에서 딱히 min이나 max를 찾는 함수는 없는 듯해 좌절하신 분들께.. Enev라는 collection에 접근했을 때, 다음과 같이 max나 min을 찾아 지울 수 있다. 아래 코드는 min값을 지우는 코드 Enev.findOne().sort('date').exec(function(err,doc){ console.log(doc); doc.remove();}); max값을 지우고 싶을 때는 sort('-date')로 고쳐서 사용해보자 -끝- 더보기
ETRI_연구연수생 업무 코멘트-3 ( 주말 출근 ㅎㅎㅎ, 프리코딩시간 ) 그 동안 한 일에 대해서 정리하자면, 처음 제안받은 요구사항대로 샘플 취득을 위한 cs프로그램 개발이 끝난 뒤에,웹 서비스쪽? 으로 작업하고 있습니다. (작업이라 쓰고 삽질이라 함) 딥러닝 엔진을 웹에 연동시키는 작업입니다. 찾아보니 Flask 라는 프레임웍을 이용하면 아파치 서버에 엔진을 올릴 수 있는 것 같더군요. Flask를 이틀 차 살펴본 입장으로는 nodejs와 상당히 유사해서, 끝나는 날까지 서비스 연동 시키는데 성공하지 않을까 하는 자신감이 ㅎㅎ 있습니다. (잡담) 에트리에서 이제 남은 기간은 2주정도 되네요. 떠날 때가 다가오니 2달이 정말 순식간에 지나간다는게 실감이 나네요 ㅎㅎ두 달동안 그래도 나름 바쁘게 지냈던 것 같습니다.연구원분들과 얘기하면서.. 더보기
Mongorestore (feat. SSL) Azure에서 몽고DB를 지원한다.근데 내 db를 azure로 옮기려면 SSL이 필요한데, 보통의 mongorestore라면 먹히지 않는다. ㄷㄷㄷㄷ 단순하게 -ssl 옵션을 붙여주도록 하자. mongorestore --ssl -h ...생략 더보기
Monogo E11000 duplicate key error 최근 db가 몽땅 날라갔다. 전에도 이런적이 있었는데 대체 왜 그런건지 참..그래도 사본 다큐먼트가 좀 있길래 시도를 해보려 했으나 아래와 같은 에러가 뜨면서 되지 않았다. e11000 duplicate key error collection (하 신이시여 왜 제게 이런 시련을....) 이럴 때는 당황하지 말고 퐁퐁을 마시는게 아니라db.yourcollection.dropIndexes() 를 입력해주면 해결 된다. https://stackoverflow.com/questions/24430220/e11000-duplicate-key-error-index-in-mongodb-mongoose (포스트보다 comment가 유용한 상황.. 포스트에서는 dropDatabase( )를 하라는데 넘나 aggresive하.. 더보기
Mongo collection export, import 하기 외부 서버에 있던 데이터를 백업해서 다른 환경의 서버에 사용하고 싶은 상황..mongodb가 설치되어있는 bin 폴더로 접근한다.(내 경우에는 C:\Program Files\MongoDB\Server\3.4\bin) cmd 창을 열어서, 아래 명령어로 collection을 저장한다. mongoexport -h : -d -c -u -p -o json 형태로 저장하고 싶으면 을 output.json 으로 적어준다. (mongod를 실행하지 않아도 된다) mLab에서 제공해주는 내용을 바탕으로 작성* import 하는 방법은 아래 스샷 참고 하세요, 혹은 mlab에서 db선택하고 tool에 보면 안내서 있습니다 Binary Import database mongorestore -h ds133321.mlab.co.. 더보기
ETRI_연구연수생 업무 코멘트-2 15일에 작성하고 일주일마다 정리해서 올린다는 것이 미루고 미루다가 근 3주를 미루고 나서야 적게 되네요..; ETRI에서 진행한 프로젝트로는 샘플데이터 취집을 위한 cs 프로그램 개발이였습니다. 딥러닝에 학습시킬 데이터가 필요한데 그 데이터를 만드는 작업이였죠. 샘플 데이터를 만들고 이진화 작업을 진행하는 일이였습니다. 연구원분들께 인턴에게 바라는 업무를 처음 들었을 때는 '아 노가다 작업만 죽어라 하다 가겠구나~' 싶었는데 인턴으로 와서 노가다성 작업보다는 그래도 스마트한 일을 하다 가야 하지 않겠냐는 배려덕에 하루에 많게는 1시간, 적게는 30분 정도 노가다 작업하고 이후로는 이 노가다 작업을 보다 편하게 할 수 있는 반자동화(?)툴을 만들게 된 것이죠..(지금은 개발이 끝내서 ETRI 업무 20%.. 더보기
git remote 되돌리기 remote에 까지 업로드했는데 특정 commit으로 되돌리고 싶을 때, 로컬은 되지만 원격은 안되는 난감한 경우가 있다. 우선 돌아가고 싶은 버전으로 로컬상으로 초기화(hard)해주고 git push origin +master명령어로 origin도 내 로컬 상황과 똑같이 맞춰주면 된다 ㅎㅎ.. 그럼 현재 내가 갖고 있는 버전으로 remote가 업데이트 된다. (remote상에서 이전 잘못 커밋한 내역은 모두 사라진다) 더보기
비트버킷repo github에 올리기 원하던 내용은 비트버킷에 있는 프로젝트를 깃허브로 옮기는 것이였다.https://stackoverflow.com/questions/22906917/how-to-move-git-repository-with-all-branches-from-bitbucket-to-githubgit clone --mirror https://bitbucket.org/exampleuser/repository-to-mirror.git # Make a bare mirrored clone of the repository cd repository-to-mirror.git git remote set-url --push origin https://github.com/exampleuser/mirrored # Set the push locati.. 더보기
MFC) MainFrame에 접근하기 GetParentFrame( )CMainFrame* myFrame = (CMainFrame* )GetParentFrame( ); GetParentFrame( )의 리턴형이 CWnd* 이기 때문에, CWnd를 상속받아 만드는 CFrame, CDialogue 등 자신이 원하는 클래스에 맞도록 캐스팅해 해당 클래스의 주소를 받아올 수 있습니다.이를 통해서 각 다이얼로그 간의 연결을 보다 쉽게 활용할 수 있습니다.CMainFrame가 자식 다이얼로그를 갖고 있다면, 자식 윈도우가 생성될 때 해당 방법을 통해 CMainFrame 클래스가 갖고 있는 각 자식 윈도우의 포인터에, 자식 윈도우의 주소를 넘겨주면 되기 때문//AFXGetParentFrame을 사용해도 됩니다. AFX는 전역의 의미를 뜻함 더보기
MFC) 메시지루프 순서 관련 MFC 메시지 루프BEGIN_MESSAGE_MAPEND_MESSAGE_MAP사이에 들어가는 ON_WM_머시기 등은 사실 if문이라고 생각하면 된다.그래서 발생 빈도가 높은 메시지일 수록 상위에 배치시키는게 유리하다.(ON_WM_CREATE 같은건 제일 최하단으로 바꾸는게) 계속 중간에 바꾸는건 의미 없으니 프로토 타입이 완성되면 나중에 바꿔주도록 하자 더보기
MFC) Splitter Window 만들기(분할창 만들기) 프로젝트 환경 구성은 MFC SDI 입니다.SDI로 생성시 만날 수 있는 CMainFrame에서 분할창을 만들 수 있습니다.CMainFrame.h에서 분할창 생성을 위한 변수를 선언합니다. CSplitterWnd m_wndSplitter, m_wndSplitter2, m_wndSplitter3; 분할창을 만들기 전에 사전 물밑작업이 필요합니다.다이얼로그를 추가하고 속성에서 Style: Child, Title Bar: False 을 지정합니다.오른쪽 버튼으로 해당 다이얼로그에 대해 클래스 추가해 적절한 이름을 지어줍니다.만든 각각의 다이얼로그는 곧 분할창을 대표할 창이 될 것입니다. 인터넷에는 열을 두 개로 나눈 예는 많은데, 여기서 만들어 볼 분할창은 두가지 입니다. Ver1) FormFolderDlg .. 더보기