| OpenCV 4.3.0 Open Source Computer Vision

Classes | Functions
Hierarchical Data Format version 5
Hierarchical Data Format I/O routines

## Classes
class | cv::hdf::HDF5
| Hierarchical Data Format version 5 interface. More...

## Functions
Ptr< HDF5 > | cv::hdf::open (const String &HDF5Filename)
| Open or create hdf5 file. More...

## Detailed Description

## Hierarchical Data Format version 5

In order to use it, the hdf5 library has to be installed, which means cmake should find it using `find_package(HDF5)` .

## Function Documentation

## ◆ open()

Ptr<HDF5> cv::hdf::open | ( | const String & | HDF5Filename | ) |

`#include <opencv2/hdf/hdf5.hpp>`

Open or create hdf5 file.

Parameters

  HDF5Filename | specify the HDF5 filename.

Returns a pointer to the hdf5 object class

Note
  If the specified file does not exist, it will be created using default properties. Otherwise, it is opened in read and write mode with default access properties. Any operations except dscreate() functions on object will be thread safe. Multiple datasets can be created inside a single hdf5 file, and can be accessed from the same hdf5 object from multiple instances as long read or write operations are done over non-overlapping regions of dataset. Single hdf5 file also can be opened by multiple instances, reads and writes can be instantiated at the same time as long as non-overlapping regions are involved. Object is released using close().

- Example below opens and then releases the file.
  // open / auto create hdf5 file
  cv::Ptr<cv::hdf::HDF5> h5io = cv::hdf::open( "mytest.h5" );
  // ...
  // release
  h5io->close();

Visualization of 10x10 CV_64FC2 (Hilbert matrix) using HDFView tool

- Text dump (3x3 Hilbert matrix) of hdf5 dataset using h5dump tool:
  $ h5dump test.h5
  HDF5 "test.h5" {
  GROUP "/" {
  DATASET "hilbert" {
  DATATYPE H5T_ARRAY { [2] H5T_IEEE_F64LE }
  DATASPACE SIMPLE { ( 3, 3 ) / ( 3, 3 ) }
  DATA {
  (0,0): [ 1, -1 ], [ 0.5, -0.5 ], [ 0.333333, -0.333333 ],
  (1,0): [ 0.5, -0.5 ], [ 0.333333, -0.333333 ], [ 0.25, -0.25 ],
  (2,0): [ 0.333333, -0.333333 ], [ 0.25, -0.25 ], [ 0.2, -0.2 ]
  }
  }
  }
  }