Comments (3)
There is actually a linear-complexity blur already implemented in Rust, where execution time is independent of blur radius: https://github.com/fschutt/fastblur
I've recently optimized the implementation by a further 2.5x, but not all of my PRs are merged yet, so you'll need to either nag the maintainer to merge them or use my fork.
That repo is more or less a toy, feel free to copypaste it wholesale to imageproc and continue development over here.
from imageproc.
Thanks for the link. (Turns out I didn't get round to looking at this after all. I'm still interested in implementing this functionality, but I'm not sure when it'll get done - if anyone else wants to give this a try they're not going to be stepping on my toes.)
from imageproc.
resvg
crate recently got the linear complexity algorithm linked above to production quality. It now supports alpha channel as well as all color formats that shuffle RGBA. Now it also matches blur rendering in Chrome, so it appears to be correct.
If you want to integrate that algorithm in imageproc, I suggest backporting those changes into fastblur crate as described here and then using that crate from both imageproc and resvg.
from imageproc.
Related Issues (20)
- 100% CPU usage during `imageproc::window::display_image` on Linux HOT 2
- Laplacian edge detection HOT 3
- Hint on how to support font fill transparency in `draw_text_mut()` HOT 1
- Add floodfill HOT 1
- `geometry::min_area_rect` should return `rect::Rect` instead of `[Point; 4]`
- How to convert Canny to rgba for canvas drawing? HOT 3
- How to draw lines with different width? HOT 2
- Calculate the area of a contour
- Panicked while drawing huge ellipse. HOT 1
- Add generalizated convolution filter HOT 4
- Add Dithering [Willing to do it myself] HOT 2
- Interest for a parallel version of match_template? HOT 7
- Any reason for rand dependency to be at 0.7.3 HOT 2
- Testing requires nightly?
- Gaussian blur is loosing value HOT 1
- median_filter is two orders of magnitude slower than opencv::imgproc::median_blur. HOT 3
- Optimized separable filters HOT 1
- adaptive_threshold lacks the delta parameter HOT 2
- intersection_points function in hough.rs has bug if intersection point is in image corner.
- Some arithmetic overflow bugs found by libfuzzer HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from imageproc.