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

Alternating solver for intensity correction #166

Merged
merged 5 commits into from
Dec 22, 2023

Conversation

minnerbe
Copy link
Collaborator

In the spirit of the alternating solver for alignment (see #160), I added a similar solver for intensity correction. It works in exactly the same way as the analogue for alignment, but two changes to the existing code were necessary:

  • The rendering method that is used to match intensities between tiles didn't take into account existing intensity filters. It does now. I put this into Render.render rather than VisualizeTools.getUntransformedProcessorWithMasks to preserve my notion of "untransformed" (meaning also no filters).
  • A LinearIntensityMap8BitFilter can now absorb a second filter to emulate chaining of linear functions.

Results

I tested the implementation on one layer of wafer_53 with a 3x3 XY-block layout; see pictures below.
While I can still see some tile boundaries after one run, the results after two runs look qualitatively very close to the baseline (intensity correction without blocks).

  • Original layer: ng-no-ic
  • Reference IC (no blocks): ng-baseline
  • One run of blocked IC: ng-1run
  • Two consecutive runs of blocked IC: ng-2runs

Copy link
Collaborator

@trautmane trautmane left a comment

Choose a reason for hiding this comment

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

looks great!

@trautmane trautmane merged commit 2fd3e5f into newsolver Dec 22, 2023
2 checks passed
@trautmane trautmane deleted the feature/alternating-ic branch December 22, 2023 12:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants