Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Object detection controller #19

Open
wants to merge 13 commits into
base: main
Choose a base branch
from
Open

Conversation

szilac
Copy link
Collaborator

@szilac szilac commented Aug 27, 2024

Change Description

I have created the objection detection controller (odc) which brings together and manages the various subsystems, such as the ephemeris service, the image service, etc.
Currently it only manages the ephemeris service via command line interface.

	new file:   forcedphot/odc.py
	new file:   forcedphot/query_args.txt
	new file:   tests/forcedphot/test_odc.py
	modified:   tests/forcedphot/ephemeris/test_data_loader.py
	modified:   tests/forcedphot/test_odc.py
	modified:   src/forcedphot/ephemeris/horizons_interface.py
	modified:   src/forcedphot/ephemeris/miriade_interface.py
	modified:   src/forcedphot/odc.py
	modified:   tests/forcedphot/ephemeris/test_ephemeris_client.py
	modified:   tests/forcedphot/ephemeris/test_horizons_interface.py
	modified:   tests/forcedphot/ephemeris/test_miriade_interface.py
Copy link

github-actions bot commented Aug 27, 2024

Before [b19efc8] After [b5aa3d0] Ratio Benchmark (Parameter)
3.45±1s 1.58±0.7s ~0.46 benchmarks.time_computation
656 1.06k 1.62 benchmarks.mem_list

Click here to view all benchmarks.

@mkelley
Copy link
Collaborator

mkelley commented Aug 27, 2024

Thank you for your contribution to ssoforcedphot, a LINCC Framework package! 🌌 This checklist is meant to remind pull request reviewers of some common things to look for.

  • Do the proposed changes accomplish the desired goals and meet the acceptance criteria of the related issue?
  • Do the proposed changes follow the coding guidelines?
  • Are tests added/updated as needed? Are methods requiring network access mocked for offline testing?
  • Is there sufficient documentation for the changes?

@talister talister requested a review from ijiraq August 27, 2024 17:12
@talister talister self-assigned this Aug 27, 2024
@talister talister requested a review from carrholt August 27, 2024 17:15
Copy link
Collaborator

@akoumjian akoumjian left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would remove all the commented out code, save it to another branch if you want to save it for future use.

else:
self.parser.error("Either provide a CSV/ECSV file or all single query parameters")

def run(self):
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If this is going to become part of a handler in a webserver or API or some kind, I would want to separate out the argument parsing from the actual controller logic. In other words, the function where we step through all the different services should probably take its arguments directly rather than from a self.args.

@mschwamb
Copy link
Member

mschwamb commented Sep 3, 2024

@carrholt and @ijiraq Would you be able to review by Sep10th?

--ecsv:
Path to ECSV file containing input data.

--csv:
Copy link
Collaborator

@carrholt carrholt Sep 10, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should give more info on how the csv file should be set up. Based on the test file, it looks like the column headers are named the specific args? But I may be wrong here.

Copy link
Collaborator

@carrholt carrholt Sep 10, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if used for tests, should be moved a data directory in tests or if it's being used as an example, it should probably still go elsewhere.

service selection, target specification, time range settings, input file
handling, and various service configurations.

Command-line Arguments:
Copy link
Collaborator

@carrholt carrholt Sep 10, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The filter(s) a user wants to query should be an argument for all but the ephemeris service. It should be able to receive a single filter or list of filters (e.g., [g,r])

Copy link
Collaborator

@carrholt carrholt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants