Comments (10)
Personally, I remain unconvinced that we need to compare against a gold consisting of an entire hologram. I think a subset of 1-10 pixels to high precision should be sufficient to confirm that the same calculation has occurred. On a (slightly) related note, I have switched to including jpeg instead of tiff for new example image files.
from holopy.
JPEG is lossy, so it can't be used for tests. But I'm not sure what you mean by "example image files."
from holopy.
Also, storing the test data seems like a good use case for git large file storage. I think we have at least 1 GB of LFS within the manoharan-lab organization.
from holopy.
@barkls you are probably right that we don't need to compare to entire holograms. However, I am getting a failure on an intensity test that compares to 4 selected values, and am not sure how big of a problem it is, it would be much more reassuring to know that things still matched for some conditions that resembled real usage, rather that just some selected points.
from holopy.
@vnmanoharan should I check the full golds directly into the main repo with lfs? Or still make a separate repo for them and use lfs there.
from holopy.
Although I did suggest using LFS, I actually have no idea how it works or what the best way to do things is. So whatever you think is best.
from holopy.
From looking through the lfs description, it looks like it is probably fine to just use the main repository and will be simpler. The files are only a few MB, so not a big deal to download them with the repo, and using git lfs will avoid bloating up the repo if we revise them.
from holopy.
I have added hdf5 files to my xarray branch (PR #91) with lfs, and it looks like it should work just fine. I think people who want do download the actual files will need to install git lfs, but if you don't install it you will just get little placeholder files, we may need to change the test functions to not error out when they see the lfs placeholders
from holopy.
maybe users who don't have git lfs can compare against a subset of pixels to get the best of both worlds.
from holopy.
Currently what it is configured to do is check the max, min and mean values I think (which are stored in yaml files that are stored in the repository). You could switch it over if you think a subset of the pixels is a better thing to check.
@barkls Can you confirm if the tests choke on the lfs placeholder files? It is probably easier for you to check if you haven't installed it yet than for me to try to figure out uninstalling or simulating uninstalling. Once you confirm that is ok or fix it, please close this issue
from holopy.
Related Issues (20)
- Problems about Scattering Calculations for large distance HOT 4
- Background Grayscale changes HOT 1
- The center of the particle is brighter than the surroundings HOT 1
- Adding a new scattering theory HOT 1
- 3D plotting HOT 1
- Installation HOT 3
- Migrate from Travis CI to GitHub Actions
- Migrate from nose to pytest HOT 1
- Migrate from numpy.distutils to meson HOT 1
- Make maintenance release (3.6)
- Make final release of v3 API (HoloPy 3.7)
- Make new API for HoloPy (version 4) HOT 1
- Calculation of noise_sd should be revised
- Test failing for constructive solid geometry with ADDA 1.4
- Processing and simulation methods for iSCAT data
- Tests failing from run_tests.py HOT 2
- trouble installing the ADDA package HOT 2
- Issue with ps_propagate function
- Issue with Fitting Models to Data: Size and Refractive Index
- How can we add our custom structure for scattering simulation in Holopy?
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 holopy.