Logo by AGUS - Contribute your own Logo!

END OF AN ERA, FRACTALFORUMS.COM IS CONTINUED ON FRACTALFORUMS.ORG

it was a great time but no longer maintainable by c.Kleinhuis contact him for any data retrieval,
thanks and see you perhaps in 10 years again

this forum will stay online for reference
News: Visit us on facebook
 
*
Welcome, Guest. Please login or register. December 02, 2022, 04:16:37 AM


Login with username, password and session length


The All New FractalForums is now in Public Beta Testing! Visit FractalForums.org and check it out!


Pages: [1]   Go Down
  Print  
Share this topic on DiggShare this topic on FacebookShare this topic on GoogleShare this topic on RedditShare this topic on StumbleUponShare this topic on Twitter
Author Topic: generating point cloud files from EXR voxel cube  (Read 2555 times)
Description: some more experimenting with Fragmentarium
0 Members and 1 Guest are viewing this topic.
3dickulus
Global Moderator
Fractal Senior
******
Posts: 1558



WWW
« on: June 28, 2016, 05:34:25 AM »

So, I finally had some time to sit down and do some tinkering...

I was wondering how hard it would be to create 1. voxel files 2. point clouds

1. easy!
    modify the DE-Raytracer-Slicer.frag so that it renders the slice view only.
    then add a linear easing curve for the XLevel slider to transition through the object
    render EXR files @ (for instance) 512x512  512 frames using only 1 subframe http://www.digilanti.org/fragmentarium/slice-test.512x512.mpg
    then use this script (linux bash) to create a single EXR file with all the frames layered from 0-511
Code:
#/bin/bash
# usage: sh ./mkcombined.sh <basename> <resolution>
#    eg: sh ./mkcombined.sh slice-test 512x512x512
exrmultipart -combine -i `ls $1.*.exr` -o $1-combined-$2.exr
   this takes all exr files in the current directory named "slice-test.0000n.exr" and creates "slice-test-combined-512x512x512.exr"
    the exrmultipart command is included with the OpenEXR distribution

I've coded up a loader/viewer that loads these EXR layered cubes as a gl3DTexture and it looks like this... (it's a transparent julia bulb)


2. easier...
I've also coded a wavefront.obj file output and this one looks like this in Blender3D


So I'm on the fence about whether or not this should be a separate tool(s) or if it should be part of Fragmentarium?
As stand-alone tool(s) it could easily be called from script and expanded to other image/obj formats and maybe include generating other stuff like colors and faces etc.
As "built-in" features of Fragmentarium it would require a lot of integrating (very crude implementation right now) to play nicely with the existing GL setup.

The primary function of this is to get 3D printable objects and is not for exploring fractals in depth and in detail.

« Last Edit: July 25, 2016, 12:28:59 AM by 3dickulus, Reason: relevant title » Logged

Resistance is fertile...
You will be illuminated!

                            #B^] https://en.wikibooks.org/wiki/Fractals/fragmentarium
Patryk Kizny
Global Moderator
Fractal Fertilizer
******
Posts: 372



kizny
WWW
« Reply #1 on: June 29, 2016, 11:54:18 PM »

