-
Notifications
You must be signed in to change notification settings - Fork 81
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
half float support #76
Conversation
Hey @leventt, thanks for the interest! The usual policy in this project is not to extend the PLY format, unless the extensions are already in wide use (https://python-plyfile.readthedocs.io/en/stable/developing.html#contribution-guidelines). I'm not 100% sure what to do in this case. It may be used in one other tool, but also that one tool appears to be proprietary, which inclines me less to interoperate with it. I'm happy to have a discussion about it, though. |
@dranjan thanks for the quick response and I see your point. If the concern is how wide the use case is and if the host application may be open source, I believe COLMAP and OpenEXR projects are open source and they would also produce similar output in conjunction as another example. For the wideness of the use cases... Source of where the half floats come from is actually OpenEXR. It is pretty widely used in VFX & Animation with 16 bit floats. Also worth mentioning, PLY files may become more and more popular with the advent and success of a method called 3D Gaussian Splatting. Currently the exchange format used by most open source implementations of it including the official repo, is PLY. Official implementation doesn't output 16 bit floats necessarily but I think it may become more and more popular that it does. Considering the domains that this method caters to (VFX and CG in general) have popular applications and exchange formats such as EXR with 16 bit float color representations. |
@dranjan any objections after my last message? |
I see your points, but let me get back to you in a day or two. |
Ok, finally got around to this.
My honest opinion is that Metashape, if it is creating PLY files with If the community consensus shifts, or if Greg Turk says this should be allowed, then it becomes a different conversation, but as it is, I don't think it's |
Thanks for your consideration. I will maintain my fork as my dependency.
…On Sat, Dec 16, 2023 at 10:04 Darsh Ranjan ***@***.***> wrote:
Ok, finally got around to this.
- I briefly looked into OpenEXR and I'm not seeing any capability to
output PLY files.
- I briefly looked into COLMAP and although it does support PLY, it
doesn't appear to use half-precision floating-point properties.
- I also looked into a couple of other popular open-source packages
that support PLY and they also don't support half-precision.
- Finally, I checked the original implementation from the author of
the format, which as far as I can see is still being maintained (
https://faculty.cc.gatech.edu/~turk/ply.tar.gz) and it also still only
supports the original property types as documented.
My honest opinion is that Metashape, if it is creating PLY files with half
or float16 properties, is simply generating invalid files. I don't see a
good reason for them not to simply up-cast to float, since that is
well-supported everywhere and can exactly represent all half-precision
values.
If the community consensus shifts, or if Greg Turk says this should be
allowed, then it becomes a different conversation, but as it is, I don't
think it's plyfile's place to extend the format in this way.
—
Reply to this email directly, view it on GitHub
<#76 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAP5M3FKVVXFTFZR5EJ6IH3YJXPCXAVCNFSM6AAAAABAR4ULMOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNJYHA4DSNZUGE>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
As always, we can re-evaluate the situation as circumstances change, but for now: closing. |
Some host applications with PLY file support such as Agisoft Metashape produce half float color (when used with half float image formats such as EXR files).
📚 Documentation preview 📚: https://python-plyfile--76.org.readthedocs.build/en/76/