Add README

This commit is contained in:
Sally Marcher 2025-11-06 18:51:07 +01:00
parent 85e053bc68
commit d6759356d9

38
README.md Normal file
View file

@ -0,0 +1,38 @@
# femtoCAM
This tool records video from Genicam cameras (via https://github.com/AravisProject/aravis), finds peaks in real time multithreaded and exports the data (TODO).
This is a complete re-write of a private code base.
## Output files (TODO):
- `info_[n].txt` (`outputfile`): info text file
- `hitlist_[n].dat` (`hitlistData`): binary file
- `extended_[n].dat` (`wf`): binary file
### info
```
outputfile.open(outputPath + "info_" + to_string(filenumber) + ".txt");
outputfile << "measuredFrames "
<< "threshold "
<< "exposure "
<< "gain "
<< "digitalGain "
<< "adaptive "
<< "contour_min_area "
<< "contour_max_area "
<< "rows "
<< "cols "
<< "multithread"
<<endl;
outputfile << " " << processedFrames << " " << thresholdValue << " " << exposure << " " << gain << " " << digitalGain << " " << adaptive << " " << contourMinArea << " " << contourMaxArea << " " << rowsize << " " << colsize << " "<< processMultithreaded;
```
### hitlist
contains information about how many hits were found on a specific pixel. For each pixel where a hit was found 6 bytes are added to the file in the format: `[<uint16_t> i, <uint16_t> j, <uint16_t> counts]` - TODO: find out if i,j is x,y or y,x
### extended
contains all info about time resolved hits
- 12 byte header: `[<uint32_t> dataRows, <uint32_t> numDataPoints, <uint32_t> processedFrames]`
- `processedFrames * 4` bytes: `[<uint32_t> * processedFrames]`, each corrospoding to the value of hits per frame
- `dataRows * numDatapoints * 2` bytes: `[[<uint16_t> * numDatapoints] * dataRows]` => `numDatapoints = 4`: `[cx, cy, carea, (int)(roundness * 1000.0)]`