Skip to content
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

Initial crate release #18

Closed
theotherphil opened this issue Oct 11, 2015 · 15 comments
Closed

Initial crate release #18

theotherphil opened this issue Oct 11, 2015 · 15 comments

Comments

@theotherphil
Copy link
Contributor

We don't have to make this polished, just less rough than the code is now.

  • Try to reduce signature bloat a little. Unfortunately I think we're stuck with the I: 'static, I::Pixel: 'static, <I::Pixel as Pixel>::Subpixel: + 'static spam for now (but I'd be very happy to be shown wrong).
  • Check the TODOs for anything easily fixable.
  • Profile performance. I've still not looked at this, but I fear the performance is pretty woeful. If we're 2x slower than, say, OpenCV that's fine for now. If we're 100x slower not so much.
  • Make the existing functions nicer to call, probably with a mix of functions taking loads of options and functions providing sensible defaults for some of those options that forward to the verbose ones.
  • Stop spamming everything directly into master. I'll create a fork and move my future commits to go via pull requests.
  • Set up continuous integration. Anyone want to help with this one?
  • Better readme - give usage examples, and briefly discuss future plans and how to contribute.
  • Add a license.
  • Build on stable.
@theotherphil
Copy link
Contributor Author

I've added pub type VecBuffer<P: Pixel> = ImageBuffer<P, Vec<P::Subpixel>>; to my fork of this crate, which lets me tidy a lot of noise from function signatures. However, it also produces a (spurious in this case) compiler warning. I'm not sure whether the extra neatness is worth adding a compiler warning. Ideally I'd like to just disable the warning in this one place, but I can't see how I'd do that.

@theotherphil
Copy link
Contributor Author

Function signatures are now looking a bit nicer: #19

@softprops
Copy link

looking forward to this being a published crate

@theotherphil
Copy link
Contributor Author

I was holding off on publishing because I expect everything to be very unstable for a while and didn't want to annoy everyone with constant breaking changes.

However, if there's demand for this to be in cargo (with the understanding that breaking changes are highly likely) then I can publish this weekend.

@softprops
Copy link

I just started exploring the landscape of image processing options in (stable) rust on crates.io. I found and started working with your image crate but the image ops provided were pretty minimal. I was looking for gradient color map support. I saw there was a color map option in that crate but it wasn't clear how to map or create gradients. That's how I happened to stumble on this repo.

I wouldn't mind the breaking changes in pre 1.0 releases. I'd expect them! As that would be the time users can try things out and learn what feels right and what feels wrong :)

@theotherphil
Copy link
Contributor Author

Ok, cool. One stumbling block is that this library currently only builds on nightly rust. I've created #83 to fix this, and I'll have a look at this soon.

@theotherphil
Copy link
Contributor Author

BTW @softprops, what do you mean by gradient colour maps? Googling produced a few mentions of photoshop, but no definitions I could see.

@theotherphil
Copy link
Contributor Author

@theotherphil
Copy link
Contributor Author

I've added @bvssvni as a crate owner.

@tafia
Copy link
Contributor

tafia commented Jan 10, 2016

nice!

@softprops
Copy link

@theotherphil here's a link that may help describe what im trying to figure out how to do http://www.imagemagick.org/Usage/color_mods/#duotone

The idea is to take an image, grayscale it, create a 2 color gradient and somehow map those colors to the grayscale creating a duotone effect.

@theotherphil
Copy link
Contributor Author

Thanks, makes sense. I assume you're after something matching what ImageMagick can do, and I've created #96. If this isn't quite what you were after then please comment there.

@softprops
Copy link

Thanks. Will do!

@bvssvni
Copy link
Contributor

bvssvni commented Jan 11, 2016

I added the PistonCollaborator team as owners on crates.io. Updated Piston overview on the wiki. Imageproc is now listed under "Standalone libraries".

@theotherphil
Copy link
Contributor Author

Great, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants