diff --git a/.github/workflows/autodoc_tutorials.yml b/.github/workflows/autodoc_tutorials.yml index 42a01701..37859295 100644 --- a/.github/workflows/autodoc_tutorials.yml +++ b/.github/workflows/autodoc_tutorials.yml @@ -40,11 +40,6 @@ jobs: sudo wget https://github.com/jgm/pandoc/releases/download/3.1.8/pandoc-3.1.8-1-amd64.deb sudo dpkg -i pandoc-3.1.8-1-amd64.deb - # Remove whitespaces in filenames of tutorial notebooks only during workflow - - name: remove whitespaces in tutorial filenames - run: | - find $GITHUB_WORKSPACE/tutorial -type f -exec bash -c 'newname="${1// /}"; newname="${newname//-/_}"; mv "$1" "$newname"' bash {} \; - # Execute and convert notebooks - name: execute notebooks run: | diff --git a/docs/index.rst b/docs/index.rst index 1a877e52..396e7c27 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -21,10 +21,9 @@ Single-Event DataFrame (SED) documentation :numbered: :caption: Examples - tutorial/1_Binningfakedata - tutorial/2_ConversionPipelineforexampletime_resolvedARPESdata - tutorial/3_MetadatacollectionandexporttoNeXus - tutorial/Flashenergycalibration + tutorial/1_binning_fake_data + tutorial/2_conversion_pipeline_for_example_time-resolved_ARPES_data + tutorial/3_metadata_collection_and_export_to_NeXus .. toctree:: :maxdepth: 2 diff --git a/docs/tutorial/1_Binningfakedata.rst b/docs/tutorial/1_Binningfakedata.rst deleted file mode 100644 index f4fa9f42..00000000 --- a/docs/tutorial/1_Binningfakedata.rst +++ /dev/null @@ -1,302 +0,0 @@ -Binning demonstration on locally generated fake data -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -In this example, we generate a table with random data simulating a -single event dataset. We showcase the binning method, first on a simple -single table using the bin_partition method and then in the distributed -mehthod bin_dataframe, using daks dataframes. The first method is never -really called directly, as it is simply the function called by the -bin_dataframe on each partition of the dask dataframe. - -.. code:: ipython3 - - import sys - - import dask - import numpy as np - import pandas as pd - import dask.dataframe - - import matplotlib.pyplot as plt - - sys.path.append("../") - from sed.binning import bin_partition, bin_dataframe - -Generate Fake Data ------------------- - -.. code:: ipython3 - - n_pts = 100000 - cols = ["posx", "posy", "energy"] - df = pd.DataFrame(np.random.randn(n_pts, len(cols)), columns=cols) - df - - - - -.. raw:: html - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
posxposyenergy
00.920564-1.0685831.011868
11.101308-1.1331772.264009
2-2.1759910.469750-0.366066
3-1.4140381.505585-1.168827
4-1.239659-0.4014330.055166
............
99995-0.3867480.7964561.208073
99996-1.0120290.886339-0.616620
999971.486870-0.143890-1.772194
99998-1.1691872.560502-0.039270
99999-0.8131201.1529840.006634
-

100000 rows × 3 columns

-
- - - -Define the binning range ------------------------- - -.. code:: ipython3 - - binAxes = ["posx", "posy", "energy"] - nBins = [120, 120, 120] - binRanges = [(-2, 2), (-2, 2), (-2, 2)] - coords = {ax: np.linspace(r[0], r[1], n) for ax, r, n in zip(binAxes, binRanges, nBins)} - -Compute the binning along the pandas dataframe ----------------------------------------------- - -.. code:: ipython3 - - %%time - res = bin_partition( - part=df, - bins=nBins, - axes=binAxes, - ranges=binRanges, - hist_mode="numba", - ) - - -.. parsed-literal:: - - CPU times: user 1.13 s, sys: 18.5 ms, total: 1.14 s - Wall time: 1.19 s - - -.. code:: ipython3 - - fig, axs = plt.subplots(1, 3, figsize=(8, 2.5), constrained_layout=True) - for i in range(3): - axs[i].imshow(res.sum(i)) - - - -.. image:: 1_Binningfakedata_files/1_Binningfakedata_8_0.png - - -Transform to dask dataframe ---------------------------- - -.. code:: ipython3 - - ddf = dask.dataframe.from_pandas(df, npartitions=50) - ddf - - - - -.. raw:: html - -
Dask DataFrame Structure:
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
posxposyenergy
npartitions=50
0float64float64float64
2000.........
............
98000.........
99999.........
-
-
Dask Name: from_pandas, 1 graph layer
- - - -compute distributed binning on the partitioned dask dataframe -------------------------------------------------------------- - -In this example, the small dataset does not give significant improvement -over the pandas implementation, at least using this number of -partitions. A single partition would be faster (you can try…) but we use -multiple for demonstration purpouses. - -.. code:: ipython3 - - %%time - res = bin_dataframe( - df=ddf, - bins=nBins, - axes=binAxes, - ranges=binRanges, - hist_mode="numba", - ) - - - -.. parsed-literal:: - - 0%| | 0/50 [00:00 -
- Figure -
- - - - - -.. code:: ipython3 - - # Adjust pose alignment, using stored distortion correction - sp.pose_adjustment(xtrans=8, ytrans=7, angle=-4, apply=True, use_correction=True) - - -.. parsed-literal:: - - Calulated thin spline correction based on the following landmarks: - pouter: [[203.2 341.96] - [299.16 345.32] - [350.25 243.7 ] - [304.38 149.88] - [199.52 152.48] - [154.28 242.27]] - pcent: (248.29, 248.62) - - - -.. parsed-literal:: - - interactive(children=(FloatSlider(value=1.0, description='scale', max=1.2, min=0.8, step=0.01), FloatSlider(va… - - - -.. parsed-literal:: - - Button(description='apply', style=ButtonStyle()) - - - -.. raw:: html - - -
-
- Figure -
- -
- - - - -.. parsed-literal:: - - Output() - - - -.. raw:: html - - -
-
- Figure -
- -
- - - -.. code:: ipython3 - - # Apply stored momentum correction - sp.apply_momentum_correction() - - -.. parsed-literal:: - - Adding corrected X/Y columns to dataframe: - Calculating inverse deformation field, this might take a moment... - Dask DataFrame Structure: - X Y t ADC Xm Ym - npartitions=100 - float64 float64 float64 float64 float64 float64 - ... ... ... ... ... ... - ... ... ... ... ... ... ... - ... ... ... ... ... ... - ... ... ... ... ... ... - Dask Name: apply_dfield, 206 graph layers - - -.. code:: ipython3 - - # Apply stored config momentum calibration - sp.apply_momentum_calibration() - - -.. parsed-literal:: - - Adding kx/ky columns to dataframe: - Dask DataFrame Structure: - X Y t ADC Xm Ym kx ky - npartitions=100 - float64 float64 float64 float64 float64 float64 float64 float64 - ... ... ... ... ... ... ... ... - ... ... ... ... ... ... ... ... ... - ... ... ... ... ... ... ... ... - ... ... ... ... ... ... ... ... - Dask Name: assign, 216 graph layers - - -.. code:: ipython3 - - # Apply stored config energy correction - sp.apply_energy_correction() - - -.. parsed-literal:: - - Applying energy correction to dataframe... - Dask DataFrame Structure: - X Y t ADC Xm Ym kx ky tm - npartitions=100 - float64 float64 float64 float64 float64 float64 float64 float64 float64 - ... ... ... ... ... ... ... ... ... - ... ... ... ... ... ... ... ... ... ... - ... ... ... ... ... ... ... ... ... - ... ... ... ... ... ... ... ... ... - Dask Name: assign, 230 graph layers - - -.. code:: ipython3 - - # Apply stored config energy calibration - sp.append_energy_axis() - - -.. parsed-literal:: - - Adding energy column to dataframe: - Dask DataFrame Structure: - X Y t ADC Xm Ym kx ky tm energy - npartitions=100 - float64 float64 float64 float64 float64 float64 float64 float64 float64 float64 - ... ... ... ... ... ... ... ... ... ... - ... ... ... ... ... ... ... ... ... ... ... - ... ... ... ... ... ... ... ... ... ... - ... ... ... ... ... ... ... ... ... ... - Dask Name: assign, 240 graph layers - - -.. code:: ipython3 - - # Apply delay calibration - delay_range = (-500, 1500) - sp.calibrate_delay_axis(delay_range=delay_range, preview=True) - - -.. parsed-literal:: - - Adding delay column to dataframe: - X Y t ADC Xm \ - 0 -0.321605 -0.321605 -0.321605 -0.321605 NaN - 1 365.140758 1002.140758 70101.140758 6317.140758 353.006737 - 2 761.331995 818.331995 75615.331995 6316.331995 790.815006 - 3 691.620712 970.620712 66454.620712 6316.620712 712.539689 - 4 671.418493 712.418493 73026.418493 6317.418493 696.025422 - 5 299.308212 1164.308212 68459.308212 6316.308212 280.497870 - 6 571.333208 665.333208 73903.333208 6316.333208 587.731353 - 7 821.940026 544.940026 72631.940026 6317.940026 844.999420 - 8 817.568542 415.568542 72421.568542 6316.568542 833.916568 - 9 1005.501300 666.501300 72801.501300 6316.501300 1035.284109 - - Ym kx ky tm energy delay - 0 NaN NaN NaN -48.551243 -25.060283 -660.446111 - 1 1032.666031 -1.285379 0.819763 70084.131419 -9.288423 1472.030636 - 2 837.290997 0.070666 0.214618 75614.443517 -16.576951 1471.757635 - 3 981.587499 -0.171780 0.661555 66448.951009 -0.844295 1471.855093 - 4 740.443504 -0.222930 -0.085352 73026.037877 -13.731331 1472.124386 - 5 1185.406635 -1.509965 1.292855 68432.794682 -5.972168 1471.749608 - 6 701.577832 -0.558355 -0.205733 73900.433665 -14.783450 1471.758045 - 7 585.663806 0.238494 -0.564759 72627.785886 -13.216652 1472.300431 - 8 465.755453 0.204167 -0.936157 72411.898402 -12.927652 1471.837483 - 9 706.093044 0.827872 -0.191748 72794.037473 -13.434359 1471.814785 - - -Compute final data volume -------------------------- - -.. code:: ipython3 - - axes = ['kx', 'ky', 'energy', 'delay'] - bins = [100, 100, 200, 50] - ranges = [[-2, 2], [-2, 2], [-4, 2], [-600, 1600]] - res = sp.compute(bins=bins, axes=axes, ranges=ranges) - - - -.. parsed-literal:: - - 0%| | 0/100 [00:00 - - - diff --git a/docs/tutorial/3_MetadatacollectionandexporttoNeXus_files/3_MetadatacollectionandexporttoNeXus_7_3.png b/docs/tutorial/3_MetadatacollectionandexporttoNeXus_files/3_MetadatacollectionandexporttoNeXus_7_3.png deleted file mode 100644 index 439adf93..00000000 Binary files a/docs/tutorial/3_MetadatacollectionandexporttoNeXus_files/3_MetadatacollectionandexporttoNeXus_7_3.png and /dev/null differ diff --git a/docs/tutorial/3_MetadatacollectionandexporttoNeXus_files/3_MetadatacollectionandexporttoNeXus_8_3.png b/docs/tutorial/3_MetadatacollectionandexporttoNeXus_files/3_MetadatacollectionandexporttoNeXus_8_3.png deleted file mode 100644 index a156ffda..00000000 Binary files a/docs/tutorial/3_MetadatacollectionandexporttoNeXus_files/3_MetadatacollectionandexporttoNeXus_8_3.png and /dev/null differ diff --git a/docs/tutorial/3_MetadatacollectionandexporttoNeXus_files/3_MetadatacollectionandexporttoNeXus_8_5.png b/docs/tutorial/3_MetadatacollectionandexporttoNeXus_files/3_MetadatacollectionandexporttoNeXus_8_5.png deleted file mode 100644 index 0cddfaaa..00000000 Binary files a/docs/tutorial/3_MetadatacollectionandexporttoNeXus_files/3_MetadatacollectionandexporttoNeXus_8_5.png and /dev/null differ diff --git a/docs/tutorial/Flashenergycalibration.rst b/docs/tutorial/Flashenergycalibration.rst deleted file mode 100644 index 6a5988e0..00000000 --- a/docs/tutorial/Flashenergycalibration.rst +++ /dev/null @@ -1,86 +0,0 @@ -.. code:: ipython3 - - %load_ext autoreload - %autoreload 2 - - from sed import SedProcessor - import sed - import numpy as np - - # %matplotlib inline - %matplotlib widget - import matplotlib.pyplot as plt - -Try to calibrate energy -======================= - -Spin-integrated branch, E_TOF=10eV ----------------------------------- - -single scan, move sample bias manually every 2000 pulses. - -.. code:: ipython3 - - sp = SedProcessor(runs=[44638], config="config_flash_energy_calib.yaml", system_config={}) - -.. code:: ipython3 - - sp.add_jitter() - -.. code:: ipython3 - - axes = ['sampleBias', 'dldTime'] - bins = [6, 500] - ranges = [[0,6], [40000, 55000]] - res = sp.compute(bins=bins, axes=axes, ranges=ranges) - -.. code:: ipython3 - - sp.load_bias_series(binned_data=res) - -.. code:: ipython3 - - ranges=(44500, 46000) - ref_id=3 - sp.find_bias_peaks(ranges=ranges, ref_id=ref_id) - -.. code:: ipython3 - - ref_id=3 - ref_energy=-.3 - sp.calibrate_energy_axis(ref_id=ref_id, ref_energy=ref_energy, method="lstsq", order=3) - -.. code:: ipython3 - - ref_id=3 - ref_energy=-.3 - sp.calibrate_energy_axis(ref_id=ref_id, ref_energy=ref_energy, method="lmfit") - -.. code:: ipython3 - - sp.append_energy_axis(preview=True) - -.. code:: ipython3 - - axes = ['sampleBias', 'energy'] - bins = [6, 1000] - ranges = [[0,6], [-5, 5]] - res = sp.compute(bins=bins, axes=axes, ranges=ranges) - -.. code:: ipython3 - - plt.figure() - res[3,:].plot() - -.. code:: ipython3 - - axes = ['sampleBias', 'energy', 'dldPosX'] - bins = [6, 100, 480] - ranges = [[0,6], [-2, 1], [420,900]] - res = sp.compute(bins=bins, axes=axes, ranges=ranges) - -.. code:: ipython3 - - plt.figure() - res[3, :, :].plot() - diff --git a/tutorial/1 - Binning fake data.ipynb b/tutorial/1_binning_fake_data.ipynb similarity index 100% rename from tutorial/1 - Binning fake data.ipynb rename to tutorial/1_binning_fake_data.ipynb diff --git a/tutorial/2 - Conversion Pipeline for example time-resolved ARPES data.ipynb b/tutorial/2_conversion_pipeline_for_example_time-resolved_ARPES_data.ipynb similarity index 100% rename from tutorial/2 - Conversion Pipeline for example time-resolved ARPES data.ipynb rename to tutorial/2_conversion_pipeline_for_example_time-resolved_ARPES_data.ipynb diff --git a/tutorial/3 - Metadata collection and export to NeXus.ipynb b/tutorial/3_metadata_collection_and_export_to_NeXus.ipynb similarity index 100% rename from tutorial/3 - Metadata collection and export to NeXus.ipynb rename to tutorial/3_metadata_collection_and_export_to_NeXus.ipynb diff --git a/tutorial/Flash energy calibration.ipynb b/tutorial/Flash energy calibration.ipynb deleted file mode 100755 index dceacdbb..00000000 --- a/tutorial/Flash energy calibration.ipynb +++ /dev/null @@ -1,206 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": null, - "id": "39b2e62a", - "metadata": {}, - "outputs": [], - "source": [ - "%load_ext autoreload\n", - "%autoreload 2\n", - "\n", - "from sed import SedProcessor\n", - "import sed\n", - "import numpy as np\n", - "\n", - "# %matplotlib inline\n", - "%matplotlib widget\n", - "import matplotlib.pyplot as plt" - ] - }, - { - "cell_type": "markdown", - "id": "4d78d236", - "metadata": {}, - "source": [ - "# Try to calibrate energy" - ] - }, - { - "cell_type": "markdown", - "id": "a62f084f", - "metadata": {}, - "source": [ - "## Spin-integrated branch, E_TOF=10eV\n", - "single scan, move sample bias manually every 2000 pulses." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "7dabbe92", - "metadata": {}, - "outputs": [], - "source": [ - "sp = SedProcessor(runs=[44638], config=\"config_flash_energy_calib.yaml\", system_config={})" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "248a41a7", - "metadata": {}, - "outputs": [], - "source": [ - "sp.add_jitter()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "2b867e40", - "metadata": {}, - "outputs": [], - "source": [ - "axes = ['sampleBias', 'dldTime']\n", - "bins = [6, 500]\n", - "ranges = [[0,6], [40000, 55000]]\n", - "res = sp.compute(bins=bins, axes=axes, ranges=ranges)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "62081458", - "metadata": {}, - "outputs": [], - "source": [ - "sp.load_bias_series(binned_data=res)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "424af94e", - "metadata": {}, - "outputs": [], - "source": [ - "ranges=(44500, 46000)\n", - "ref_id=3\n", - "sp.find_bias_peaks(ranges=ranges, ref_id=ref_id)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "034eff42", - "metadata": {}, - "outputs": [], - "source": [ - "ref_id=3\n", - "ref_energy=-.3\n", - "sp.calibrate_energy_axis(ref_id=ref_id, ref_energy=ref_energy, method=\"lstsq\", order=3)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "bbbfe992", - "metadata": {}, - "outputs": [], - "source": [ - "ref_id=3\n", - "ref_energy=-.3\n", - "sp.calibrate_energy_axis(ref_id=ref_id, ref_energy=ref_energy, method=\"lmfit\")" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "e14d6cef", - "metadata": {}, - "outputs": [], - "source": [ - "sp.append_energy_axis(preview=True)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "59c83544", - "metadata": {}, - "outputs": [], - "source": [ - "axes = ['sampleBias', 'energy']\n", - "bins = [6, 1000]\n", - "ranges = [[0,6], [-5, 5]]\n", - "res = sp.compute(bins=bins, axes=axes, ranges=ranges)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "addba4cb", - "metadata": {}, - "outputs": [], - "source": [ - "plt.figure()\n", - "res[3,:].plot()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "1676ec57", - "metadata": {}, - "outputs": [], - "source": [ - "axes = ['sampleBias', 'energy', 'dldPosX']\n", - "bins = [6, 100, 480]\n", - "ranges = [[0,6], [-2, 1], [420,900]]\n", - "res = sp.compute(bins=bins, axes=axes, ranges=ranges)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "ad199c40", - "metadata": {}, - "outputs": [], - "source": [ - "plt.figure()\n", - "res[3, :, :].plot()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "3a4ae88c", - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": ".pyenv", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.8.12" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/tutorial/config_flash_energy_calib.yaml b/tutorial/config_flash_energy_calib.yaml deleted file mode 100755 index 675aee1a..00000000 --- a/tutorial/config_flash_energy_calib.yaml +++ /dev/null @@ -1,102 +0,0 @@ -core: - loader: flash - beamtime_id: 11013410 - year: 2023 - beamline: pg2 - instrument: hextof - paths: - data_raw_dir: "." - data_parquet_dir: "./parquet" - -dataframe: - ubid_offset: 5 - daq: fl1user3 - channels: - - timeStamp: - format: per_train - group_name: "/uncategorised/FLASH.DIAG/TIMINGINFO/TIME1.BUNCH_FIRST_INDEX.1/" - - pulseId: - format: per_electron - group_name: "/uncategorised/FLASH.EXP/HEXTOF.DAQ/DLD1/" - slice: 2 - dldPosX: - format: per_electron - group_name: "/uncategorised/FLASH.EXP/HEXTOF.DAQ/DLD1/" - slice: 1 - dldPosY: - format: per_electron - group_name: "/uncategorised/FLASH.EXP/HEXTOF.DAQ/DLD1/" - slice: 0 - dldTime: - format: per_electron - group_name: "/uncategorised/FLASH.EXP/HEXTOF.DAQ/DLD1/" - slice: 3 - dldAux: - format: per_pulse - group_name : "/uncategorised/FLASH.EXP/HEXTOF.DAQ/DLD1/" - slice: 4 - dldAuxChannels: - sampleBias: 0 - tofVoltage: 1 - extractorVoltage: 2 - extractorCurrent: 3 - cryoTemperature: 4 - sampleTemperature: 5 - crystalVoltage: 6 - dldTimeBinSize: 15 - - - # ADC containing the pulser sign (1: value approx. 35000, 0: 33000) - pulserSignAdc: - format: per_pulse - group_name: "/FL1/Experiment/PG/SIS8300 100MHz ADC/CH6/TD/" - #slice: 0 - - monochromatorPhotonEnergy: - format: per_train - group_name: "/FL1/Beamlines/PG/Monochromator/monochromator photon energy/" - - - # The GMDs can not be read yet... - gmdBda: - format: per_train - group_name: "/FL1/Photon Diagnostic/GMD/Average energy/energy BDA/" - # slice: ":" - - #gmdTunnel: - # format: per_pulse - # group_name: "/FL1/Photon Diagnostic/GMD/Pulse resolved energy/energy tunnel/" - # slice: ":" - - # Here we use the DBC2 BAM as the "normal" one is broken. - bam: - format: per_pulse - group_name: "/uncategorised/FLASH.SDIAG/BAM.DAQ/FL0.DBC2.ARRIVAL_TIME.ABSOLUTE.SA1.COMP/" - - delayStage: - format: per_train - group_name: "/zraw/FLASH.SYNC/LASER.LOCK.EXP/F1.PG.OSC/FMC0.MD22.1.ENCODER_POSITION.RD/dGroup/" - - tof_column: dldTime - bias_column: sampleBias - tof_binning: 3 - - stream_name_prefixes: - pbd: "GMD_DATA_gmd_data" - pbd2: "FL2PhotDiag_pbd2_gmd_data" - fl1user1: "FLASH1_USER1_stream_2" - fl1user2: "FLASH1_USER2_stream_2" - fl1user3: "FLASH1_USER3_stream_2" - fl2user1: "FLASH2_USER1_stream_2" - fl2user2: "FLASH2_USER2_stream_2" - beamtime_dir: - pg2: "/asap3/flash/gpfs/pg2/" - hextof: "/asap3/fs-flash-o/gpfs/hextof/" - wespe: "/asap3/fs-flash-o/gpfs/wespe/" - -nexus: - reader: "mpes" - definition: "NXmpes" - input_files: ["/home/kutnyakd/__beamtimes/Spin_2023/NXmpes_config_HEXTOF_light.json"] diff --git a/tutorial/sed_config.yaml b/tutorial/sed_config.yaml index 8565c8fb..5577b42e 100644 --- a/tutorial/sed_config.yaml +++ b/tutorial/sed_config.yaml @@ -25,18 +25,20 @@ momentum: y_center: 256.0 correction: feature_points: - - - 203.11575556771575 - - 343.1023874450215 - - - 299.9643115931048 - - 346.2942034781325 - - - 351.05271790029917 - - 244.87949469676045 - - - 305.76331680416877 - - 150.31266296600884 - - - 199.64692385066613 - - 152.8942716287488 - - - 153.0 - - 243.0 - - - 249.32627242026467 - - 249.34641745326562 + - - 202.99667164649654 + - 342.9841737181237 + - - 299.87095669185146 + - 346.1951264748602 + - - 350.95080745426304 + - 244.7908230308385 + - - 305.6268110815786 + - 150.20132111991873 + - - 199.5398499983996 + - 152.77801048162016 + - - 153.40923361300395 + - 243.06399842230255 + - - 249.232157094759 + - 249.2577242394875 + include_center: true rotation_symmetry: 6 + use_center: true