Open3D (C++ API)  0.16.1
ImageIO.h
Go to the documentation of this file.
1// ----------------------------------------------------------------------------
2// - Open3D: www.open3d.org -
3// ----------------------------------------------------------------------------
4// The MIT License (MIT)
5//
6// Copyright (c) 2018-2021 www.open3d.org
7//
8// Permission is hereby granted, free of charge, to any person obtaining a copy
9// of this software and associated documentation files (the "Software"), to deal
10// in the Software without restriction, including without limitation the rights
11// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12// copies of the Software, and to permit persons to whom the Software is
13// furnished to do so, subject to the following conditions:
14//
15// The above copyright notice and this permission notice shall be included in
16// all copies or substantial portions of the Software.
17//
18// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
23// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
24// IN THE SOFTWARE.
25// ----------------------------------------------------------------------------
26
27#pragma once
28
29#include <string>
30
32
33namespace open3d {
34namespace io {
35
38std::shared_ptr<geometry::Image> CreateImageFromFile(
39 const std::string &filename);
40
42std::shared_ptr<geometry::Image> CreateImageFromMemory(
43 const std::string &image_format,
44 const unsigned char *image_data_ptr,
45 size_t image_data_size);
46
50bool ReadImage(const std::string &filename, geometry::Image &image);
51
58bool ReadImageFromMemory(const std::string &image_format,
59 const unsigned char *image_data_ptr,
60 size_t image_data_size,
61 geometry::Image &image);
62
64
75bool WriteImage(const std::string &filename,
77 int quality = kOpen3DImageIODefaultQuality);
78
79bool ReadImageFromPNG(const std::string &filename, geometry::Image &image);
80
81bool WriteImageToPNG(const std::string &filename,
83 int quality = kOpen3DImageIODefaultQuality);
84
85bool ReadImageFromJPG(const std::string &filename, geometry::Image &image);
86
87bool WriteImageToJPG(const std::string &filename,
89 int quality = kOpen3DImageIODefaultQuality);
90
92bool ReadPNGFromMemory(const unsigned char *image_data_ptr,
93 size_t image_data_size,
95
96bool ReadJPGFromMemory(const unsigned char *image_data_ptr,
97 size_t image_data_size,
99
100} // namespace io
101} // namespace open3d
std::shared_ptr< core::Tensor > image
Definition: FilamentRenderer.cpp:202
filament::Texture::Format image_format
Definition: FilamentResourceManager.cpp:212
The Image class stores image with customizable width, height, num of channels and bytes per channel.
Definition: Image.h:53
std::shared_ptr< geometry::Image > CreateImageFromFile(const std::string &filename)
Definition: ImageIO.cpp:61
bool WriteImageToPNG(const std::string &filename, const geometry::Image &image, int quality)
Definition: FilePNG.cpp:91
constexpr int kOpen3DImageIODefaultQuality
Definition: ImageIO.h:63
std::shared_ptr< geometry::Image > CreateImageFromMemory(const std::string &image_format, const unsigned char *image_data_ptr, size_t image_data_size)
Factory function to create an image from memory.
Definition: ImageIO.cpp:105
bool WriteImageToJPG(const std::string &filename, const geometry::Image &image, int quality)
Definition: FileJPG.cpp:98
bool ReadImageFromJPG(const std::string &filename, geometry::Image &image)
Definition: FileJPG.cpp:40
bool ReadImageFromPNG(const std::string &filename, geometry::Image &image)
Definition: FilePNG.cpp:62
bool ReadJPGFromMemory(const unsigned char *image_data_ptr, size_t image_data_size, geometry::Image &image)
Definition: FileJPG.cpp:156
bool ReadImageFromMemory(const std::string &image_format, const unsigned char *image_data_ptr, size_t image_data_size, geometry::Image &image)
Definition: ImageIO.cpp:114
bool ReadImage(const std::string &filename, geometry::Image &image)
Definition: ImageIO.cpp:68
bool ReadPNGFromMemory(const unsigned char *image_data_ptr, size_t image_data_size, geometry::Image &image)
The general entrance for reading an Image from memory.
Definition: FilePNG.cpp:119
bool WriteImage(const std::string &filename, const geometry::Image &image, int quality)
Definition: ImageIO.cpp:86
Definition: PinholeCameraIntrinsic.cpp:35