Broken image. Can't see anything!
I tried similar approach some time ago using the former workflow for mb3d voxel stack (but still rendering with fragmentarium as it's way faster). I used orthogonal camera though and a modified de-kn2.

I think that a way better solution than rendering a grid would be to generate a pointcloud with float coordinates.
Then you can use tools like meshlab (on open source end) or (commercial) Geomagic Studio or new Thinkbox Software Sequoia to get very good meshes for printing.
The advantage is better resolution and detail. 512x512x512 grid is mostly unused data and still very low resolution. With pointcloud you get 100% utilization of every byte. Hope you see what I mean.

Can't wait to see the image and sample obj.
Logged

Visual Artist, Director & Cinematographer specialized in emerging imaging techniques.
3dickulus
Global Moderator
Fractal Senior
******
Posts: 1558



WWW
« Reply #2 on: June 30, 2016, 02:12:05 AM »

the wavefront .obj file contains only points, 3.4 million, I think this will be a stand alone proggy that takes a folder full of images, the EXR format works well for this.

(coders) have a look at this http://doc.cgal.org/latest/Manual/packages.html#PartMeshing
edit:                          and this http://pointclouds.org/documentation/tutorials/index.php#features-tutorial
« Last Edit: July 10, 2016, 10:23:22 PM by 3dickulus » Logged

Resistance is fertile...
You will be illuminated!

                            #B^] https://en.wikibooks.org/wiki/Fractals/fragmentarium
_revers_
Conqueror
*******
Posts: 138



« Reply #3 on: June 30, 2016, 04:26:21 PM »

Broken image. Can't see anything!

It is not broken image. It seems like server http://www.digilanti.org is blocked for Poland. Try to open this forum thread (or digilanti.org) by proxy server https://hide.me/en/proxy .
I noticed this when I tried to download a new version of Fragmentarium and the download page was not available for few days ("Error 403 Forbidden" to be exact).

@3dickulus, pretty cool idea! Grin with closed eyes
Logged
3dickulus
Global Moderator
Fractal Senior
******
Posts: 1558



WWW
« Reply #4 on: July 01, 2016, 01:33:42 AM »

@_revers_ ty, it's quite simple really, just based it on a volume render example for gl3dTexture using EXR and wavefront file formats.

My server automatically filters network IPs based on adverse activity, like trying to break in or do XSS, I will study the logs and determine if the culprit is still trying, if it is then it will have to stay that way until it stops or until I isolate the sub-net it's coming from. There would have to be a lot of attempts from different locations in Poland for it to block the entire country, it's probably just a few from the most active/popular IP nets, it usually only prevents a few IPs at a time... the current blocklist is 3372 entries (since last reset) and at first glance it looks like about 3000 from Poland fiery I am confident that it won't allow the bad guys in so I may just reset the list and actively observe instead of leaving it on automatic, until then a proxy should be ok as long as it hasn't been used for an attempt wink

Logged

Resistance is fertile...
You will be illuminated!

                            #B^] https://en.wikibooks.org/wiki/Fractals/fragmentarium
_revers_
Conqueror
*******
Posts: 138



« Reply #5 on: July 01, 2016, 10:31:36 AM »

The page works fine now. Thanks!
Logged
3dickulus
Global Moderator
Fractal Senior
******
Posts: 1558



WWW
« Reply #6 on: July 24, 2016, 07:41:07 PM »

@_revers_  I made a cmdline only prog that converts OpenEXR Multipart files into PCL pointcloud data files, the only requirement/depend is OpenEXR and the code is very minimal, 200 lines with comments, it should be extremely easy to use in any softwares. The test object I  used for the pics is a 512x512x512 juliabulb.

edit: source code zip attached


* points.png (70.68 KB, 640x480 - viewed 257 times.)

* wireframe.png (33.13 KB, 640x480 - viewed 243 times.)

* surface.jpg (101.43 KB, 640x480 - viewed 394 times.)
* exrmultipart2pointcloud.zip (2.97 KB - downloaded 141 times.)
« Last Edit: July 25, 2016, 02:55:19 AM by 3dickulus, Reason: src » Logged

Resistance is fertile...
You will be illuminated!

                            #B^] https://en.wikibooks.org/wiki/Fractals/fragmentarium
Patryk Kizny
Global Moderator
Fractal Fertilizer
******
Posts: 372



kizny
WWW
« Reply #7 on: July 26, 2016, 07:13:38 PM »

Whoa! Loos like a decent progress. Can you share a sample .PCL file?
Logged

Visual Artist, Director & Cinematographer specialized in emerging imaging techniques.
3dickulus
Global Moderator
Fractal Senior
******
Posts: 1558



WWW
« Reply #8 on: July 27, 2016, 06:53:07 AM »

the test file is 92,122,439 bytes so sharing it is a bit impractical, however, it's easy to re-create with this (attached) frag
follow the instructions in the first post, basically render a 512x512 animation with 512 frames using exr format, the default preset should get you there
in a console, cd to the folder with the exr files
execute the script in the first post ( with any path adjustments required to find the exrmultipart command )
this will create a single EXR file that contains all of the images

compile the program in the previous post and execute it like..

Code:
exrmultipart2pointcloud input.exr output.pcd

Where input is an EXR Multipart file of cubic dimensions and output is the generated pointcloud file.


it will also generate a pointcloud from ANY exrmultipart file but has only been tested with a X512 Y512 Z512 cube

* slices.zip (7.47 KB - downloaded 107 times.)
Logged

Resistance is fertile...
You will be illuminated!

                            #B^] https://en.wikibooks.org/wiki/Fractals/fragmentarium
Pages: [1]   Go Down
  Print  
 
Jump to:  

Related Topics
Subject Started by Replies Views Last post
At the Front Images Showcase (Rate My Fractal) element90 0 587 Last post August 31, 2011, 01:16:06 PM
by element90
Pandora's Box front view Mandelbulb3D Gallery Tahyon 0 447 Last post October 13, 2011, 06:23:24 PM
by Tahyon
Space shuttles in front of the tower of control. Images Showcase (Rate My Fractal) domidup 0 450 Last post May 09, 2012, 10:06:03 AM
by domidup
Generating RGB values from mu Programming blastoff 5 1551 Last post August 17, 2012, 03:42:42 PM
by Adam Majewski
Ray Marching Voxel based Cube World ? Programming glennmarshall 3 1985 Last post August 29, 2013, 10:40:26 PM
by eiffie

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Page created in 0.206 seconds with 25 queries. (Pretty URLs adds 0.012s, 2q)