Comments (9)
Yes, but the blobs should be in a diminishing/increasing pattern. It can't be totally randomized over the whole page
from augraphy.
This effect can occur when the page doesn't make adequate contact with the scanner bed, or when the glass of the scanner bed has defects or dirt blocking the light path
I think this can be achieved with existing noise and inkblobs augmentations, if they're restricted to sections of the image. Maybe a brightness texturize for good measure.
from augraphy.
Yea, i'm trying to create different patches of noises using _create_blob
and applyBlob
:
But it should be better with blob size >1, right now those noises are in pixel level, each of them are having size==1, doesn't looks good yet.
from augraphy.
I added variable size blobs, looks better now:
Yes, but the blobs should be in a diminishing/increasing pattern. It can't be totally randomized over the whole page
@shaheryar1 Yes, right now the example adding noises to 4 corners of image, so we would need to design different kind of noise pattern to make it more realistic.
Maybe a brightness texturize for good measure.
@proofconstruction I don't quite get this, could you elaborate further ?
from augraphy.
Maybe a brightness texturize for good measure.
@proofconstruction I don't quite get this, could you elaborate further ?
I just mean that the brightness of dots should also vary, in addition to their size. The bottom left corner of the original image has areas with a lighter form of the effect, which we could simulate by changing the brightness of the dots we apply in some area. This would give more variation to the effect than just the gaussian blobs, which look too "regular"
from augraphy.
Maybe a brightness texturize for good measure.
@proofconstruction I don't quite get this, could you elaborate further ?
I just mean that the brightness of dots should also vary, in addition to their size. The bottom left corner of the original image has areas with a lighter form of the effect, which we could simulate by changing the brightness of the dots we apply in some area. This would give more variation to the effect than just the gaussian blobs, which look too "regular"
Okay, but shouldn't be photocopy machine output is always black & white? So the intensity variation might not be relevant here.
from augraphy.
I added several patterns for this augmentation effect:
A combination of them would looks like this:
I think the challenging part is to make them looks natural, so any comment or suggestion based on the current output above?
from augraphy.
I added the colab notebook demo here:
https://colab.research.google.com/drive/1zcLdFEikxrQRQLFFEXiqnw9efevldrid?usp=sharing
from augraphy.
Merged PR #50 solving this.
from augraphy.
Related Issues (20)
- Callable pipeline HOT 2
- Develop Augmentations that Simulate Images Taken by Camera Phone HOT 1
- Add Pattern-based Distortion Generator HOT 6
- Add `InkShifter` Augmentation to Shift Ink Pixels Randomly and Follow Background Shadows
- Add Wrinkled, Crumpled Paper Augmentation HOT 1
- Create Utility Function for Exposing Underlying Pixel Colors
- Empty Pipeline lowers image quality HOT 12
- Add Augmentation for Shadows Cast onto Camera-Sourced Document Images HOT 1
- Create Baseline Performance Benchmark; Apply Initial Optimizations Using Numba HOT 2
- Create Example Using Dataloader for PyTorch and TensorFlow HOT 1
- Add Python 3.11 Support, Drop Python 3.7 HOT 2
- Images Broken in PyPI Listing HOT 2
- Reflected Light from Camera Flash or other Bright Sources HOT 1
- Add Color Shifting / 3D Blur Effect HOT 4
- Improve PageBorder effect HOT 1
- Add support for bounding box, keypoints and mask. HOT 1
- Add `InkColorSwap` to Replace the Color Used for Lettering in a Document HOT 1
- Add `InkMottling` Augmentation to Ensure Ink is Non-Uniform HOT 1
- Add support for image with alpha layer. HOT 1
- Color range in InkBleed is not working 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 augraphy.