• Tistory
    • 태그
    • 위치로그
    • 방명록
    • 관리자
    • 글쓰기
Carousel 01
Carousel 02
Previous Next

OpenCV FileStorage를 이용하여 xml을 읽고 쓰자

Programming/OpenCV 2020. 10. 7. 10:03




OpenCV에서 제공하는 기능 중 FileStorage라는 놈을 이용하여 xml을 읽고 쓰기가 가능하다.

 

대부분의 기능은 iostream과 유사한 형태로 사용 가능해서 바로 쓸 수 있지만 두가지 기능은 알아야 한다.

 

1. Sequence Collection ( "[", "]" )

이 놈은 데이터를 리스트 형태로 관리해 주는 놈으로써 [ ] 를 이용하여 출력한다.

 

2. Mapping Collection ( "{", "}" )

이 놈은 계층을 관리 해 주는 놈으로써 { } 를 이용하여 출력한다. 

 

이 두 기능도 직관적이라 사용이 어렵진 않다. 

 


샘플 코드

FileStorage fs("_sample.xml", FileStorage::WRITE);
time_t date;
time(&date);

fs << "Date" << asctime(localtime(&date));
fs << "ID" << "USER ID";
fs << "Originfilelist" << "[";
fs << "F:/test_video/kinect1/originvideo.mkv";
fs << "F:/test_video/kinect2/originvideo.mkv";
fs << "F:/test_video/kinect3/originvideo.mkv";
fs << "]";

fs << "Sample" << "{";
fs << "Sourcefile" << "F:/test_video/kinect1/originvideo.mkv";
fs << "Filename" << "2_1-r.mkv";
fs << "FilePath" << "F:/test_video/parsing/kinect1/2_1-r.mkv";
fs << "OriginTime" << "00:33:39-00:33:46";
fs << "Memo" << " ";
fs << "Function" << "{";
fs << "Name" << "Function1";
fs << "score" << "N" << "}";
fs << "Function" << "{";
fs << "Name" << "Function2";
fs << "score" << "N";
fs << "}";
fs << "}";

xml 결과

<?xml version="1.0"?>
<opencv_storage>
<Date>"Wed Oct  7 10:01:54 2020&#x0a;"</Date>
<ID>"USER ID"</ID>
<Originfilelist>
  F:/test_video/kinect1/originvideo.mkv
  F:/test_video/kinect2/originvideo.mkv
  F:/test_video/kinect3/originvideo.mkv</Originfilelist>
<Sample>
  <Sourcefile>F:/test_video/kinect1/originvideo.mkv</Sourcefile>
  <Filename>"2_1-r.mkv"</Filename>
  <FilePath>F:/test_video/parsing/kinect1/2_1-r.mkv</FilePath>
  <OriginTime>"00:33:39-00:33:46"</OriginTime>
  <Memo>" "</Memo>
  <Function>
    <Name>Function1</Name>
    <score>N</score></Function>
  <Function>
    <Name>Function2</Name>
    <score>N</score></Function></Sample>
</opencv_storage>

 


(20.11.26. 수정) 위 샘플은 xml 작성규칙에 맞지 않음.

동일 이름의 노드 생성은 규칙에 어긋나기 때문에 위와 같이 생성은 되지만

filestorage를 이용하여 다시 읽을때 문제가 발생한다.

 

동일이름의 노드 생성은 하지 않도록 하자.

 

저작자표시

'Programming > OpenCV' 카테고리의 다른 글

폰트 변경이 가능한 putText를 사용하자  (0) 2021.04.29
OpenCV FileStorage를 이용하여 xml을 읽고 쓰자  (0) 2020.10.07
jpeg 파일 디코딩하기.  (0) 2015.11.11
unsigned char* 형 버퍼를 IplImage 또는 Mat 으로 변환하기.  (0) 2014.08.18
[Function] HoG Destriptor in OpenCV  (0) 2014.01.27
[Function] 영상을 회전 시키기  (0) 2014.01.23
블로그 이미지

매직블럭

작은 지식들 그리고 기억 한조각

트랙백 0개, 댓글 0개가 달렸습니다

댓글을 달아 주세요

  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • ···
  • 17
  • »

카테고리

  • 살다보니.. (414)
    • 주절거림 (3)
    • 취미생활 (36)
      • 지식과 지혜 (3)
      • 풍경이 되어 (4)
      • Memories (17)
      • 엥겔지수를 높여라 (2)
    • mathematics (6)
      • Matrix Computation (2)
      • RandomProcesses (3)
    • English.. (8)
    • Programming (134)
      • C, C++, MFC (51)
      • C# (1)
      • OpenCV (17)
      • Python (47)
      • Git, Docker (3)
      • Matlab (4)
      • Windows (3)
      • Kinect V2 (2)
      • 기타 etc. (6)
    • 전공관련 (73)
      • Algorithm (6)
      • Deep Learning (49)
      • 실습 프로그램 (4)
      • 주워들은 용어정리 (8)
      • 기타 etc. (6)
    • Computer (104)
      • Utility (21)
      • Windows (24)
      • Ubuntu, Linux (55)
      • NAS (2)
      • Embedded, Mobile (2)
    • IT, Device (41)
      • 제품 사용기, 개봉기 (14)
      • 스마트 체험단 신청 (27)
    • Wish List (3)
    • TISTORY TIP (5)
    • 미분류. 수정중 (1)

태그목록

  • Computer Tip
  • ReadString
  • random variable
  • 매트랩
  • 포르투갈
  • matlab
  • 일본
  • 매트랩 함수
  • ColorMeRad
  • 딥러닝
  • CStdioFile
  • 갤럭시노트3
  • SVM
  • LIBSVM
  • 후쿠오카
  • Deep Learning
  • 에누리닷컴
  • 큐슈
  • utility
  • matlab function
  • DeepLearning
  • Convolutional Neural Networks
  • 크롬
  • 스마트체험단
  • 오봉자싸롱
  • DSLR
  • review
  • function
  • 칼로리 대폭발
  • portugal

달력

«   2022/06   »
일 월 화 수 목 금 토
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    
06-28 06:37

LATEST FROM OUR BLOG

  • 골뱅이 연산자의 의미 (행렬곱)..
  • 프린터 용지 부족 문제를 해⋯.
  • [MXNet] 데이터 리스트를 만⋯.
  • 예쁘게 출력하자 pprint - pr⋯.
  • 작업표시줄 미리보기를 리스⋯.
  • 이미지 실제 파일 포맷 확인하기.
  • 알리 등 해외배송 배송상태를⋯.
  • 티스토리 코드블럭 내용을 복⋯.
  • warning 을 on/off 하자.
  • windows 10 파일 선택, 파일⋯.
RSS 구독하기

BLOG VISITORS

  • Total : 1,130,796
  • Today : 26
  • Yesterday : 468

Copyright © 2015 Socialdev. All Rights Reserved.

티스토리툴바