Skip to content

A C/C++ implementation of 360 image conversions.

License

Notifications You must be signed in to change notification settings

MushroomScientist/360-converter

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

360-converter

Overview

Input one of the following type 360 image and convert it to another one.

Faces Cubemap Equirectangular Stereographic

Prerequisites

This project has been tested on:

  • Ubuntu 18.04
  • G++ 7.5.0
  • Clang 6.0.0

The only thing you need is a C/C++ compiler, no other package do you need to install.

Run example

git clone https://github.com/chinhsuanwu/360-converter.git
cd 360-converter
make
make run

Usage

Just directly include the converter.hpp in folder src.

#include "src/converter.hpp"

For example, the conversion from Face to Cube, Equi and Stereo can be shown as below, other conversions can be deduced:

  • To convert from Face to Equi

    Converter::Equi equi = face.toEqui();
  • To get image

    Converter::Image img = equi.getEqui();
  • For Stereo images, you can assign TOP or DOWN, while the default will be DOWN

    Converter::Image img = cube.toStereo(Converter::TOP).getStereo();
    TOP DOWN

  • To load image

    img.img = stbi_load("assets/equi.png", &w, &h, &bpp, CHANNEL_NUM);
    img.w = w, img.h = h;
  • To write image

    stbi_write_png("out/equi.png", img.w, img.h, CHANNEL_NUM, img.img, img.w*CHANNEL_NUM);

Find out more at example.cpp.

Acknowledgement

This project is using stb library for image I/O in example.cpp, great thanks to their excellent work.

About

A C/C++ implementation of 360 image conversions.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 96.2%
  • C++ 3.7%
  • Makefile 0.1%