sifrc

Python implementation of the Fourier Ring Correlation (FRC) to determine image resolution

https://github.com/prabhatkc/sifrc

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    1 of 4 committers (25.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.4%) to scientific vocabulary

Keywords

frc jupyter-notebook python single-image-resolution-calculation snr2frc-link
Last synced: 6 months ago · JSON representation ·

Repository

Python implementation of the Fourier Ring Correlation (FRC) to determine image resolution

Basic Info
  • Host: GitHub
  • Owner: prabhatkc
  • Language: Jupyter Notebook
  • Default Branch: master
  • Homepage:
  • Size: 18.1 MB
Statistics
  • Stars: 14
  • Watchers: 1
  • Forks: 8
  • Open Issues: 0
  • Releases: 1
Topics
frc jupyter-notebook python single-image-resolution-calculation snr2frc-link
Created over 6 years ago · Last pushed over 1 year ago
Metadata Files
Readme Citation

README.md

siFRC

Highlights

(1) This implementation helps to understand Fourier Ring Correlation (FRC).
(2) It allows one to calculate FRC-based image resolution from a Single Image.

Additional guide

(1) Create demo images: python lenanoisecreation.py.
(2) Go through lenaFRC.ipynb to see the relation between the FRC and the SNR.
(3) Calculate single image resolution using demo images.
(4) Compare FRC value obtained from single image (siFRC) against that obtained from two images using main_2imgs.py.
(5) Added a siFRC result on a rotated image to show that FRC is sensitive to rotation due to the use of the imaginary term in its calculation.

``` usage: main.py [-h] [--input-dir INPUT_DIR] [--output-dir OUTPUTDIR] [--io-plot IOPLOT] [--thres THRES] [--crop] [--frc-len FRCLEN] [--frc-center FRCCENTER]

Python FRC

optional arguments: -h, --help show this help message and exit --input-dir input folder name with experimental images --output-dir output folder name that stores FRC plots (default: ) --io-plot whether to display splitted images and its FRC (default: False) --thres threshold type to be used in the FRC (default: half- bit) --crop whether to pass input images as is or to crop before passing (default: False) --frc-len total length in x-y direction with center as frc_len/2 (default: 400) --frc-center new center of cropped image become (min(image.shape)/2) + frc-center (default: 0) ```

Example usage

python main.py --input-dir './demo_images/noisy_lena_512/' --output-dir 'results/demo_images/noisy_lena_512' --thres 'half-bit'

Final Resolution


==> if the intersection of the FRC curve and the threhold is (P) in x-axis ==> and 1 pixel = q unit (may be [nm] or [um] or [cm]) ==> then the final resolution is (1/P)*q*sqrt(2) unit


Package requirements

numpy, matplotlib, glob, imageio, itertools, scipy

References

M. Van Heel and M. Schatz, “Fourier shell correlation threshold criteria,” Journal of structural biology, vol. 151, no. 3, pp. 250–262, 2005.

S. V. Koho, G. Tortarolo, M. Castello, T. Deguchi, A. Di- aspro, and G. Vicidomini, “Fourier ring correlation simplifies image restoration in fluorescence microscopy,” bioRxiv, p. 535583, 2019.

Owner

  • Name: Prabhat KC
  • Login: prabhatkc
  • Kind: user

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Kc"
  given-names: "Prabhat"
  orcid: ""
- family-names: "De Andrade"
  given-names: "Vincent"
  orcid: "https://orcid.org/0000-0000-0000-0000"
title: "siFRC"
version: 0.0.2
date-released: 2023-04-11
url: "https://github.com/prabhatkc/siFRC"

GitHub Events

Total
  • Issues event: 2
  • Watch event: 5
  • Issue comment event: 1
  • Push event: 1
Last Year
  • Issues event: 2
  • Watch event: 5
  • Issue comment event: 1
  • Push event: 1

Committers

Last synced: 8 months ago

All Time
  • Total Commits: 19
  • Total Committers: 4
  • Avg Commits per committer: 4.75
  • Development Distribution Score (DDS): 0.158
Past Year
  • Commits: 1
  • Committers: 1
  • Avg Commits per committer: 1.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
prabhatkc s****u@g****m 16
Josue Page Vizcaino p****e@g****m 1
prabhatkc p****c@f****v 1
Jacky Ko k****o@k****k 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 8 months ago

All Time
  • Total issues: 2
  • Total pull requests: 2
  • Average time to close issues: about 1 month
  • Average time to close pull requests: about 2 months
  • Total issue authors: 2
  • Total pull request authors: 2
  • Average comments per issue: 1.0
  • Average comments per pull request: 0.5
  • Merged pull requests: 2
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 0
  • Average time to close issues: 4 days
  • Average time to close pull requests: N/A
  • Issue authors: 1
  • Pull request authors: 0
  • Average comments per issue: 1.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • eccemerrin (1)
  • hexane360 (1)
Pull Request Authors
  • pvjosue (1)
Top Labels
Issue Labels
Pull Request Labels