From 1b03f8425de2cd58faa2a60929e249c845643090 Mon Sep 17 00:00:00 2001 From: Luis Maldonado Date: Thu, 25 Jul 2024 14:22:32 +0200 Subject: [PATCH] Initial commit --- .github/dependabot.yml | 13 + .github/workflows/ci-format.yml | 23 + .gitignore | 2 + .pre-commit-config.yaml | 145 +++ LICENSE | 201 +++ README.md | 57 + dicom_viewer/LICENSE | 21 + dicom_viewer/dicom_viewer/__init__.py | 0 dicom_viewer/dicom_viewer/mainwindow.py | 108 ++ dicom_viewer/dicom_viewer/mainwindow.ui | 165 +++ dicom_viewer/dicom_viewer/pointPublisher.py | 49 + dicom_viewer/dicom_viewer/requirements.txt | 6 + .../dicom_viewer/resources/background.png | Bin 0 -> 516032 bytes .../dicom_viewer/threeD/loaddicomfile.py | 190 +++ dicom_viewer/dicom_viewer/threeD/matinqt.py | 25 + .../dicom_viewer/threeD/qpaintlabel3.py | 154 +++ .../threeD/resources/double-arrow-down.png | Bin 0 -> 1788 bytes .../threeD/resources/down_arrow.png | Bin 0 -> 13454 bytes .../dicom_viewer/threeD/threeD_module.py | 412 +++++++ .../dicom_viewer/threeD/threeD_module.ui | 1073 +++++++++++++++++ .../dicom_viewer/threeD/vol_view_module.py | 56 + .../dicom_viewer/threeD/vol_view_module.ui | 159 +++ .../dicom_viewer/twoD/edgefunction.py | 149 +++ .../dicom_viewer/twoD/qpaintlabel2.py | 224 ++++ .../dicom_viewer/twoD/resources/undo.png | Bin 0 -> 21326 bytes dicom_viewer/dicom_viewer/twoD/twoD_module.py | 111 ++ dicom_viewer/dicom_viewer/twoD/twoD_module.ui | 443 +++++++ dicom_viewer/package.xml | 21 + dicom_viewer/readme.md | 82 ++ dicom_viewer/resource/dicom_viewer | 0 dicom_viewer/setup.cfg | 4 + dicom_viewer/setup.py | 27 + dicom_viewer/test/test_copyright.py | 25 + dicom_viewer/test/test_flake8.py | 25 + dicom_viewer/test/test_pep257.py | 23 + doc/placeholder.txt | 3 + haptic_controller/CMakeLists.txt | 123 ++ haptic_controller/LICENSE | 202 ++++ .../haptic_controller/__init__.py | 15 + .../haptic_controller_plugin.xml | 10 + .../haptic_controller/haptic_controller.hpp | 109 ++ .../haptic_controller/visibility_control.h | 56 + haptic_controller/package.xml | 33 + haptic_controller/scripts/markers.py | 81 ++ haptic_controller/src/error_estimation.cpp | 157 +++ haptic_controller/src/haptic_controller.cpp | 404 +++++++ .../src/haptic_controller_parameters.yaml | 71 ++ nitd.repos | 10 + 48 files changed, 5267 insertions(+) create mode 100644 .github/dependabot.yml create mode 100644 .github/workflows/ci-format.yml create mode 100644 .gitignore create mode 100644 .pre-commit-config.yaml create mode 100644 LICENSE create mode 100644 README.md create mode 100644 dicom_viewer/LICENSE create mode 100644 dicom_viewer/dicom_viewer/__init__.py create mode 100644 dicom_viewer/dicom_viewer/mainwindow.py create mode 100644 dicom_viewer/dicom_viewer/mainwindow.ui create mode 100644 dicom_viewer/dicom_viewer/pointPublisher.py create mode 100644 dicom_viewer/dicom_viewer/requirements.txt create mode 100644 dicom_viewer/dicom_viewer/resources/background.png create mode 100644 dicom_viewer/dicom_viewer/threeD/loaddicomfile.py create mode 100644 dicom_viewer/dicom_viewer/threeD/matinqt.py create mode 100644 dicom_viewer/dicom_viewer/threeD/qpaintlabel3.py create mode 100644 dicom_viewer/dicom_viewer/threeD/resources/double-arrow-down.png create mode 100644 dicom_viewer/dicom_viewer/threeD/resources/down_arrow.png create mode 100644 dicom_viewer/dicom_viewer/threeD/threeD_module.py create mode 100644 dicom_viewer/dicom_viewer/threeD/threeD_module.ui create mode 100644 dicom_viewer/dicom_viewer/threeD/vol_view_module.py create mode 100644 dicom_viewer/dicom_viewer/threeD/vol_view_module.ui create mode 100644 dicom_viewer/dicom_viewer/twoD/edgefunction.py create mode 100644 dicom_viewer/dicom_viewer/twoD/qpaintlabel2.py create mode 100644 dicom_viewer/dicom_viewer/twoD/resources/undo.png create mode 100644 dicom_viewer/dicom_viewer/twoD/twoD_module.py create mode 100644 dicom_viewer/dicom_viewer/twoD/twoD_module.ui create mode 100644 dicom_viewer/package.xml create mode 100644 dicom_viewer/readme.md create mode 100644 dicom_viewer/resource/dicom_viewer create mode 100644 dicom_viewer/setup.cfg create mode 100644 dicom_viewer/setup.py create mode 100644 dicom_viewer/test/test_copyright.py create mode 100644 dicom_viewer/test/test_flake8.py create mode 100644 dicom_viewer/test/test_pep257.py create mode 100644 doc/placeholder.txt create mode 100644 haptic_controller/CMakeLists.txt create mode 100644 haptic_controller/LICENSE create mode 100644 haptic_controller/haptic_controller/__init__.py create mode 100644 haptic_controller/haptic_controller_plugin.xml create mode 100644 haptic_controller/include/haptic_controller/haptic_controller.hpp create mode 100644 haptic_controller/include/haptic_controller/visibility_control.h create mode 100644 haptic_controller/package.xml create mode 100755 haptic_controller/scripts/markers.py create mode 100644 haptic_controller/src/error_estimation.cpp create mode 100644 haptic_controller/src/haptic_controller.cpp create mode 100644 haptic_controller/src/haptic_controller_parameters.yaml create mode 100644 nitd.repos diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..05a48fc --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,13 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates + +version: 2 +updates: + - package-ecosystem: "github-actions" + # Workflow files stored in the + # default location of `.github/workflows` + directory: "/" + schedule: + interval: "weekly" diff --git a/.github/workflows/ci-format.yml b/.github/workflows/ci-format.yml new file mode 100644 index 0000000..2c0c0de --- /dev/null +++ b/.github/workflows/ci-format.yml @@ -0,0 +1,23 @@ +# This is a format job. Pre-commit has a first-party GitHub action, so we use +# that: https://github.com/pre-commit/action + +name: Format + +on: + workflow_dispatch: + pull_request: + +jobs: + pre-commit: + name: Format + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5.1.0 + with: + python-version: '3.10' + - name: Install system hooks + run: sudo apt install -qq clang-format-14 cppcheck + - uses: pre-commit/action@v3.0.1 + with: + extra_args: --all-files --hook-stage manual diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b4cff9d --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +*.pyc +*.__pycache__ diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000..2abcec7 --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,145 @@ +# To use: +# +# pre-commit run -a +# +# Or: +# +# pre-commit install # (runs every time you commit in git) +# +# To update this file: +# +# pre-commit autoupdate +# +# See https://github.com/pre-commit/pre-commit + +repos: + # Standard hooks + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v4.4.0 + hooks: + - id: check-added-large-files + - id: check-ast + - id: check-case-conflict + - id: check-docstring-first + - id: check-merge-conflict + - id: check-symlinks + - id: check-xml + - id: check-yaml + - id: debug-statements + - id: end-of-file-fixer + - id: mixed-line-ending + - id: trailing-whitespace + exclude_types: [rst] + - id: fix-byte-order-marker + + + # Python hooks + - repo: https://github.com/asottile/pyupgrade + rev: v3.3.1 + hooks: + - id: pyupgrade + args: [--py36-plus] + + # PyDocStyle + - repo: https://github.com/PyCQA/pydocstyle + rev: 6.3.0 + hooks: + - id: pydocstyle + args: ["--ignore=D100,D101,D102,D103,D104,D105,D106,D107,D203,D212,D404"] + + - repo: https://github.com/pycqa/flake8 + rev: 6.0.0 + hooks: + - id: flake8 + args: ["--extend-ignore=E501"] + + # Uncrustify + - repo: local + hooks: + - id: ament_uncrustify + name: ament_uncrustify + description: Uncrustify. + stages: [commit] + entry: ament_uncrustify + language: system + files: \.(h\+\+|h|hh|hxx|hpp|cuh|c|cc|cpp|cu|c\+\+|cxx|tpp|txx)$ + args: ["--reformat"] + + # CPP hooks + - repo: local + hooks: + - id: clang-format + name: clang-format + description: Format files with ClangFormat. + entry: clang-format-14 + language: system + files: \.(c|cc|cxx|cpp|frag|glsl|h|hpp|hxx|ih|ispc|ipp|java|js|m|proto|vert)$ + args: ['-fallback-style=none', '-i'] + + # - repo: local + # hooks: + # - id: ament_cppcheck + # name: ament_cppcheck + # description: Static code analysis of C/C++ files. + # stages: [commit] + # entry: ament_cppcheck + # language: system + # files: \.(h\+\+|h|hh|hxx|hpp|cuh|c|cc|cpp|cu|c\+\+|cxx|tpp|txx)$ + + # Maybe use https://github.com/cpplint/cpplint instead + - repo: local + hooks: + - id: ament_cpplint + name: ament_cpplint + description: Static code analysis of C/C++ files. + stages: [commit] + entry: ament_cpplint + language: system + files: \.(h\+\+|h|hh|hxx|hpp|cuh|c|cc|cpp|cu|c\+\+|cxx|tpp|txx)$ + args: ["--linelength=100", "--filter=-whitespace/newline"] + + # Cmake hooks + - repo: local + hooks: + - id: ament_lint_cmake + name: ament_lint_cmake + description: Check format of CMakeLists.txt files. + stages: [commit] + entry: ament_lint_cmake + language: system + files: CMakeLists\.txt$ + + # Copyright + - repo: local + hooks: + - id: ament_copyright + name: ament_copyright + description: Check if copyright notice is available in all files. + stages: [commit] + entry: ament_copyright + language: system + + # Docs - RestructuredText hooks + - repo: https://github.com/PyCQA/doc8 + rev: v1.1.1 + hooks: + - id: doc8 + args: ['--max-line-length=100', '--ignore=D001'] + exclude: CHANGELOG\.rst$ + + - repo: https://github.com/pre-commit/pygrep-hooks + rev: v1.10.0 + hooks: + - id: rst-backticks + exclude: CHANGELOG\.rst$ + - id: rst-directive-colons + - id: rst-inline-touching-normal + + # Spellcheck in comments and docs + # skipping of *.svg files is not working... + - repo: https://github.com/codespell-project/codespell + rev: v2.2.2 + hooks: + - id: codespell + args: ['--write-changes'] + exclude: CHANGELOG\.rst|\.(svg|pyc)$ diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..261eeb9 --- /dev/null +++ b/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/README.md b/README.md new file mode 100644 index 0000000..a0db6ba --- /dev/null +++ b/README.md @@ -0,0 +1,57 @@ +# needle_pantograph_v2 +Second year master project concerning the development of a haptic training device for needle insertion, based on the 2-Dof pantograph used at the ICube laboratory. + +Documentation: +[Report](doc/placeholder.txt) +[Videos](doc/videos) + +## Installation + +### Prepare the environment + +1) Install ROS2 Humble and the usual tools (Gazebo, Colcon, etc.) + +2) Install EtherLab as specified in the [documentation of ethercat_driver_ros2](https://icube-robotics.github.io/ethercat_driver_ros2/). + +> [!TIP] +> use the `ethercat slaves` CLI command to check that all is OK andf that you can see your device. + +### Install this package + +```bash +WS_PANTOGRAPH=~/dev/ws_pantograph_ros2/ +mkdir -p $WS_PANTOGRAPH/src +cd $WS_PANTOGRAPH/src + +git clone https://github.com/ICube-Robotics/needle_pantograph_ros2.git +vcs import . < needle_pantograph_ros2/needle_pantograph_ros2.repos +rosdep install --ignore-src --from-paths . -y -r + +cd .. +colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release --symlink-install +source install/setup.bash +``` + +## Getting started + +```bash +cd $WS_PANTOGRAPH +source install/setup.bash +``` + +```bash +# Launch with mock hardware +ros2 launch pantograph_bringup pantograph.launch.py +``` + +```bash +# With the actual robot +sudo /etc/init.d/ethercat start # start ETherLab daemon +ros2 launch pantograph_bringup pantograph.launch.py use_fake_hardware:=false +``` +```bash +# Load haptic_controller +ros2 control load_controller haptic_controller --set-state active +``` + +## TODO: finish readme \ No newline at end of file diff --git a/dicom_viewer/LICENSE b/dicom_viewer/LICENSE new file mode 100644 index 0000000..0136238 --- /dev/null +++ b/dicom_viewer/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2019 Wen-Ya Lin (林温雅) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/dicom_viewer/dicom_viewer/__init__.py b/dicom_viewer/dicom_viewer/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/dicom_viewer/dicom_viewer/mainwindow.py b/dicom_viewer/dicom_viewer/mainwindow.py new file mode 100644 index 0000000..ed3668e --- /dev/null +++ b/dicom_viewer/dicom_viewer/mainwindow.py @@ -0,0 +1,108 @@ +#!/usr/bin/env python3 + +# flake8: noqa: 501 +# flake8: noqa: 405 +import sys +import os +from PyQt5.QtCore import Qt +from PyQt5.QtGui import QPainter, QPixmap +from PyQt5.QtWidgets import QApplication, QMainWindow +from PyQt5.uic import loadUi + +from dicom_viewer.twoD.twoD_module import CtwoD +from dicom_viewer.threeD.threeD_module import CthreeD + +import rclpy + + +class CMainWindow(QMainWindow): + def __init__(self): + super().__init__() + dirname = os.path.dirname(__file__) + ui_path = os.path.join(dirname, 'mainwindow.ui') + loadUi(ui_path, self) + self.showMaximized() + self.twoDaction.changed.connect(self.activate_2d) + self.threeDaction.changed.connect(self.activate_3d) + self.maindirectory = os.getcwd() + print(self.maindirectory) + self.ui_2D = None + self.ui_3D = None + self.refresh2D = True + self.refresh3D = True + self.justclose = False + self.first2D = True + self.first3D = True + + def close2d(self): + os.chdir(self.maindirectory) + self.justclose = True + self.twoDaction.setChecked(False) + self.ui_2D.__init__() + self.refresh2D = True + self.justclose = False + + def close3d(self): + os.chdir(self.maindirectory) + self.justclose = True + self.threeDaction.setChecked(False) + self.ui_3D.__init__() + self.refresh3D = True + self.justclose = False + self.ui_3D.point_publisher_node.destroy_node() + rclpy.shutdown() + + def paintEvent(self, event): + super().paintEvent(event) + painter = QPainter(self) + # 設定透明度 + painter.setOpacity(0.5) + w, h = self.width(), self.height() + painter.drawPixmap(self.rect(), QPixmap('/home/telecom/dev/ws_pantograph_ros2/src/needle_pantograph_ros2/dicom_viewer/dicom_viewer/resources/background.png').scaled(w, h, Qt.KeepAspectRatio)) + self.label.setText('Dicom Viewer Project

' + '2D & 3D Processing Included') + + def activate_2d(self): + # setChecked會被視為一種toggled, rejected也會被視為一種toggled + os.chdir(self.maindirectory) + if self.refresh2D: + if self.first2D: + self.ui_2D = CtwoD() + self.first2D = False + self.ui_2D.show() + self.refresh2D = False + self.ui_2D.rejected.connect(self.close2d) + elif self.justclose: + pass + else: + if not self.twoDaction.isChecked(): + self.twoDaction.setChecked(True) + self.ui_2D.raise_() + + def activate_3d(self): + os.chdir(self.maindirectory) + if self.refresh3D: + if self.first3D: + self.ui_3D = CthreeD() + self.first3D = False + self.ui_3D.show() + self.refresh3D = False + self.ui_3D.rejected.connect(self.close3d) + elif self.justclose: + pass + else: + if not self.threeDaction.isChecked(): + self.threeDaction.setChecked(True) + self.ui_3D.raise_() + + +def main(args=None): + app = QApplication(sys.argv) # QApplication eats argv in constructor + window = CMainWindow() + window.setWindowTitle('Dicom Viewer Project') + window.show() + sys.exit(app.exec_()) + + +if __name__ == '__main__': + main() diff --git a/dicom_viewer/dicom_viewer/mainwindow.ui b/dicom_viewer/dicom_viewer/mainwindow.ui new file mode 100644 index 0000000..6c8b2c8 --- /dev/null +++ b/dicom_viewer/dicom_viewer/mainwindow.ui @@ -0,0 +1,165 @@ + + + MainWindow + + + + 0 + 0 + 1060 + 792 + + + + MainWindow + + + + + + + + + + + Futura + 48 + true + + + + QLabel{ + border: 2px solid green; + border-radius: 50px; + padding: 2px; + color: black; +} + + + + + + Qt::AlignCenter + + + + + + + + + 0 + 0 + 1060 + 22 + + + + + Options + + + + + + + + + + + YEEE + + + + + eee + + + + + ddd + + + + + ???? + + + + + sswe + + + + + sdfgsdg + + + + + ccc + + + + + true + + + false + + + true + + + 2D processing + + + false + + + true + + + QAction::TextHeuristicRole + + + true + + + + + true + + + false + + + true + + + 3D processing + + + false + + + + + true + + + Face Detection + + + + + true + + + Motion Detection + + + + + + diff --git a/dicom_viewer/dicom_viewer/pointPublisher.py b/dicom_viewer/dicom_viewer/pointPublisher.py new file mode 100644 index 0000000..bdf8a87 --- /dev/null +++ b/dicom_viewer/dicom_viewer/pointPublisher.py @@ -0,0 +1,49 @@ +#!/usr/bin/env python3 +# flake8: noqa: 501 + +import rclpy +from rclpy.node import Node +from std_msgs.msg import Float64MultiArray + + +class PointPublisher(Node): + # Publishes a point 3D position as a Float64MultiArray + + def __init__(self): + super().__init__('point_publisher') + self.publisher_ = self.create_publisher(Float64MultiArray, 'image_points', 10) + print('Point publisher initialized !') + # timer_period = 1 + # self.timer = self.create_timer(timer_period, self.point_publisher_callback) + + def publish_points(self, insertion_point, target_point): + msg = Float64MultiArray() + if len(insertion_point) == 0 or len(target_point) == 0: + msg.data = [0.0, 0.0, 0.0, 0.0, 0.0, 0.0] + else: + # Insertion point + msg.data.append(insertion_point[0]) + msg.data.append(insertion_point[1]) + msg.data.append(insertion_point[2]) + + # Target point + msg.data.append(target_point[0]) + msg.data.append(target_point[1]) + msg.data.append(target_point[2]) + + # Publish the message + self.publisher_.publish(msg) + self.get_logger().info(f'Publishing insertion_point : {msg.data[0]:f}, {msg.data[1]:f}, {msg.data[2]:f}') + self.get_logger().info(f'Publishing target_point : {msg.data[3]:f}, {msg.data[4]:f}, {msg.data[5]:f}') + + +def main(args=None): + rclpy.init(args=args) + node = PointPublisher() + rclpy.spin(node) + node.destroy_node() + rclpy.shutdown() + + +if __name__ == '__main__': + main() diff --git a/dicom_viewer/dicom_viewer/requirements.txt b/dicom_viewer/dicom_viewer/requirements.txt new file mode 100644 index 0000000..118abdf --- /dev/null +++ b/dicom_viewer/dicom_viewer/requirements.txt @@ -0,0 +1,6 @@ +matplotlib==3.0.3 +numpy==1.15.4 +opencv-python==3.4.3.18 +packaging==18.0 +pydicom==1.2.0 +PyQt5==5.11.3 diff --git a/dicom_viewer/dicom_viewer/resources/background.png b/dicom_viewer/dicom_viewer/resources/background.png new file mode 100644 index 0000000000000000000000000000000000000000..a407182eae94b1e45419e13e34671d9ba06f80cf GIT binary patch literal 516032 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%0AmXT7e+_1qTn;o=e~nyEU4 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Ε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 z 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 z z=wSF!`_?yOl`*Ek1zIlV0H$0CJp&e`r970r_Jtl=^{}n=Eqt7n%Ro;z8&6nr_m=$L zA!K&DU|;E~jJpAAYhDlL9CJbN^k+T(`iEFi2r=~PF_I?7-FK?uVY=WhD7MAFH>dWd zTY>hIfpe@l=X0$|Us696an-&=u{fLZ&84VRA9f-wg_FM97U1u6lil+;-dLG(#!vJ4{}Akc@WM zujq<-J%1{PBX@Du=sB8qIbEAdSUJ&Yvq_QX0te^adW1NiNqfc%?sjRxzOTy7FPlbaS1R$d96GeX^i?LOJSKu<;hn-I1W)KLVt~? zHGW2dOajBb3j)6yw>J7RUSz}D4XtwO8Np>HaS+C~bk-Dot>5B~<;(YxqK*+~n`h7Z z3Lxco8d|C^F|&lrNkta#EA-iIEewmGB3@k9X^2=TtU)$^wP&gVAwkfIVq z`I8AqNEnGa%57pxn^H$~h^`}if3(?mj03t5!?_k9vyTNIjd5k>WVV>)Xvcgv{;jE> zZ*!~ticMltlsJPKQ#NWvmPy&Dg8fPKK9z(C2Wv+F#kymYOSx*4rBWihB6$^yHl7MZ z!MUpO2hv^F6=x}jNqX1cp0xXF#?ZT=B6CYV-g-cc(P_xyA@#jL3{vHG_RPpCkq?q5 zJB}iR@R%!?Y*I4=dTo!#le4pZk7inYt83OrqOJ}@u5Onc$TOKAZh-s%GbmL#F}&Z% ziVBXC*_DFlu6MQWgdPbyjA46Ldbkom<$7oIw5=VJXxh(>aDN{!;CE!dwqNq5_GdEf z2|>d5*dPlS)bQ|ceSi@yau@QbAvaCIKvjePYfP$#CDYw|Uu7w6o4Hj^pN6-?ZRIqB zA){e|3N5MFy-6f`C+xLs**wA;$j{=^`_0=(C2De7$6h(7Y?Ru=#k(cxb4mq@tA*yR zPIQ$gM$Y9L%j5*d1mVr?_bJ_zW764~VyOKJ^YefH{Wf_$+Ez9E@ePj=G4q7?IP$~X z>L#d#25cIG(_nHK-g5BI9r`26{+5C~Gu9mxa8WpE=(?g5MQZ_BC!RRVZmCZtC^7#j zF?A;0)0u&7xjld(5^q&v7PniQbPv~C(B3SxP#y}^`mSxvmiRJa`ld(*SuX?v}uz3~*J)a?lG`Y}3 zJ$EtVW)0BO`=B-K1Rog^b?mL9{RM!#HvLN^sQG&TmvlXGq9dc|qr#I`5NgDS$)da~ zbLx_>T7Z2lP#wKf>%P@$ITW;`bcapzoy(Wb?*qCkQmsBCQTDji)7(&|9KSH-OVm1Vm^?o=Zkl-o_y>grLeU6+!%4PZFkSf!~=Hh29C|2(D z5!Cdn+5uKK+~A@YtZt98Rngk_WFkB@G3gJ-N82}upi|yM$JdcIzIoLXBhk!QUOABo zvupk-CV>_FDiXfblqygHeO3?9xBZ17<_FP-HMQz4b|U?I1Ze%Z?li}9E15<vNx!F?U}>PFimhyY;FcLJMJ{ z?wEBSa5_2=-+FZ^g++YAilFX-!m%qy@N?7RAov)!!@A9$Pg<1g7A6iB$8MFozBg#B zvCa9LdQP2tF%ew%8{}wdOE~1L`HxTUimkEfTLLbwk}s7Ajx**jF2;^>#U>M?cyseC z!V=5F@#yHYlV8Yv30K!vxw_UYZ7D)U`!_7Klp(zQJWyvps$I-OtxNP<|Ig8*=48`= zlb);Y+Ig5`h8T6an7~IK+b9W_H03;6`Cl6Cbu^Mo{aQS2X5~)CJm0!ca|1;zDRs|D zq)$jvT<*7BRyhsm&f3TR_v-rr6BauKh-}e$fv2OSOu#)rZF^Z>aEEFl2*1dP6A%Au zbziz`th2g+in78}3`hmYm*9LRqJfB@(5TUMAuEAw!9t;_q;M6jwAUqbhBQOwFHiNb zy~AuyweYK&2L}>dPh)AXvbmF|EgtSMOyubowBp*)(*kq%lIS|@523T7#iSznH28sB zGC0rl=&5x9QuuuK*?Z_2o?#_%(6i|!VZbxi8fKxEIynG8$OM%{RB5I}=+N6BZY zMRNQ)|EFZVS%8yG`dgbx{D-ZDVs&ZHs}-&_+P%Q0970n}=!DR1Blgu@1JXs8#j@nF zj0o99&Ya}8hT>lqRz)glA?QdpyJ8yUa%}xcGNt}ADQ=^4m9h4uS-Tf`*JFj!yU}{0 z92RcmU-M2&*`EBMHejcGQHuFvwUg74qn;zrO}c9(zQei_%ur(-yf5ZLV;6kQrwLZSb{*gOA6K+Y32%pFlqp+@o9N zPbPBWybPT{v$!yc-&vcU)l{#!sJ5@TmxxG4ZC9dyFvAG_=hl;p*GT~if;Z=R0tx2>7*aVn3g?x^{yZ5!}D&?71zirj2SsE_*To9*cZI>+U)ssq4lZG(p4LDpB8RmE-@=N{h zx4LT233abqZN2$8k_Qg{`QdK~j<~hMoyajJkf53(V-gb;E3lGa75AoG|Mm2BJ#i_h z4!lmKQU5|1_!`h|Vw1%lCZ@Yiz*QDpvI^e_ruPy9-itxogE!B%zjIg zXeQ#8+LdPIBU#JL6U+r`#V=r)#2tI_IQ2#61n@n`U*;u1H8gJB08D@7OG6GIy2kwr zTxyz{7;*_6>i^2QrVdsO2FL=xV$0y1t6gVmkhb}*%YKhUXqYr%Y{E5>rJb3}#+Z9Z zv+{^$ufZfRMY>!Dbr-l-0Jg`S;f2{QShbWf8=iO~hX{2kUdALES? zxrCO{&ogv%1=TE9UffjIiXwgqfoB3~yMtQy94lH)PdICShb;%_-9NwjeIwbGJxode z236ZCpCz(PP7%w4tdM~8+Gn_w(;b$F)nf*M$C5hRt0peyxT}N7&}InN$;QR3iMlXc zA=rJy;~HN-GW7A7=8M0`mn+(|CN6i)IzrkJUtFFl+ubVDIqIT_dW@B-hCYoo2*ZqT zFW>J-1TTNuy3Op@7ZaWS(E#3igohjDvY3p({PnyO+eswOh&3Du=$xpB`Y!fGcdo|F zf_u*HFe=#~-s>pXKG3gZ+E}%Gxx$RPk!D9w$M4PL8&d{GvYXV`d&>^BIWB%r zen`n}bVzLA-IO?ZQ7S~H@h+vl_K#JAhfU$^5sxYB!xf3b6VS;|%#4{FmX4EkPFeCa zX++Mzek7@PNk!qts9qgzVyT^jSVz2f!!#pzlj08h1j)fKno5j+p8RrzEU6hmf;NSv zR)0~r^alA&K(!}^n^SVrN?xO<+rogva{2aV-de%$4HbyEAi%?LQAf&tO6&|D9$|7m zyc22;^5SwH9jJ(Mm>}pX7-whdW^o*0PdyP5lM7#Zk7gVC5}5A(Nnm${$j*+qT2^B? z@9w~cwM;E%iO4cuFpj3p;@{>-+#4z!pH?vxr;?kkIq?HMELb*bCJ=nr8^! z-nj8!-YHSpn9{+FQ$Z&}_%4=mhZ+jxyShZuJz$xc2&l#ps66&kR)|Qn`Ap zjW55}KOTm9GD11uP$Gra!q zkGkZeexv4y;30iMBGeb!(+{s%g4Fb*7I+)FXXJ=q?yN^tR)=K+Hv_}5@s4)8I3nWt zB|Nqr)g7+YsV~6Tx;7;|i4UB5Jk8#)+-sj^Ungl8S)p=k z+SbW=tJCyG>fYT4LxG>Eem=i%3)C5WxX%qhXJ28rW>MQ zbI5-(C%wnyiF&w?Wtx%=tjl z11)YJ((6C7lN-akPbJPi?5A5dZM2e_EGyAFc+Yc?Ss~%#BMz%|N1B{ zCf4j~!r@_i>5Gt9gGtOl8c+n-2Ap_eW)-0ejcsb5%ynyt5XCG%HXqLE4bb_C_{JT^JMlDR+%-dG*M_IdR*gqYAv=j=&w5`N%_oc& zU5mO!;`uSe@q-`Sg%QvwJHz=I7Ge}H~62fOPQ=| z;zN)Gi1B#5IklI(acqEKx>J)tmb@2&{DU5y{k@omhq$3HtGY5MQ zBwC7+!8lMZ#E1teWW_%bVOuV!sX!rid8T%qh3xo8yWcv zub`@j(WD0<=Lz>Sxp)6)HU{ZwaNpNGbfR@BBL9{_T6XbG&QI{z@I37~+vm#EufCyY zFdBSs#Z9GkpIhOum_?^JP#5SEcGQJuRdKPEUHK`+za9tzwE5_YDIy)!q4ZXR(~w{0 znI%wn

)On`6b6k+e|3MeKJNKW=#_F?l*Dc2Q$Yni@d;2TQmzKK`M0jngg zTvw?ARq>&bR?S?-Eu>WX;HpuP7RNb(=4|vE9f^8uBMatw|^x(j6}Az>2qCm zlDVK#a5J@f;KFWdXOxue{)5a;>l>_qlD782^xHw{3CyY{h`qA(Tmd%%F=8+qt@Zxz z7W=M_2=avcK0?JmC+#qLJVpVk10Uq29c&*~-wTyU^s9Wt;c{Z+Cns%aJfz+9l~{5^ zQ~FrJFcq+hxdME+krxQr08lJ+4#G988d9qpx|A2K0;tVhOSmWO#DwSMX}9PmblHyg z>n>VX-Pua?7mjF59rx+gOe?yM4Q^!4$W46_-yhH1tzOYOS%8C{zWVO`!bRpP4DaO! z7icTnvlzVoceoA7GNPlr`FZ^EOAsjuhO0fL9LclXk~HF!KQ=?NI>zW^Ns0eV1G{ZI z2wzE=OLr7AN$>H&dHG-&PfvHrLG0&WD^p*|mvKiFXIx_zL#d~n7Z9KO#?SO?z1}RI zNwJuE@+GVqPC5l=I8F6Xn`T7XKFdo}XvwW;lXKWgllBYPE%7j^m!q^IU@%&6VlBhW zWE%L9$G5s17eyr>*`9Gb?N$ft`EPPDp?xtirtt^@-MBQyT-1BT&w(Zu1yot113T}D z4seJ7zb4cxh`_i)7R+kwq{U?``jzel;6Seh_1h*LHE2Sl7DwAK2(BA*&U9*cSm*#p z>B6876OB_+;;596Q+03Ihxy(cJrl*IyK-7~8qqp2y!Z0`dlFPZ2W~_Xmwzp~1&pGf zwg~YXm;l)4{MJhmw|jI1^^`-&FHqLdfBT*8dqSBb$EIEhlJ6De z>Zx1_pXpWNVMc%)_S|#PnxgC6IuGHqU z+TJ8Mb8ONEXx8Rj0VVNvdj{`{OLxN9Q}Ad-rd!?nSo0l6d8L480^ecI`zQbmlSdf< zeaeOVg9Fc;Jj9DmMi5GUf-s=T_N%nnE#^vdVri5!uSXZWwkrFk8oED{SclWrNge`r zgoz4{5{F!HtxWF+fRyf))r^(@ET3tgMA%4Hyrn7NRK$J!jToIhyOU$%_La^_+fXY6 z((5q$jZV;)%!K$)=%3UCpA)mdL-v&qMpR4EyTG*+Z^)OaK|C2A_>H#Bmoz2dNu`H zWfBeLI?@{0TBjzCSk*6}pXgEA;-<8`-U3D0P%8arwhR z7d2vr5wREJ4Dw3p8nI{f$g_vKBt;0rBw(}ctwG9r+X2oix4sA?VKm_lJwYCK|VHMp)ih{Oup6U)qIsIaPoI& zG;01aZUDrJAyRa3%N}b=#VMEO#y8u7JQUV#0 zqnnG^pxCbqrk&G$_05A3wEPaU#@L3Q8o}}3eZapIwWn7WdOyWc+fdbi7SkKS9|#xr9r37;raKP%-L z0$%&0-~9wkJ!7tH|>&RTKwr5eljM!cJt8S-o^nMw>+dp|f<(BAJmRqLA6jn#(TbZX|NOA*NEu#tz=7^vp=?w-V%Lj9DU)(`kY zNgTByO}1Okt3C8?W-`R~SoJRmIXgtWyZ#BVR8f?MsCv96Yy)^@#!OxV^c#pB%(yOw zRp`JBqb|@A^tmB2hE{=4*Ft`gVRn+lmKc)#^(2dlY`tGAjrF22DyI8kb- z{7w7K2g#g;rPo6grp4KXi9c%0qw|Ux?v=8V->z(j>%F&R?9z$4W;R+;R`0c(wSNU= zXRdnCWiWQ~Q!-*uu@s2;gi12oo$p4DT8tX(bqG#tJAG?ols1?Mb#~LFT8vb@SFT}q zY=SO5Usswu#>AY6i^lntiFENxm43ubsR+MsffPP~X{GkM?{4#5ZO#Z2N?-knQAOxq zM}0hJ*45YJf86q0vbEEzh&E}|a_41?6c)Ty4WK1-KQRG7`E+bWC5N)DE%V0m(s08= zp_?Yr;KoUD3yX_obu&aq8j<7<#r^ioxA%Tr@Gq5t3%*XAXM9G@++C4h&;cTLA zZF-Bq>{{04!R9V*iV4q~@n11e<7!UYR)vGG1N5M}5u`0oLM7*b@PI{1Phe!!EtJ}o z(sy@9c&VPY>HIfnW0W;-d1q_*8jpsLQfe;MK3fj*)K<@(r3_L5%B0G#^@7r;IFcB; zTjeWWc9G;ceg94!$fH1V<7DwM#oDcWYQOnv*M0Y>>8hT;CFd=Ok3=i~86w67{OSsv z3s@k!=|a5Ec$A3cIo#2V=loz_!$c%QhmeBrmxBdhD7@_NbVmACP?8k*G+rXsI1c(b z=Gbp$5ASM`QwrGX+@a(2ysd>oyJXZCj)l>>#Gqd?3drV?atps6Z|*h5dk%{WHPN=r z@KTiqxawa1H9PN-bFj+&Z=;l+>^z2-NK(-UAPoTk(<6m_`5O2%_T7)&t3U>YU^t!A z4m`OwFs~-{>%sfr*zc#>`E1g57RBiS^bO&ICguT0*qPQ@`I*ZbaxWfD+$M7_oygOC zNGm&j3zL>aiJEvaeD-X z4cp)unqt*Cq<|J`d;Ejhk=m#51&ZNX8tf#$%FSHg4c9SskT)Eh7T2a%>Z`n6XsKj+ zLeBk!1V?U?`kB3y}o22b{bL3a;Qj zR`W~MQZQx2n>(Wj^!bhj$333$5o{~8fJt3xqH)IY)dM%xeHW4yJxQh6K8&QvwXl~R z$B%1+$V{3qp7-k1R)uSR7oT7EU?<(HfMp_%n^N(YtfT|;>oy(lyvn|*)PaR)-KPwa z+H(;ZE9~(W*Fz#}DkMtp4$b$pm%@Zs+y3sIN(N;KDT!_}+0?{+D`fUat%$7yoCSKh zvWj?8^`bHo{M6`@#Z0`QZw_5=;Qowe^$AME%*V}ndun*+snFDe zb=U1bqmt^sEZL^&VsR-H8X*lkYoy%$W*0~E*Y@AyD1Q5x;^7+t00?Y8j5#16ZhIs~ zWqF|U>$8P-NB~;kda3H$^78{dQ@;}8ANoW8P73CAPFcL)p8ofPNOWcLTbkZu$f4kDZjWPQ%HQt>CBb+ac=}jm zPy33(@IoOVrnSs~+mfu*jK7awapvnRz`c_baPiv4y6}Qr36`cniOFHSHahPeh4FY`Kn1TQQIiw zX)x9ACA8{*(5!!33|=+PWlZI2XS(UU^wsrvZx@HO+RH>eB)kuyb-ze7nL#0HBu5Jx zA+l7%@Y2v5^E$;E?eSV32`Gvp_hc&xHpblZQ0q{_|?s|V`z1otbn$fo;jxW_$5#@+`s=bWF7@z+nR9mn8||K`H7Lv2>4JY*W9XvLPU-%Dkic-*d08hpfyD-p4( zAaWEYIPeSnOMs*SxG>M>h*XlquiIB$KsXUMzA^!&FB|d4l~&=|q=baeGd<6}6@s!C za(T#uJA3t}CK!k4Rkt{V@0YDHh(xbBvHqvq?Hfl^Ft3Rn#*^LGDc$wp>K zU<4UwU2#aEuh_U*Qxaz?2`epHjcc)ebZ{WEY$zwXZkDgjC|0|Mr3p8ZrRz<-wW#H6 z_fG+X_v%k&pEjsc3@e`PWlOj}swHaaz-@}T;0Ca*X@qJ6rX22ao>bfoVtrvU0n76%uN5>&UQ9L_O}9#d}GL>4r*GJ4ThBT#N^gK7!LCV4?VzV)60q!kR}^e5a~m` zErt6nRVsERiEmiO8G9a#;+i#Sc?)I<5qFp+M0(^GP9xM>)}?Ot(Mr^S4!b>&mKUx7|Jl#R7{I$C!*H;x4Sko9z;&O$~8M}1&gu3JcolcOtQI%xxydBfA{dMR3!glvt;)pMFnZ|Pq%SzZ8 zFFD9KkgYeydBP7HX6V>a7)m_E=Cm{93Yi)S$+SqmN)YMJPImPAAGA<2`@=-MnrWvb#wvO?P&a>9ueL}ac)6ir8 z+vVEMqV9#06eBf5(Np=RVz^&7_{=|Uzd12cmOx`vVBuoRi{f56 z{2E;(p;qku8$JkeKYK-HI)6>Z$UrGr`THoq&h>Kfq-9tZ5cvX=#MC(dNSoZZQ{!D zNUKC26TpoRoVyFX)guEnj<}Grq7{`>V8)#8JCq=EZfM;tuGK+v2 z9kmyaTE2>g+(Wd2i=WwC;5+Epxd8)HdJg#%*#yc^uE$}}40F-*f&lRh(=q7X0$`4RW=E>^|T z3!7NSB{bZ(KWR6T-HVdy`(YAO%iH?Q=y6nThjx>}3|1WewFpivYSUP0Td8lqTOt5v zZ{Mk&Z5NO{)paK2_4~Vewh$Vg?sL@gUXsKCZ4+Dhiw^HH5_uS+#}Q6UE`DA4bmEU& z%TULxZgkI*u0z+1FV*ol1tcLbU4n}E_0OL{Yt52Yq22Fi-@Ay%VH0C|wD^^Vm1290 zS`OLt+HW#NlYCz9u*To|g1yY?Y!yFT7}oU{=1^NP#i$;9Q?g*z`*(l4&~c{p(%O6m z_YdN?G;pn-5v*@a~fFMv4TUW_hjJDNtCYxfc*NS>HMT5%9+xKNkF& zihljI{b@|mlHj9+l)nG<;Co7Z-zWV89V&f{$0B{dDIHuk6ThxN9?X-n6`-;FZz37(R=Kbt zsSn8{pBOoDB=CO~G|DWGMEL9^WPhLc1nzI7)ov*e9;LuWnh;pr60ke_&FM}?`IYo_3685qH@$FWJ6mFC zV$zhINj8W3&?lTsG@(^p~($@5ogr!S52t3Pg4a7C zTi}-eDM4D~1)jH!4|Iq>Wl0H&+Wlf7qIV;M9$oW^|FQ(pYp zNqlONLapy|?Tj!oia!vV2CcPTU`8LxwWMF^cM^As;rgH^whn}`*WZ-=+q&>4wm0@` zA57Vw_zd)v4FqCh7Tqo|dic(W`eyO2mVyLJft6b( z0_2FIJ+5S_*cwRaI&pYTo#C3p!E*4DD8DM&W$95$UilkInPEtHp-rP-o5Ak7P7a=y zoz?+&$J3YeUz+&{3~qPv2GvmP7VvewDC5mHWnCfwEIv|m23jk%B#kxs4YpXD{DxC( zN2^&5Dl46}43W{aD~RwPl%jejIypYI)?ur!QDnLw_+dJHwK%jix$~&x)=mm~TTDW! z@?(V8AG4k!*LXOEb8@f5R052GyOqWIfu^D1e(An!WT`pVCx8|0ju_nnl1Y{Bu0p%)gGQ6U`mp(LT?0uYEQK3u=DwJJMs@$_cQBK%R+M zQ&WRp*Ku0Sb}!FJgUfr$2^r2`5Bt?PxDiXN#r+6V^)3|r(5^C8uyekuep@ujHV3gt ztGAK(N|VOb18q&vQfq1OJD*|VHr5^00A)*x>*Q;{z=#@>m{ETh_O6CX>7&0)n{H#C z?>d`kF2jrUID*4kK?9nA-k;h>#FCyr;V?4&g#b~OZ@<^Kv`vZy3%=+yk}P6WzI~zS{cXa@)bDB)T5^s;(j@5sx$KYITQuu@Oom?H{$*n%kzkKCqBM&u9 z1)Vj>yyxh_^kmDo7i{7eBrP|i5H_Q>-TirW_xEp^jjLlwTD?0J&D0|$L;?3D>CPq> zb`H#5CSp56xO1!G3d)k%9kzP0C~S~zV7fW|uO>x^ z?hzna=B2CID9~C(NmVw_cOyEj>*%kGScsANb=m-Ric8L@w;L`1!<}|yMU1khOCS4m zPIp3gT>tXBhN@6xyWtvC<+=q800=?if^@TWV_^3G@pRTvP5*D$-$+HuFD+?M(jc7% zqIAgUP`bNopop||mk3DrMvrb79V13}jvD=p-*cYlf6n2Y&+d2K_jSFl93cHA0|K?s zxW+-54M=6v`cKX>oYA#LRpIniQymEgT@yN{NIy`7x72h9Fp-g#@o8R&c`4%tHu2Os zBjZA~%tHij7^Rg{NO7Ms5QHz=(P(%GRYyF3l{AphHR~?Xi=%z2r~eFL7p$>pT4W-9tuVKhxzuVurt} zuti9r=(L&rr{{OYTAujx<539;jiL!B-T|yyW*z*C=gezaK1Xf0L_eze|A1{clx(AO z_R0jW4!3>(xxUxhaodr(My^B>t{HlTFz)#5{MQwB(K-Q69bT{8+4B~7;nkR@$vy}p zP}wNyoFyVADIpy-|6Sc(No)3BO19)HxBtfiNQ3ySZBJ^!p;vJfU7nEC4n3E&oS?5U z4OO}~s~24&*-@%EMO0MWiopg(I3op~n$lA%)L8QY_ksDors;8Yy>SVOYoD5ZZ_l1c zDj%!yQ}<{xmSp(fU3ws9cn-%8wzK|BXeCu!TOt@j<>*~M`3;+@O~)lV@bOp3cUy~E zfC27WNg7|NoJ_NT*%bZh4c{c*IB0IXI6g3gA#hjarT2dto%yUyI%JMZCnHk?rW`V1 zL*8;iY~(lceZ1)cgxkNR_j9vO`1^ie9*p>*;tl`4{vjzudW33Z!qh4IC83c@BLp7cftyfjsFAKP5VVd8UZdH(3}<-tcD( zC*-2}&|vgX`TE}~H2P+wstNFKUu20NU`zp5+u53zgNo9%`pDBwJD1!Nl}tp|iZJoi zJ98D2^7jVSfc`6CX7K+Z@Ks3X-&-ax-rl)KN3Nx=`=EeUnyGS@IKffd3RR8}?fFFQ z)5-9RLjxrN#^)N~!O)jY* zCi!GlwJUDSBOkSQYm*i|hx;08GTUD+#w$V6N$^9K+-Em|hjI*5&Q`$o?BHO%jR0BA zKkm=wf>NDpVl(;LiCpYIc(=C4)M{>z@th4z_1Fwo;h}I34+eLgJEhmM2@Q$xDl$;p#t-Gm7R} z2bsKR)61UrBA;U_<`7M+l8KO;cPHNBu7IWln$|R0-5$8YVJndGBt%S_w)jeLNu#9W z80sne7;Eo!tBs*AM|18c+9;D#;1$biiY&d2?j@I~MwzFwat(*oYG;w+8poVp9^s$) zSY&)0DvI&0INg^0MR~MTYN_piDyH}C!2_i#O^b*^wlH7J3c_xV)Wi8ie&C)VQHFD* zW=|)+p_uzOo8jL*-KAz(;lMJ@q8d6DSu?cO7;hf)9j)S5-tw*qME1jD*ss#8tF{I8 zPPcVz!pqHcEJ3S9VYhaA7`Y@26Q2bpv3rb3$v$7ri~!O8QMy9jUk@sU)#xS^N)}CK z;{MUR78;;hWjiY<>-HFXw$SY&Bm4pAbH0~XCgHnVYHQFHdmkfrTIx~jzU-{^q3mPi z*LuFuk!^(<(RgxDDe!b)_Pn=_i$6i2zhn&)!T7ydk~5$sj(-2%@hm=p3?!hV^OtC; z91(ar2V&5WQGaEco^Q0OqUU*#?n0ILEM9(3sBCRM#ZIt?7j9&l=}i0iV3w)h3snEx zU1D9NJn~psPw)%(7aco_m!lf{-wZ6Q?k5VQ1TP=#Pj9*qCUFnBt8vJ)M*r!x@0h5g zwM|Tz87rn!cQ@Tfa??tpc-NVQCeup@o>RWC!MOU@$gwJ?^3$QUv6G2OKX60h7koj5#Qp{v^g2DN%%BnR*6i@7 zYsE-4Zm+UC>Yu}(5C5uEd)UV8@gNE35CAX@WyHj`fdhrGv`8roB!wP&!E-MB@*m(BR?}^DK2hS zUuNSv{v19M1TBqysBXg8Kl3c@vQke->|`BYmWiGg6s@K4cHtjmYX+Y%&=*SU%)X@G zuKG}WDBYki-1VG}>1XU}7Zv=%VQl`BMKMLxnSidy-)zbLsJoqR>8V0;Qb^g(D=11T z;7)zOVXKG73Fz<8v%EZlA~!my;i)hZ!F}WOeluFwDefZF+Z*@ZwI#T_6v?pN zsmd7EJA0upOH0eAOiSbMvJ=oe&sdvy@Z||c>w^29yu2}@ZB9a*MDjy@b$Mi024ns~ zNx9DsdvVyL3e4l0`m;f`dJgC_x;q-e9Rl6dCnmrl2qDPYt$}~AYTq%+H67tmPyYhT ziL!CY`~0=x-;*H=2VETpW%1!Bl+oVbo!xW5 z-F87%=1q?DX$Z@q5AwPpXI0tiWx!sKzbz_{$FFd*%P$U&Y0AZs_%2}!ua82MvaaVh zuf!$LEr-`FX)VztjY$tG%8SJP&rhL~y8 z%W@5H%!Bk*vZNO9>(3ALIDR)%xE}m`qr}Nh%J$#S;iY*8u3;SV*1|>A7mlW?>1R!e zo@hQbCg}TFW^7BfBsu6Y-6P{cetytw>6a_O1jVBrUAtFLCaa8vK4~8Glkx&T@W&{+ zJTrc^v_BD6>Kym@U#LqU2zMk58<5i6kVisiUa2L+qYL&00;>Hm|2HUP$~9q1xo-IN z*qRdkO#g|@w@6P1{1Y%e7>~F-fw5lIzcnb9#6gGE`3CnBo2;tLFF=Ck0dVe8YZz>6 z+*nh?41VMM5z@5DMmoRxbavpvHcNA~_K_^xn`T<#h{QB1{tozLm@+5uV69T@}$ zm02(fg*n7j(h<2CzVqbYKJ8~+nh7H?^AcBPe3zqt+w1*$EQ-O*V1Qpdgt#ChbT9Vl zk``GZEq{)_$U4^EnPODxhf@y}8?1j$n6iE+)S@bdLNi8hy@jS&QPrbB`L^lae~!Vd z_+3*aePR>YN&Kbyx@BlEkJWV~Pp{X>>~4!D6FQ8_i%O>_%g`)U`Ybdkc(B^nyx#7t z+ukEyFWxgxwJmGs{TaSixq1Xr@Y3jh*Hs|OyUuSQ+2(1>Ke_lPGSv+q4;&)9Jd5KA z+~^^@(4W-E5@Gy_P|PrA4xA_=QkI1#~2oQwFvIBN-2YhdbEt5rd7b>hl(ENaOegKu;z-+R3>#Ak^M$=Il=E>Nc5HN{2)liyQi z1{pkZ3Bkc!A*KWarMttNKGIME0cX(kT+oOamar_ubU#8E1&p)lYt-H3`fV~F#B zD50i9m%_)sC@}_M`f@80QU5;?k&KJAc@!YA?#Pwn#T51{!f73?6U5&_m4@IlR~I3ieQ{T<@I#!NHueQfhfY4Rs-kihFw*Wo2Vl?JaW^$cFx@q&aL3p+WwIE!xp z)Bq2-JBc$w2ODj@x;a(3cSTlNF-YDV4ctCtVXmdMY^QB_(IWTxA9~CNpllO&p`X|f z2)eMRyA_t-L@i$JeNZZCgALo&QAC7ZxG#2F*1xM%fwf`pw=fsy>KPFO_WB6wH^KJt zN&p2t-%2b&rc_Bs>rc2ggdl6dBLT}--&Zn)W$1opG;2-C63(8?{%rGVjd<2e~Xb6%V zkJwDpKPEJ7AXRz^nEj-J@RQ~pm{bephH*}C_kALly#YMScNR(zK9@LcLA%nzUJ$9<#@_% zpxbO~r&nm3k-@tUqYj&q;@qdAmx-@SYLIq24P~_rd3CpQKX#b(PKMF&*5>T~rscT1 ze(DZc!kdsNpz&VeUL%YwoUR48}tDCffuK zH5V7;@Sm)8y`3?YsV~rX5h?bNi&kebmA<94Neaih!^|<)z)ioX=vN+RKlLI+GcrX= z#OOHXjxO%56i$-lUE=&b)!Vz$H727q|EIglvSSOJuu4n!k3lW7 z@z}fZApf>P? z4qSn`m}HzkK6w{$NVyJfIY&DY+|~#X(?bcE`~TVQ)+rv($H!MDyNHTZy<;hT$D6;> z``6u$KuY=AeqZ-2+>~=wEXUe*Gj%__Cg3W_Yxwo!V(!0!bVg#ymo`Q|Ewwpn9~_br zQch63EscJ}mOQ;q?3BH!=Rp$AZuI#}23ItjBI{6npEraajTgw9A>{n`yJpzMMMLGb zt;Co=CSTQFo!fWc#wgAAf8C))L!uaMPn()zVdE zFrWJyG>5_?m*hi`sxL%!Z-+e8hI|?@^f`xhj8w8hUlqpM~&OT?t zkd$waaaGM}q#MLn0Xo2$xP)i6z`ac+Wh1Zk1a2)*koHq`;zu%Nz0_W0tOe=T6pEJy z18$jTf+M}AU(;R7g1@J&_TcaV)LBY^->ceNe~g+^R17eN>pQop=(9gU!^Q8=Ku;XH zVN=&-e}z=J;Yy(3p>TJClHVaw>jJy797gkT z&zbU%zy!`Q=WKEC8b(uQaJTBHOr=braaWKJnAHmvwa12Eh4bmN#6^wkh&O!fI?=zVvyqs@8T{x6B`GA9d5%IU_q zN};6d8JaZf@wLu1J1^`i#4;N`AOAjIo`UEs6uawSXjEwT)!Bn3tz+}Wga}KT}tj&Ljnmq3bSGtt_o?h-|irvM}xRxtCtxfHCQP5LSu|LwZ++17gcG4t8(~>_7tdf<=^{6_7{u3<1~`O1wJdC%TsV{k2C0HKJ1G> zdq+gyd;uJeF8fyKoZrftcIAtDNk1nj`pHk5q)NT*T=^QIy|mva0B;)W`5-QvqkqXz z4uu0x6zzWA8R@C50v@*4Y~0L&;4ZOAH_YY zN|TtRWw)`Vm{o-a^*|xuh($>vPbB@M?(Z&O0pHHLw%ny3G_?mjt9&85t-$`k$!90y zN-^0kh{u@SwPr50J3&AdTPnqMBHNCB24bcrf_~NtL7a=}eOw}z_XL3mdwctxeU#!j z5=UDw;RY`y3*w2vLxgt%fxMs8KjPk$Brt=;I7ojMzhL8vKO+Yl+Sum8hE`flqUm>x ze>ayX>0%E*o3Qxrv7))8ebu%_lZxR_rZNb-867wYhLxeHn8xKmLYCL@Md!Ib3$ZYE z*CKOl-E3`Z0le$^aQkg}=!C{vWl<5aFPnowkuHU4~MbnNT|sj!*pnrXUV5 z_#JSBgqMRkwmG`*Jt%2y#MZw*n04U0+Io2zz-B*1go6R~fn_Jd$2k!)0PW>?HX=$w z7+#|JdfY~5y5Z`xkMJpUoURO+Q6=iWCxg!&I4~f3qeXJcoGw-rfZ!r91EinJrB%ln z=rk46?!<}NWu4F4^k~4>CSMcY{%ClsBNwy8@H^R?dcC^p+>l!D$da+-S))Pm<@12P ztVuN+Ne*Lb_m>C9*2z4Z&*S+e>_%(*?r&ih_9gECnS7@s!zGheCv2n)-o3BeYkJTe zcdv!_pBF^Xoi7w28$_+*zvYzeTu2n`SO8U}ck?;cB0oFdT4&k*g|SL;dEUN>az6D)Z^}DFxB~r@4Oq_ToqX3t71olREhL za9dr_E;7lS%D|46JlAIYT|(|efAmCRVW-0>F_&zl-P)lJw_6$6ZE0wzHD_pHn0&l2 zM3>CUAtMjE$NM@UIyH*N2&Uuk(*F6ZGZg-zt(9;~V~TR1OW=Aj+kR?i;#J^e;qDeh z7$49H5$$&uGEXN`vThAXBM_?Z#Toq&ujzGzQ^__U$o~Nk%ht5}*;1?cwMiPGDf~te z!2i59z`tZTT>8wP;FCfY8NO-}I4)5?z#>-Z^6R(VG@q}EKlhhgQtS;SXNcy!fQsy~ z@zO2WwIaUV0bs1fI2ynsY15GLe9Jg64de+zzQDJ}j=bVb&mI-J@tiuJK3vhkjM)7n zLX(8;>AXv$(=Nf;yT&&)bqh4iZ}P?*mn(asAl`Jcjx;0{KSA(FqEr0B9uJQ^KwjB& z;k8DWz$In_mGO^bGDo zTu*a|I$=jg3oQwwm^}soTP*zAl^Z?f{)7Bdhxs2p=%c66*-#p|H%Uxn&#Re!mMt&n ze8R5}ZmTQvZr`f55TUUy+`x|CJ2aYmJvYNl;89G%;Pqrz{)4- zL}gTlU7Mg?r)&N@$>JPEcM9WQZjS2M%882z{E;5DqOkI-055e59;5tEo))Ni7m%gl z;ZKSPj*m23wzT&{j;-i$^&E1-%#bQAei6crjN|kyr$zaFwP2r(6blyQ?E-Rv@qP$) zDJ*UsA@>-CEq#QYaW0Lt_a4LsBGYiRvxn2eAzX%{ zbE$qyC*rj7p*pPpxzhl%Q$9VU#AG%K|7PdL9GcJ9YhGES+mbkN=-`IA`JI$2pTP+WSNB?vF2<=xdtZSFJeJt>5*L zeo2IQoX~ylzv`VH?LHQ+J>J3G`g@OTb?OJgTGTf?Blk?rZlQaH`bQ`s4lr_Q(nlTo%WN8y%#cdGXVdoKl-~! z)3DS%HIruQE=k`&gRbVNm%MJLi-ReDCxknN06t?_K zuAIw15e3`*Z^tsopHPskYFWwJ(OvVQB%^2i!C#8g-Ft^(l zE8+D<%q7r(I~entakEu%SpTy74blIj#8HjW(CF06eg-;T;X+ivx zZVDSU?k%I<>|?LnpZ&uR$scLH_ZI;HNry&Pc}6?_?gSw{7*4_GoD&b_vH(86b5ohJt_t zMA%x^K50j^tlrM5P$BE-ewEX4p0Qk-IV|JjAQJx`@ZsvgiKegFSu;SnQ`&A z2SCjhRzeQV?b)m=UHo?K^;u!>Tp3$eJ=uKjFAV4JBt4gaA#cn%p5Neo1nJ~)DlVzJ zWAu@$%8vaNt-QC@S&z3QSdq9v3C_>YzGfaS+!7<%>Pw5}70!%>6N<3aqUjr zd&yEFVpaNJyZD+#V0+*_!g%SAP|Dc(q*fBrJ6L^XqVU=$?JbS1=66Q~0fwmHKGR}G zpnV{55PPee;dOs|Ary|nPkS*G7X9-Pw51~c#QA5yegJHx;5>GvvGPx2I%BT%lV3JZ zo^4M3%Jn3_%cDPUSw`P-hGQlizFD3Sl(hd~neIr-u#1V0STyGA(jUmzQR^!r+R6`4 zE#~wSUXmEydz;Dyq-g@r&Zan=^z*4xBlc}RdWgaYMTY8>Zr6HCoRY4TFQKv3_Y%zS zg3a_z{VTMtdlNhb{q@qZ5iL32-qI@6w_15v)A7>^cyZ>n2i(E$y--wl?M7Qa9Wc_R zy8*Kv?`kL85R3gC&yVfyY@z!K9hlK?i{)&QSd5ra#7`Dz?w6+2Bq-|A@BtWUm^&xHc+NBEzfY zG_`ie68#;Y3};=tAOGt_$3k6@`R{#6Cxw(HN4YpjXOjRM;}DBD%_S8(A2mWgV^#tG zn>1f6v;xi3icZM;S!r<;1yfP{6OEMbWq>5H{;_citucW9XNyNIrZ!Krg{~A`$%GPJ zWvJiGcBE?Fcn5LFn3JtzrA}g>jU|5dX~Qh>eMjTP7UH0oNc9~y9{Bn0VxJz2P0p^O ziUI2zZq#6+OKm}|bKA)mh=t!_lm)7sVd-hX!U*GDf_H_u{OI$|Lo1W2_oaUDwiet| z8-d#L`06~~)4kiS@L>)0I}oa5I5duxMA*!&BnKFa3D2^!!`mIRjlMXaOVZP)(u%f> z^W7S_iK45AeutJfRoxIkpH0&;I)Pr?K#=F2)vYb%JvsEP?~6%}Yz3bx&91Fz-ABFj1kG*8>466uLY7*bt_)k*#Yu?)X|txhbQEEu34amh0UzW)GYF7 z#CJ$Q0_bATp55NSxpjb!z{Z$;-Lr7do1 ze9h2%J8w~RCTrVUf`&u(j`!nM!UWW%~>YZZ}<2BkjU$3)z6ifq2+ zb_;%UN0Ot;7lF8LrMAgR3)#gi_GK&%f~4>9ao=%iP~Iy`esC8;uAanWk7J{E48XUk zt=N9H!KR7_8O4o?2n zgG)*!e9@VPnFuW=Sn-u&;sS?tF*$e{E*(%N%@b=w3Gazo81Lr0;LdY#X#xqQOT%Ue z`eet9!i_Xf+we(TnT!@i@w?Ss<8xhk#4Jk71M}Z^WY_NL7#$BcVnqb@ftbG->CN@2 zDx>WtiW_z{c}jfO}oE%i5#j zgT~a+uKr@8-t5w7Hp)Cq6;sWnuXq=eP_dLZp%9Ux;g=zorN?a;=e#X0egt$dL!oU+ z$Kdkf{tl^fH)eFD;K#jpDSg*-KeG-Y{0<44k{$m`iXKa9nb^D}4mY&7y-XV(4fbB?n&Acztz4ETU;|X0yxpa7+7&TYtBkx} zfT9F*V~d7)b{}+fUy4{8k;xVDEjX1<9ZTD(m0;nAR7hlOnyw$fG>q8>BJv+M)5~l= zA91KKy>I_D0I*iP25)8zpbI$jdo+PR62>_94xs+pkDnp+FAY-!<3(%MT&=fez|Uf* z2>~**>E^9ou;fVYoBr20*;D3>uFaE8<>#(5`JhH|g*p3*s!2Jb9syKM65$K;0asS( zYR+Mh*=(Z`tqy@vHjGR2C#VNu(*JIMJ4Ikzvo;(B=GVPev%u4~qEvM@BXt>do!Vg( z(Y0vZx&~hWH*-5NO&zGXUk7@^=_g-=RNb@bxkdZT4jYLCiz(!!!w$0QT}N0j2Yq}7 zQMtn3`3eHU!%~@wqQEn>vgV7yjmpfv8O(lSgeSOOQ08eUk9%8jy)2S*vkxiu_D21k zA(1Y|$AqT7TQwp#rj2oM>!Kd{I?}4}W{a$Z_eJ#8dozrcZ3Dj_wUF-!3Eugr zD$p(JY`jm$R8Vq(kx2x!;PWTlj)X|Pxva*JLl%?2mq8MKALmuJY^ex|15iA8NuQVKX_6Xa%4!G6~^8^!r^Zy#c7a z-<@o(iX3fv(Sr{<25hlr`8sDNNnQ`H6+-x&;gz=7BPA3S!h!$cRS2Yes+mqsk)2R; zO5ROdQ-C<=6%mTm=k1+#3`qBrMlx37+Rt94+>d%+!BR>L?ZA&XFi{OQE1yi2*q)qj zPB#{+GxY~4dMf#2j{tsSm}D6ji<46GI(|&t&ab7Mjx1tRFIa{St(XS$&h6wm@;=g& z4;kqv?pFH>wi$#MyZio|&uv|_30v}N!g}}my>V`HoYq{Hmmyu_@j}yi4dU#pf1eA` z*lnSVGJOmB$F6QNQ!JZ1!mqXB3-n%czy!=R@GTo6L_C5)TqxJ}AymV@qo>VnlE&S$ zL|q^Y4);ymaybdqkf=(cr(h!koMFB7M6S6pjHIU;gaDcIhqVb4Gnth@(lsqdWpvtN zX-SJ2JAC{SrQXaPsgcfy)ge~4(8n*E2ggVt?Ka9ZqAu-i_5K5*1V&ypwXp&=?z;8M zCwpje_=f1}y0t>2nxq9CKm20Y`(o+)#kn(xC(E-vXF%qbt+_W?AcwA1f4HB*;K+Vg{q1Q2!({dHe;=dJ=I(DxpO%;P>))>X(@Z8_mN$%k=^5|^gJ2G4b=bhpm za)`>bgq8>1nM6xMVyE4%&B12vL%M}{jd(SXe5ZxtVM9OAuVh=yBuc|4fe5-b_cy*h zycS1`GIKx&vhd$qAGIZ^*_SSOSDf{1Pv!A8gVQdC|Jqqv^{6P(ZCo-cBYL5z1uinE z*X6>KL&ZBbGBD?O72&@%+D$zG3y<}>%>4wAglq;YSMe2)Ri7o{kUN-&E#b2jO97`) zmqjc);e95y^Loq5fNGfE`lwq6uHb{JuA z;RN_MSd`(`$mO#K^zsJpZ?vGazCO zi|FPLOoveP@tjfg{YTv+dkdCOWVI4=M&9+N9MiHy=^~lY1wmu)h_AF#lK?% z8L-Qspz6LvA>m?@*Z7O;w+8f%(jEsJLe)2RJ;e$5!>*$k+U}_=Kuxbzzsa+)F-z3Dow#q%R zyH-Nu=a9V}W~ACd!ni}gZ&JQHeQ4cHx~WIoqV4C#9pe4IZG&mkc_+$SmE+B^x+E_N z%|k9gCy@V2_?LTg+MGwS&CyggIlF7~7_lKj%C%)rTm(V6S@FtXu74&zkA278D9*LY+ z?pX_J|HGL;s;S3AV;N~bmN;){nW(|z4obHU`!NJ~2YHDM6j+OGB6s|dSgOres1q)* z&F9E8&7wdN-52-x@XxRej%2&bO2LTsXQ25zH8LSBCvt6xG=HTj`O1pfxI-Q9?#)^! zz!s_%8-o9jd0XvOa`s0xKr+zUJnea6*|3`B$~b-a=cq|m@N0Q2%7hywE`!TahTkUB zKgd9JZ2uKC|2xFB1*&(-o};)!rwzwI%AL+}&M!A5JTd5uEA3VP+uha>8z`V)2i(95 zS#4(P4xsG>R;dJP+7<3P_v`Mv)aFe>%7jT-{J?6X+2ug$&mOLgao9hLIHz^CuC4Ug zzXc{BKHA+WJAxR}r2}f?ib!(VDoaW7+T^c$G$N{}7{zW0zW+u1`EqZfFqzQ(vEzti zL3}Ck9U#EY?k^8lgBF3XKgKmFuOn`&VN)VO`~AEWp>CJH`OIbTYGD|TF;irh*YUA@ zyS&H1UK{w0Kb1DlRiLvO~@?cg~9ISvTso@$bV! zQGepFPdTfs-%9Nia36Ml);qQpHVWkE;G$5JQWDF3)BB1XZOX43#fka308|Vxb^c!d5v3j>G;+D#&Cic=>gMWT}1E8}#$jCg83Fr0AVx^WYw879b1CV0_ zMUPesoQE0eo%6aK&Ze{-t6XIS%ob|%ldGLgNga3GnrKBG<>=4__orDHCM5EwDn2oZrcdR@{naSL)j}{=qDN3wH;fR*v0>vx+Z>yLqGZcZrb}!|B_=jF<{G z)n?DIIo2OQqVW4F>-Q-X9BXE!1QaL?-4Q%O*s2uK`&B2BJJ!SvTglA8)H#AdKJ3i- zJyQvQ?+x4qH)#Lw=eZ`|y>1Vds0WXcQVILhDzliXTIq7G7m5t*WFp8AW7uYi)US77 z#@1*Lx>i>HrvaH=24O%loidi@%uv;qX&-sPJKurjp%zw#L|3hAQ|OqI=k^gCG4=QS z+d$94P*%s|@>=iUvXPm`)b|+B{Ws#@lUVHl<2>VJIm*j&p-Iig2Hh<2M!#@gu*UQ# z<}XU=JTZ#$+dZ7K-Ss5+*?EAw0#ET+#Oy@zkn<^pf}DjNDAtFY-sFcm+XQuOcW3qB zi2oG21~E|^g|t{j^lp0TF?>E8l_L=}b_<}L<}EXphA5D0+za21$+I5*g8DLvz_>Fz{E1J@H2Enf`vTzBD zF`*|v>^5HcGbs7oE*!7oH{j-l8iSshQh-0_8?lr53XCdx;g$${)vjc-Zic_Xunnv?QRw>MsbQuDY{MOFsSk%%RXo$A)-m_w`Q&)A#g4ODWea zV=Wd{wx*NeJRzD)o-D}`w8L5}rAs!L*IB^EY+w&zbm;c?4(QUDxefSIfCjsaV#sg=FBpY2JwP=Oc!%m&nv&)x9 zKMYLV=Meqgig0LbM7;Tt?0XZHLtTL52J`*;0RKN5|?83elm1m*6 zmy0$hZBA^`U{HPW8$)}!qMp&f;>4%qqAC}${rcgjjruG5H^5{_f1jMvlr;);N@Nv# zkt0ZbsWa5>PVL`h#7Hc0Q&C#$?8uz*rY*vEagt@U-_j^aV~#Z8-E)8v201?=M4TRK zSyuU5L#`8dB$^QCRM;xxHMgQMJNwS-%=B5nkDM=T!9f>5d4sr2Pd4)2^kQC?`xK_6 zcQ3XHvL0Wo=YOelYp37oxqpcdA;DLtvd3-TQ2S?Zd40y-?u3{;n{P2QY*=lK!KNJw ztl6E#HoON$WJ#{($SB=L`fp#I+4wb?%Pu_O@of&gm=^X`;0Zf;ZUDNY7j3texMiwH zV7wj2Fhm5X&>8D_)s$?{V_9$iVzN~BGtE~Qis8%1gtYF$fl{nY`hsWG_Uq_|{=wzG zVHI9VlQ+jVCj;1MObBw#We(l1J!*jk7kIOQGLJz6VkegGy7a7YOm|RS?{~Nd(wwv5d zMPeWN9r}o?*69BbOF63uf)WiLExrBj9k(xg4l#=AZbmH{-<)obOEwbU>A<;MA!H|JRG0_7M)M=0>t*zj3Z;P0}v0V8Z7ScidPA4JRqGyye5W4B*oL}vsp zAgtdaX=K6koSK1|m24Eg11SV6xT)H+OL{D=p^fomnjsS^{#E=edOy@&Wy^XF3!ZVm zVIBNCnG9~VT|R~L$X6^1o*CW^4T zC0S~YpG0`Wu=apCt(PvFW$uo*Ykjt>n6Sciso@v*SA@pf;XLM(`5*G!Ryy05nHx4w zRc2XO=9;zyny411c()3rh=_nj)p>(9Z7FKP+>gtFU>Ek`o6h*ojUgB!>}5N=T9rq7)vX`sTP{>v z)*p~rEL2PQRbQYbWz)xGQ4*bfd@QMSP<~ov#GPO>%?+s!6L2p94T##4TQhsK?;{Ue zkFga{lwLg~m?bJ2tiMB(BJFBvBu;p4z9`bOd~?YmY*$!Ar}V%rJP|os3FlFkx;u_m zX*tc~IfKIvFK$~xPe=zdEI1H*vp?cUsg=DU=VhYFeafhFU0gFY7IP*OZ+(^h=bDd*oTpqBID z$o^>vv3%sRkUoUBDq+-I#gsC~XR6$nkm3oNFPh3zGp-h^17yu;K2DQ0Jq*ka`<|pE z6kp2hJSd*)kvicg#h$K(8dd`g!O&Ab1Jeb&igx^b)x(tKQk z$oD@nn3rT{=gfnv>}U{&QI?|1jquN3Nq+52(j)`FIG!y?Mddu5wS;~_KL5G8I4L61 zkkJeD3!QY1*)B>d0gqt~^Is{;9b)>1#z?AM8B!9&JD;<>$qN=Z%J2-d zV3GCQkl?XZhNO=dj(fqL0eaZCGM=Ejcpy?k*4ExQ!h5Op&V0h9<~YD8DQ+MsP1QE= zC5Z*RW!6%3W_Kp|NfK>jNU8+VSBjWM+zVxyw{$HA?O26RYL`M;REh;WH?1hOZ zH`b*a%Os{ZU6O!}sNnHG4v&Lj60bjI&84pTVVuTk02Ld>>Z!Vq0hoKh%ZGb_J?A8! z3T->)oWL_35dEI|P!VwDN~7X@T@fF=>-x!eroxBc9m9-eR)?(KYPjqgjQKKgE+>(I579trzJlsix_5ASzMR#mHg^_FY*6 zSgble&pAsxE7NVo_BFIg*>jb$dvgn70cdHz#}Ws#nNp4XnVp9oE}ZWlbRQPJ%VEhP zvflQOm%Y|Y{aqyPMPeIT9O|Z|Cx|vKmRpF2@Gv|`5s&7#PuQL=3tcvYQ zDQv6j)nE#0yG1IqpTo9iZzAAna9|_*F!vjrDMoSg;N=Cod6)XY63(;Q_4vtn_;BT@ zeL=H|H0gSI1>H!CX-t4WHf9iWJT`V_nB`cS=W+BgJv8Y*V`}c(r_Z?c>&C7r2ne>f z-viLVn_P+CKeK8Ai<7tw4yI-nfoeLI8j1?xS?ALko;y+wQ=9i~-^s5)gg=$H`-Q`u zZlM3Yy&n?ueK}^7rN1|*9r3m%r^9KdNhsmPGHuK9D7W0&#ojE35~xgQ7Mac^$1XW& zWKB4f+^6rcn5cNMc%3N}AUMfqvNlUkeFD9N$TnTSs(#ND8 zbG6mZzy?j%=YV>FCw!C*7a}EO*g5h zh;O~w&3LFA8eW1u!J&%fjP4*!}k{@9cy zB}E%c$Jst;6a0>4W_=#j;l()8W1Y@^q$VGvD1SNRq4l-%xe~mU9+bsW6OT`hdzm}K)@U!y;u#*pgI;HNsbv`ZKQKE`EwSHw}g+2AJ>;l z;q~h6OWiM4j|_)FBtn$^)MV7RVK=BtWrYCIySZ_?5&uMtRt&LLkm>zzi1t9wTAo&Mb1o3Mc}3^(k{q%&U2nC)vpz@x67PvbZKIFh`*FrM#CdCTSgolwt5KDts=?Pc z@2fpnE0UO}4bVpL)5Y;jKW`x)b3#5f!XP##+^XNmPYKK)heBs4 zpFaKk2#3^02Cwr)B9jc;yI-=lPnqu2wA=rPh%op_Tt{ShCNBDH7-e0ZZ+l!1Ie3*{ zL+^`DePBKg3%be~MS24l>0;}~=Kk$O!Xg!~@gLfZuH&-g|J6T~*6p4+>_mK;+_N4-wB9QC zd%033aKGm4qIz68UsnQ5hVM}Bd;o^n1RAf{sXHte(IbK@7>uhK;6I>DnB=f&2b>(M zqFaWK*>uu2IUr;0Kuck2*V~T^6o3secP>t6%hk;ghHv6xtx~LHN|hXoh2Y!!Q>ZADx2Dkw-&D zT?Pz@HN0uQ;2ND$^p~vP%~q>9BG4~t;*7N_ZaMz=Mw!gyhLLW@j~Gq-h}7CJcLH#*ZMm&SxuUyi^)@hp~|lw3SsW=V!6& ztalBVFM#27@X5KtC0P+OE;WHlqS!J>?y}-@ zI*kuFR8M~l+?PVj&L!4ESXRLzHRe#x+yBP`K-bzFcTQ(6aD-fp9Z9%7jesLAdK7mq zDebS^=Xsm~JRR^ZVf+i7EbB7w)2%r>BBusF#vZ-2#;MI5%uvf=Q0jJj(}CRob;V@C z;*P#%<`mDBqq5i(Pa6Bi0+VTQ8h_im_#e-&TEmXtu?L)GvaU>|&rPZsFJlj2Vy7EA=$R1nGcjL}{=^;2ev>|DoxvF?tfCd&KYN^L?H__YY&Q`#!Jh zJdg7TO4uq`a&=2fk%uw)TIvU+wh81aw?|JnMe`Smn4^iKoWKlP=1F>+xoj2JDWGMm zR7$K?-boyZ@!14I72Uj{U&rb|H)n+JG>S3g;)H!xj-l-iqb>3ky8|*T<1QdlCN1t8- zT@(x})YH&5=6W)IM}XuUMw|Zqgn5URVnQR4h4&q;hyt%?_Wi3^s+KMHH%sJzl=B$ZETzD(n;Ni9R#U%YoP~ zy0b*)ygClHfvFChJDR`$;Ao>Bxx)x!ZkUa~#pZKJ(<%4+xtunF*W*|GM8lyLw`?4= zbWY?~Y+-}%d2g=LbjQoWZb4%LBZl@GK1TjU2W?Ukrvl!8mS;_9BKP3VtMyl7nBGsS_pxSKafnxGvsj@P|zyI#rKd-fvx} z%xoFoYL{D>NCOKYVq?X^V}VdNML>~F`zgt1 zCYr_apLN|MAyqpSxnz&z>!=W2obfdTSh5woo26qc|9SR#Z|8P&AK2jcr7MoSsG2Ny zT}zqMNG^C2%f0d|ZNeWca&)8Vj^CD8`im^p5puZ$Z^uF@RMLY%??5nNRuP_XAytU6 z9>R6Bp)+WvLEh`oI$Vru3}p1%_nPMEu+rww>0*`*^Hl*ZYpBTfkJ`T~DE-!AzX5F% z>&H=)e<7Se1g7{mMzDsIi96wZj)mYx60+Bg-wN}xCd*kX+nIlr42oB1o5)EYJwygK zNq?zZu^WAf%@G8B37fh^X(p62TXTTO?+smeFWHzBMnY>_WLbr&kW@U=R@%8R#Ro*4 z&Z(e{zhC}_I6^J$@I8kHx&JMy5rp8eg$Z`x8QdC0l2{m8z#eiA9L))BEdRQ zWqg($>@w+{@Tf7+n8^G4Rq{a#dz#i*4sr7}%Jf7mcouDxSXjYy4!jcsBTw5s>HY{@ z0A+>=HLzZjA8uH`7EZew@lv^_0_k|>^%kn?W4kj4fsXpL9qSl6SYBlLhSTZt;&|`r zWE#G7UN(sEUEjj9^t%}-cu$#ssOaT&n%fcYQqxrA#Xv zF9K!*gr9L_xZ+GXCNgkRF)5rKI%H|6$2OaXmo)~FpTKTKgK^clE6Q+#wG!D`psivW z@_jXsCw2=Mh`+ji=NpcYx?#9YOIa|GVcL34V+b>_SfSbVNsr6CH zuGwW5vC#2W2lCq7g7F9p=(oUJa# zq%*;SZnmS&r{~O?8E)<62-Oh2v2}SyJy{Ye?$~cecp@U~oI=5gdcZtbHTqjbl^>L# z;arv1NUsXEep{U-b!Ve6yc$G)!#&6%HJhICRio5%kUoLAZcA*2?@MywO%Ye5cSsyq z=LY4QM+tobIvqVx)1Sc~q5|g6nSE5*3ppNR27?XTs9M$=|Mg+U%9#J4ABypwJgv1B z9%i}Z=a29jwUDcN#$LC91r?v>$?s#1gZb*_RJngAOQG+9<561ielZU)xvp;If` z>NI&r&i-bt{2o$Z=;yq{CRF7-|CimBhODAFfZ zXgoyyofq!TtE-M=gzA$BiM$NSKWoVR#sFi2wlgA-M3kGk)ThG#wlMA0Qk=0Aure+o8av<8w^;zAd87W6Row@6nyFl~ zYAx00$qh%~GV?_~w}1MG%+D=5jvMKuWjdA-<_GBeG3*>BnGn2$#+z?{mF9~B`jM_# zqPh!Lz^R{9%U6tDORHHe>UO`~GDirXuH4{;Z~Lrv1m)30i6*##l)zP61yToAK_pw( z^T&NS`nSxKE^SUd9Pz3NEv!A2VmS2`(uN&soq;7J>#V2)9j-T50yioR@ZCM*5&a z{oSeryN4tXV>XogM{c*9$z-rNk9Jweo!^_-4n7O+dM+{`kxS14t%?l;`j6AKa#lD90Xx{eGSiOd+nptfG$I8|sag*)C}thGK)mHHn zd`5BQmFg#`*%MkvF~sld+!FiPsg*S~2%J#Icds!^q0h88fcD$qrm&(oR$E|HAb=7V2>gm1tDkYzx6*CLJ zpH|PTqAuZoebzS4Dz{sE`0tv}!*k~_m2Ey1333HDxuPdLmMhR{|BZgI?LH7!%K0QQ z-j*Id$ptixv-^j#w%j-1CgNp|H;R~<-TtPrJH)?b!uZ^}4+;jgaEI*nPx0F3n4?*$ z#v7j`ZsKfTJ@3|=g)yLh@vlnD38;!cHyzGc`}A#2EAPuUq&Z#Rvq6s8nmou#j!emM zv6XYQ$P)Z1C>St*ZQIDN4O+KZ=fx)+ae+4P9)X0nrofN%a%ge+Yt6I}JmDnUf({g1 zdPw=S!vpM1cmH*aEhQzGcVPnqhWEuo45qwegSA-SOZDG$Q;jb)B(U?U!l}EO`&0Qd zMcyrP*Y~kDQ%W(H|Bk%VZB}-05ahP}AAGG&?SEVB`kQ$Hby<3_TWOJ^(^`4s&^eO7qEQ ze)tbS?r%%-3f!NmdCSE8P)aE)+`x{58cWM^U}WO^U1`X+JC$JSK^r=(rW=GWODtIo z+E5xNTNBhs4?$~G_XWGVYVfitoR>OGQHne<*6=^7PCREheiXd6c-Rc+#p@5>4{~V) zU-Cz`&vEA}DBQ!kxnhn3xa$`aG2MUG}3+qUaO9a$a-6=)nw{8_Vj$E z4*NIj3MainM>vpqHQt>w=AOT?^Xc1k{mJE=vth+=DJnysx!FsO^7f41>`1riT5iUh5OZY?jMlHeTOBIMljE%V`L~H_ zy&zT(ja?h_J<}o5jz4qy!5>wj-rD?YRi^+MF=WvjxlI`gY+0*nl8cSYx|GS|MD~sK z^v2B=vB?i!&zoH0zsVIB@7I5jq!yuNdC*kPTogk{fdJHov%&ET%a}bG2c5IXuub|N z?AdA)7QKib)flXu5B0M4vJQb?y4P~tz~)H}^_W97JG$Ixe-ZmU6Tjjqp&pcFZ3DaF zVLMf-2x`m7{CI08_n^Vi*eTuNd!r88uZl&1AzPt*?LI3j_%|b#AJ4Bw3H!_|+wJoy zDDIIX&)7#RXXkk*iO1aQGhV6|V#O9g49qT4QsWkIf2iV{YUKp^Q*h`4JH@W%1b6xN z{>1YJ3Wm*l=`dP~pJUQ9LGxk>rjh<0y!hVKcf1aE%N8B6221da&}&82Hh^F=lBG#lE{0E{FFLR66Fyob+Nhb z`pzc`Yk-d!=u6a=b5bQd9X`9=Edue}Ev7Nl9U@-|Fj!cRH=GL(63~6W&w<3c`oLrv|~iYQFPl162yMYvXGXNa{hLjMWU?0!Ke& z)($3C<*ewhc7%x#gR=LFm;481Fh<$4eh368>1aOeB&ql8B95*R2Y9GFm9_s}*bjhA zzy;rXalwahC0>QoKy~y0PtyuzZ)&VwH)}JKl`TWs{oPk=@Gs8Y;7Ezyg z9OYbmJM2d$(I~2hZ)5Gbf_1zx{CaK{>8`^Ij=u<1P$}p2-k+U496S_W^OSyDAHCn= zlUxSPSMw{q0MaAj&IPxA6J z)ojc-@7Yd03Hg48rVNTR?}xkgm>R$3{lzH?Ke@mFFoJyPmk!LrRy|3vcU-xDU4{c_ z(d7%Y$n_BMM2?a}T#&k&!rIjaHugE=so5zQ)2nhGOl&jMefRFoF0XYDm+%dD@)Yw* ze)De(lFms?l}*9;gD;3fHS&$rJGCr{@M=06r5V4*s%SCYLE6X<&w3ob`p*ZJBl1I> zi;l}Fnn%pO>iUUXg;g7q<>P|+nbPT=JeZ*+=Dq|NU?;zsF#Pcv&n!-J^n-;y#5!#IrYiqdxcF>HkEgZK+?)pS&VmjE z6_M8fqnp&$#?D2@C=!*Wwq}Ro6#K*)tY{uxiI{F;A#PDJ)K?pPn~Ps<1`>fQ zV3`y;oSAaW(>2DUX!ak+&qjkWvPG+AA~VIMWDTbvpGU|8!H_9Ze}3Ycn%AOBX_@7I zWaZ9WIJ8IV2@Uv$@Ca7x-Hfu`J@6SDcls-DDuV+U!$nV0@9UN2-!u* z$yF#}a|Rf~J$K$Js}hWCKC*g|mnWGSNBLX@MlKuLe+3#k>wWA&&Z-ZaJFem1u(4Q` zp>)h-3v$gnK_JqHj0*ce7!THPm#P< zdAbE;lyT5)+IESW`x$1VvD&7YxFEYoZuSBAjo-3BfEKln_V=CcXTk8z8M)JY zs+?yc8PwJm|5SS85%hP@uT42iIoOZvML5V#q{@7G5$o1Q!x`EpW3w5} zGbQ~cDPCRL;~}Ak%8n|$c{oJYlHosbu@?<84*2(*9YQP~Pq~{f=?2@$W24d-yVxbc z|H_&|H<7!;rfsavx>PPp8dh7^4t&FCuK?NdjJW%UBTC3kE4+iwje?qElQY-4%*v7B zY~S&{ant3?O;bcvK-UGsbsR9;(ns2cE{mOhuDtLwXgr?|S)rzigg}!n(1FdBS1C?e z2x|%3k2V8flm*>w$>l&mv@TDzwq173A?pwOUr{gI{p~tp?kZMaxlU4z(>=;aV9;1P zfNH4BR)6%q5eMlKk058LecRUoi`(nl*LM>R!%>HcIY9jJUjJ8MBD>auu z)y7gd6jc`|_%VzIdt(2EZvEdr!P)e<2SwpGePjf=Y`dL*tuB)KXr1D4w1-lMNbg?} zhhw9Pq8ngL`Y``D*_S`E@3OmdDb~iA;;qCrUQW2de2%)PbCg3GuEhEHE&+gV1g>-1 zkK9(c(g(FxWAb{#m%YhRucoeA2r_W;-Yk5X$Vr!DPd?5I%;n-K7PoU7%ef;x!gBa5 zr1!sJx4jj(eS&%)QHftbK{AS9^Ziv0N6N!$L(h*;^XO^ z#KP6~idVazqmNp#Xk?nlhhG0CGRI->`H@QR1tEqoCbv^UI4-FKtgAfh`a}KlTJAN^ z;F{-g3^zF%ao2`s%QnDn81Z`44cl z0HQ!zP*#NX@bs5uGWC}@DfbWo7UzFee8iUM9n$6=bYd=T9Qv@{g7!HjlpS3DLK7@< zAN0sgxAGPz6XRV+1|AKz)XQFgHq5Kyb8kwN6h$p)8<0)D*wIF)2CHT}A(wO_`AAtW zC&?P$-_IQPpUlf+gm-p`*mTqFW|ji?Wk1 zIdHCyF1puL;hE3NfC*+=YF!^0^KUfa@raOb_hE9SA8b59TlJ+~^CU<9*6ol+Z&ma8 zOmTmw28j>&RBH~Yk>Lz*=kV`on$PBKp%L%fxfCYa)q;zEj*PMKwk)ZgeTf`7iqyQz z7_Bd7lKIZc!W^4jak!4re>JFuX}w&<%C2?vM={~iNCHw!XwbrMd^q4ow8BWI-QSOA zBqRU5;VCA5;qAvqT3-!9gqqOig7kW1V^U~s<1eu5g33AZ{A6w8B&TWc&47^#U}sV_ zC1KT1{@kd(od3dWX2u&h=i!z)iC5hDpd8f={i2X$z|A$Z-ca?QIQ;fxTgTW#_6^?{S-m!GK4{VmM^=Z zh(GeMBC@M6yjJy!9s)y+TE;~qcyRBl(dRE&ZYys888^c6aSHpB&~Zv|FKY4r|11Wd z=e3**<2>6LS@YQqDwyBR^XOS?aAGfUYzB|P zi1S`al=?(}&APjXh-Oa3-;-|hI7xoap6q!H-qC&THi?rRxBU-EJ{R6&&N znho0Ac>rvSxOQ_8`>A^pp=ZAg(#J?|MuW3cYKnZA0dTRp0qQC$c z=!vx!_*ik((?#!nMK8jyq?^-Wm1{{@Z&?2`#?Y7mj=sHm-D6mCXdO%TH_jG^-W~mx z6K8ci&{}$_!f?^#7B?U|FbHw67}frC)pq53uR+Z(k|Ojro&5QXBjEiWxCG1x=PTpf zr=P-JS&J!HUE^z4?*PUFMBz1+w;`?^{tNFlWroLs02Kqd@OUx#+vFHdm|;QNc%>s5 zxnLiCy?8;k1r8Vf1t$Fji5t_Q(fI0(0%ky+02cEYW^_7Krn|X)nc-`WoX=8QOVUvR zW?df7{9k{I0MDjU+BfRFd=i#S(O7`{;V4hUpw>J(>X=a3vQrYjoImK&DgCe6mcx; z!^Q-+s$S{S^~Qtyl6)Fw^0RmJgNuV(lj%cCsg$ptN3(lK12hHHms?{yC172P*oiQX z&77~DD~7A}MvsE^hl}dJ?@TP4jds|n9L;iqE4P}Jhz32+uBz@E2J~y80ARnUEJ^=( za*hAb;j>c@cGgVEX>?79xs(j`SYkOF=6jhel2z>UBKF*q#STSS?7Zv!6n~(EQzknm zzN_S?*ql%EUI%FQ1W-p#nb-c>ma+qjSd~!I73CpGuhUfH9$9Qj?`vS~Je|Vbl{`XU znd;dmBkfZZj}+4Os4SVGWC2=R?rGV2paIviEpS)4&UrJ}G2OVB8Rvdw(ID-Et6+&sS zX8pxz>2rZAWV6fz^==5yR`ByMd?YL4j~iE~R~lmB&*GP-aHE6jP}2A!DDo4k7fZEJ zk8YK48u#44!ehtlLV=B!9KU&=VVZJyIHC(_OLDwc^dru6bby2f}fc;L`vR! zF0q=`&h`y5=jCU&4r5fncUlN_}d`>b;q(p$uQa z`3Sp+x&fme#)CU~Tp_!qtMlnoNWcB9e%5c?eX)=~37T!q>HBpf+pj?J}bx>dGQD$TxsLA4f4Ujc4?b+2oe)kl9us>_6|sccHRlY_WH&!>5& zqg~|b=MkATA5hJ{@#u|(!IDE0zH=O4cpuLbZs!ej0Y*H)l7*FH?D@sh@7WGosP2{9 zoQb6OsPDuXDKJT9E;FzEB5^^LN0B$v|G5vZGcY~kfAYnFcWCPYXwi0A_oIl3uGD8^ zRRQ<@D>}k$SYtRU^M4dDU^ zZ&?@BJ4>^7QoS)q*|__`!GR5ZJ334Ne8m@Qjfbx z`t`hin}3U_?QEPvS#^zq#Ziah=bC10SPJgDzVyMXrd+dP&u-aD%lO%*KVbg&bcu*c zuM0wK+qhqFyWeiWneEt?B0?Nde#*fb5k(?y{h0-M=U4T}-Wj;i$ARz0F`?E0JSe;b z&-sMO0~G?6;E#^dKwcAG?TCNO%#op!zHqC2Iuh-cOY(& z|GaRxrsg3_w;aJP)|Ei) zhpX9?dzNaHirNYcGIk5EXtTU|6qdg?I{CH53>Xl~f*p~4aE%t$QeX5Gz}g1e8@IJu zu(oL`Y?*8ON46hE5W7?}3=P!YJ&@y%fO+4^+iuD!-ms|`ipBK>w$)&V6My1P5As~> zRgjHqm5$c9KyHYzskC-+vU{z?ZNDu$f65hJi>}MTZYhie;xKA8#XoRPyJ#8}0MB}p1 zlTRy+2;Z&Dk)l;bffJ;fL!}>qs5RtZ4f`@v3?XRa+lWAlAlHAJa;Thoq9ZXP=MJ*Z zL2<`?Dagfq_-Pe*{zXFgGg0SffvWbH9;bq)GkNyior=nqjaVU@c*!szwR42XtivHF z%XM3*QYnQVX1h7Iu0%n(6V9i3ovCzZ*hg-w`<7+EVs~5K-q8)+tqFl3?VbbG*ZHNj zIr8iaK*wDrH@wwW`KhGroBDUdB^FEnPyIgHt>ZiIcS~+P{fb5VH$7AgPgEY(S6Qt| zBadht*UV?MOt!0>ZHz{uUI8U`YO05L45jIF4K-GLr@0Vt9Gq~-G;#v%lR)fP| zVOp|C68_7d)9M=oRV6Pc%_5U7oDSUbaQ%vv_I}qKKem@vS;+yl*7bAZROBa&0fgXB zey-DR)M3++y8hEx^$u8Vd|$emqq;P0aT?~=hrk8Dr>fX+mL#(Opvo-v^v|Hm)DZL0 zIF6JcsQ+Q$ZAR~}`-ka6-gA?52?3zUftgExS_t5T32*;xhehrUdSz(*T_mqKp~aby z!X1-=iL^Q}vrr33Jp*vj8RLvNv#w$(*Wxg$&}+B`R-{1Q-uROCo>KnblLQ`{3~ZQy z^Hf5^SUFT{KF)%w&S6brWY&u8dUkw;|KGaPj`Pl#ob`0(BYNXK5zD3e6G!(SpX~Kj z3zQz`3W5S;wHnX?@=~ny-M7|m@|ZW%FD4j(39!o&RxlKd2~uP0;_Cm1I2%-|FX$y5FicDGf$Ez&tk#`XrDeLOBC5GR{)r zvRf4l0+gFT8~!^XqH`95ZWvTm7_as8I`E8fR)Hk z*6F#lr2@zsIXY`lJXIL;FHgT@s#}Uq3wxfE80uS-hi9!+h;q)5QyA0|n6Cj*KC^pM z($;MCbNMSKGpK-0TSEP``H~S;4c+tU?N0$8lKlOoPRsoM6ZFDIZ$7iydnSv`JALxu9&rYD zZ|MTkSip1IPrQUPz)j-a7KAO`T0iYAydzwc72ua^Yqp!cQC$$eo>e#C#T+ZS1=Slk z_G^l-G@zPGU(2{;zr`T=VAXloJw-HGt7_$rs3gVbXEl!-wmiIMcwXjXAIFLG_!$v? znG$a2yVk2RZ5TC+S>P=E>|K>rXG&^bK2US!mN#KgVs1mR?3(Z#Gu|l_E4OZt51NhM zy$h{Ke2{@mgtW2Ft0z3i16KF}a;_ot3Yz18mh*j7n~XBi$IqHFivThuCY!=)z4Pg$ z?bt-XNX>-C@$qWe!HZxBHnu{Dm}4GtvV}RWjdDbJ+A)_C5JWZ*7fS&+47m=->IT}d z@!l+&tQ;%2G?m00-CT{dFHV-L11djsxttd6Gz>+oUvL%z}E!;{2qD%Pt$El&=g2KpGU_I$IAKl5!$JnvEuTj1l) zI4wKhYm(OvT?C$HC4I<0bxyE$mwXD9QU==L z{>#4-(wwbK+yn)(jyvzzd8%%RSTzUiaGL7&LL zvyotr6#o~L?QSisGeyg81Ic|BqFvLbvb5&C#p*-#} z`#~w(f;u~GCITXIcabo z__{Yttk$%%WNc883gi$oKG||VBxk(M_8LjlWULIT@1emNFZF?ls)zb1U!!PCS7|)xPVUTf`mzVxE`2ab~d4K1Dk7!qY{^A>f>?|)w z*PXR9qTA;?HIj_$wV#mQPQX(6Pa>7GM*2MF@5WrKP)QTvgyX9qr+qGZCH%^No@$)y zw=~)2bAvccN#ZUTnaV*8vU>4UmRM8pY+C~jspK2nF9)*XC-3L$8Cw2fhtr5)x?>U= z)Xc^bdKeq#zklJ)x4clkwE0&*^yU7=vR>?+tP?9xS0=Flo?i~Pi#eD92(aRZ$^cu- zwXuHIQCk|sJ|<1w%*XSP zamSz@5WW|>mt*NSQ3)WmTBR3{ylTSdGk%IA&=`3=Jxp5G@eNMCi z=>1kK!#xEK06tLhvSvIP=%s!gDzLZIKiu@dE2#1>+`D_{dl>UbfKliA%@D`L*iK?a zd%7%zC<~4=#fY<&!wSg>@;$1%jseY3(!i~#*C@g}qZr{5M7wOs>MfSh;dGXglNyXO z7k?l;GibM8(w)oeBl;0kylApRZ<*)Ir)8`OW5R z9HvViadiykc!%4jOu0-f4pkh-K5~`B8=h8O-pFu#(srfL3A#o9EJ~m!3xQm7I>>8} z3n&7lhqh*}obJoh<4D1VetggMuJKZe^~zU!pO0Iwh}XKXxXPU_RE0H8S=hKPR%8$W z#&@sppazio_KN;^HFOGK>s*9zKj6l)&9{-8!nT;4rKCn1e0uxcst=_KOxx`5`u=qFOV2;rlC0#(hI=^`Oq5MYK;cqu!B=TJKVIvI;w?Jld1FUBF$*W$+!_O((p-(dOqD(dxy6tPf;1W*fBBWBN{Suw)~@{MBzNDRv1OHq;6w5q?GaHQY)+ z4+)1|4th&7o{E6>`E0)INHp%pjlQC}0=P{sNv6OUxcq0Hn$?)EHHhZkm5v_mF-Leu zcrCT8WjI!;zfuZMBL9bMxnpZp)JRiec8hvOKSVk(iUi?ukTl6~tZDjK^sp zrWEaubSg}E?RQ)i`CZUz_v!I)_|W0&JY+z_cE^#W1FwwF!F15alFm}8=^si~6T)Yq zVMzy{Sq(#eteT1v{JVHlQTHr13GjoYvwoG#(`A*@q98(<)p;o(`5A`-4pc_O#_bxu z&i|Vnm@n3_)$cO+zD4$elW~4cITs{^~c{I(xusloSxAs}wvu zmn0uZzmd3iNAf|ZUW!gBj4Mj)9aFy3J+t1}E&`$iIGhyj$U6IG!ok zLP^moblIH7L{Zmql3Ne%!T0Cz2F|9rljs#a*G!W?t(`vrfXg9<~|_5{v`T!V#90kheE)atsa&Qj|3s(W>!?q&5LmWeElgnO=zGr% zHiQ(Fj`PrEAW7ln%P18XM|t^kN*&V8?S$i{{m86!(>{SiL1Vc%2ZgJ8*$6y#N3x_L z%>fATl9SDTWo6vVR(r3E!6ffoCAEWba2TlYXsuFA`ts@MghzIAr6zYse!JYu-=fJ`;Xwh9 z#C%C_6FX`^r|Cbhv;|Q_by%^14xNf+P+WVayY(#CD9ZKEyul{~7x#M#uNhhzG$-EW z9Z+(0P`$?CC7Q?ZRU1&tZ_v2Bq{y= zao+h(Sda3_EPYL-nC1GTupQa3owW%pX`-~|9Q~3#^a3akO1-$5ja?o3(2jC5laZNS zB^rgT=NFE1XIf*Y6cHuQKAf%_M?^Wx3E#=M`_f`0^^2LV<#5wqX5NUuYrwko-%p;> zNBB^Pj1`ZB1S=P zlJClXg712JV*l=THCG1FZ|2c5Wrsh-NKllruacf#=trfF=QkxNqT^TuZvoC>q}V3F z`2{_i%6o5WGUQ;HdFkQ2P|3+}U3s78#J~)?0E$1_O!-Oh4H_QP)K`wcgy4}VNqA$h z5j`p@9D9*QI@*|-#i~XR)WW{()KNEJo(g?|hw*(|BP_divIC zODNM|wciN3qO5lsykeM_dHOHu%*oR*W$8j;wOcOT`>lLl{sKx>xxnbipK_^FgI+@} z7VF&NqkM0kp6}$H2ZxFLi0<@K=mj%zIX)X|8Hl1r)V*y}DWT(Odh{fNOJdfh&8c3< zW_*BA5u_8x&r}u(N*6Ud`@cmh;YxU>Rb3=JeMNIu7me^~g=S{w{H03)YDZhlx1&Z19h%BmU@mgw=#v#)e<~SU8RSFz!Ztbb>#0^tsa93R zY*eL2l$xdn95yUX$I&w@2Y6SO%=}hLL8yPj7o4_VH;*tA$yv;x7$7Im)!_{X&KKnC~ML}$UC9N1*JauWWu-)DsK2vk%i*Fyn z9|9}ybw`e;A4jSI{LX5e3dk_r2y#5%1Ogbw&kwoJKQ-|?@!S_Da04x>m-YF@t-S9! zb-Bau4aAM)S=EWV*^BCU|A!uA?I_f7KlX3FAmR-L|F;iRb2`}oXHr=Azac^BF5e}S z;YSc%_?&2a)c`;Tof24Hlr06yFB*d7b1>85A(~ZgBHT_tW2yYjBdAPc0O5=uVL(5B z#&2uxf1*IT1mjA0@U=sYhZfe&HqNq8bT&Rb#|6ooG654W5eHsCF9SJiHxotcNsobN zZ7@RWt1q}TGCCVub!=qZWKWED{aiD83Yr8il#kt>;2s~{SBk&ra2~kjt}y2qh&Q|2 zB(b#v`noy}?jQp1-jFvLtIQM6-c>X{R<&O`MKwUD06SF7u}SILV#g1ILjoe?SG)mu zXIAWTxe zSJ0!SyOlS3axled1ueV@H)38*eF7^D1OlsqJImfv{BRS3OR^60DY|KY)Io(@sWOpD z8tGgI9wuRpy=jX*>v``%w~0IAPsm!JBI_AIeTu%IJ{h>YOtEW6Z2sX(s(OTP!(0MF zA(xdI0}p3o4;lj!IqlZm9bU{i7lGV+2Hx>(3g&ME-52mh$ukK#t)HU5@9G2s!dbaa z+yx<~Y8j<|&G@)_0iySR6}Rbr%=HCXN;7ow0Z<7+np|vI}QhyK0t$aEyIUV&l{S3?C8o_4$TLbk_D2GsFC#FSCclUpZR;I zr-J836pZzx`8jzi$aMzya*+~1;~K58zftU%xdn1Zo=rg>Zl!V?sQS zwCxVtCFMAuA={ps4dklX%|FmDzeO0xL+|ieu8y*^C1tr2QS~QXj>?i`&vQ~!_t^#8 zd1`0}7(V(|gYNpcxJ*lsg>Kq7waPj5(V;y!j z9qzz?1r@%Y(3R4zdph)@4*K}g2zz?0%-w6#3r)owMw|b?7eEv}fB8Vl*>?{{4vEK_ zgBg;J$G<~|cOM)Af4d7zxN?u%>nrnb^{>_D33F4gMkzLnkH5BFr9EshYx?C>YWH3s zXzzKWXy*P;!-R2W)&K9hUFwcHFj z1>h0k6Ic$z*3ETZY8bq){;Zd-`n_TYJ(}H!K8A0zvn6DiE#V}46(z~J8%Me0=j5>S zvZAeU`e5sQUBa$zWp60ZAnJ!54~C4k2mxsd4#!CTH0#;XGrZM=cZxIw-h1)PEr=IQ zbl|m16#MK@E+8^q*N+Y1#c6VA%&5rnY*Nc%d2ON-`f&1O}tA#^3eY-7eXSugHs zoH~;ylT9d2e#zJ)_m!t5T&kemCS%cQ5F9Jqae*tkaexLGc&;KA$TyzuSPXsKDBoH@ zb{3c2aW^%N=tLjiIT0y{C=T`5Rj=thok%L{0e!hu$iI2lGeu%B@c#`A|(hSZd62N&>82mDGmxKlgG)o`r)^5y*{K^D-aUWjaFflVFdG^QgpHv}ZYh&jV`yb1N&<3Em6B=2@FXgS_v;&%aViDV{u>nvpL-m#}ZG(_%RHls8+Uk?HIn-hH=y z5czT@@3b;ZhTIHTcPpz%mmSSORS@JD&%+p_Sp4tF|3}tYg+(=S_A~?1|=0K>F(~3?rw%|*e~Dz+9!J-ab0u5!TZE|*81J|{rp^4 z3PV#WScl3*ogNerub)vo3~eIbcF~y~I5fTYDTVl%H$$-H$H85# zR$@?d0X1I=KZsxQXfCxdnORHSaPtJ2X8??GiNBk$^FxOdDH9%FBGp^HElUW5N+&Ry zVOMeqY2$~mV%?5aX6W->8yMW54Acfu(q>pz`nM;wmO>5^UY7c&)nJ1O?D|q~A*0KI0W%>s ze{ZY-=<2}*$_b=*sG0(zfuvz!pxvpmsJe>J*Z;eS@<&2g2m7~SOk&3N;f$hmmk%w( zJC-A5jrl|mH2-L(y(h)3h(}m>Xl0O+>LJo+45BT(-rnH94DhDbfI$yYm{D4l>mp)p zr4t84uIi3JA&(UV)`M1w8^FCQa-bg^Kl~9;iB?OCfIF88B|jXe6n(~#C<4u`(9F7~ z3mCyz<_R&GS`??wavgD_d4914Q^=0jFq^&w5v#nC>&H;*4Z78p&VT7b{lfz|Xk4Q4 zgP~jv^CJzayH%grpfJD2`|C!ZGp_r!#@$Q7c+|r)msm%*#lbt<0kmUz zi4$pwvFqV%A`0IJKLY2JhxgG6JME)=7kp6jiy2dtR4Eh|#`vcbAc8FnWbAJH zT>M&lS2;Cg`yunXo+?To*${{Z_G?e=R$}br%i?t8wodBcIWJS>2-ux{EC7Pxw_{`iN^ z=TaeL;|zak3pbh-L&f&i@qctgwtxpUSl7<_s%?A(T52~yt%&!WQeV-Q7$V`SdS(oD zm+RSQwbP?pgcVD)+}C5jfGM<7kR*QaH-(?b!&uWEQe$iyt=D7PXlbQ5bU$K$IMbt= zYf-F^PezCg#d;S8#k^s;;VZs;*(+j+NJ}B(jl-5w<^6POJ>$=m@ z?Q95TGrrD0%4XG(7~1J=-LQ{@WcAEH4gviUFk1>ccaFwEco#q!wEfwGQ;{m4a;La7YX-AJDPU`cnE z&{N7UTeeI%)yjUEVDyu+i~`3ACClMPpgB|h!%jbiVgmRSI14i2mT2YW=w89!C2F-l z-v0YrOLp=L!?Sw-S@`ta>Qce#Ua}US%Z3NHMAf6Q>ew;46yUn<1TO?s&r;g7m4zQ< zIMeTL*hp1>s+2k{zZth56(3J=taS-W6<0}6^JO%ufJFPwZ9=Y=J&=wYPum83`j-0K zQ^>r`&A0+?fDc8oRvs(qiVt3ZAjcO>Zo^P=39HOWyyNQO%{PXrp~CR zgxd(d|KvK*=qY7(VYwmi>_&1Sp(4^h^bH9^WNjIw zz{+3yY`*5SsQCm*u}^~9b~jGr_)2b1h`7CeZ%czF8Q{4GXO=TR+0MVdHriwDHE#Tr z3y6Yl3#JS&aD0ALf@`~AB;NmuuHN2W79X3%_}DIHI6UCN?sySLRzgtryFJCpE}@rS z6bKk2sj5V0_w1028~H^I?k1H;1)c)_XtL<>aKORyyjuK62}AQGSz>_Pb^mHS$XINq zk}{huO&>-&fj%RZU~BTVB}z}G7O?hOp*b&@elr5 zw3gPNl#}TvQSUC;tQ?mbMGpt~Psp3nUEYcxRKo(d!~88dtTz>|M&6n^E50ly^zO${ z3Ei5qLZ&Ij7dpCUW%hRw>}`@TN|A02CZSNTd3RiXjq={@+2Cv4dmo&8AM7^XP25l8 z96f}ko|Qy+eU_cF|F05meW-*5sZK=|s{nXEF14Q05ITt*&@36z*y ze>T@UXw<=ER1U=6$3f|`_rJ*`L-9Lv^a-Iq)fuazS>Ip3dE^ot0ci-?8lY;*tWFVf z@=Xl(WxL=eW&J$Xxvc>Ru;03H488C{HIG_x*#Ci4Bj(X252-ks7Dgta^6~HLuhIH^ zn=trBV=7A#o_8awpnol>h($UC?_;zs4{`}msi*JM@|WI-Uzx`nHZMMLi8o945fPHW z4PIV1BHbN-W}D6(3w%6`w%JT;Jf=!IZa^NR7;X~%E;_$0X*fTBbJZ@gb!_>0cVdW; zW_7Nv?kEKZ^i>Uf+a4_&fc`d4XwP-1``ynt;~o;7HH`t0%M8t=@==7|8vBOV@NTN- z;XkjQJY`ZwO+WNKnRy3yEIj+-l9RDt=Ql8YVWDsuDJ&`UmY+*!641L|pG&UN2%no3 zuWy-rjT`4TX;VOKR^{%!UpNu&!?d*x_)=OS`V6SWraw4P^9q|)5X`%5G;!<^Kq4o6 zA){S1K@1qM>5*s)YwRZ`q4d z{lF)KdJ+dfuWGJTI|b}e+Z4C7jJo}IkoUo8ss_GI{ZD_;PIaS)3bkx^*Xz;Y+_t|wvN|)l zU5ivvv&Y9?q5Jh4IZppxFOA;j-V+(t%8R|dR{xe9h&MI&Uq?U&ke8u8hg<`9XA5^TsjfSQP}WAERkUMec^_-8{yHlpn4{VPYRag7~8317qsvn=dui5X`o(c<5};(=P|^Wo^QwE>VD-{undAn9kp8))jKmNEVQv6S5p!a4C6JZ zTx*>_3()@Hf4S+%>9O9|U4gUoMxa^4SXXll*??Thsa8fKjr6>(czSJ5y106Qn4iP_d4c_eXHW>9nP@&y0orTQoKy&tLWh zBzEZY_V}VeFRYXRun;f3zxKJeQM-O%F3tW+Y8|AWJ?fM7d+6L>`#n^qT)!>g)$xKL zlBv(}zB0snY)RXICZ_hB=+YyOj9Aa;*0I^5MB$6kkFqe{l5!mM1r8Er^V=+oVCh8O zBWn((G>k{a-}6JNWNfKn%madg&Kv`Hjjb)dS7|UM%VznEiXIntEmtS4o?p~4)V5L> z8Sx7`siLZ7c@OnWUHIPq^TJi_0E^!a0@3N6&=XPZDb3Jwhy zUi-~#n_1!(k^mCp!YN|4*#+<=@~G)tBzdHF7=K=Xxmql@k-sq*My{5L-_MWyKEBEq`F30-eeE^2?*rs8yvy9<{7YuT;)N8OY+N(2dbf> zq5CYfQQkd4s%Qzz-zS%0#8-!JAL$Hm%)~r9SKw`GaKud}#8>HMYIm!bwN*bAJIuTH__i3{zk_bV%UQ86JH3_E0YM-$20bH^Gqrtg8SV{iet_3zvpE zW`i^~iY#)vNiG9G(#5F@=3{Zd*a6tOckR2^z|-V9(Jw~Q`~KkmwiHMjv#A;Oc8*E- zKJ`FrrY$`*4-$V<1niRIQ@j+IF$K8-TKM?ur<;H&#w3@_45_fn2Mb$O70EF_Vv5o~ zY+wZA5@VB`a23X4x1Ukk2+7HBjH#QwX_swk?lNo@%UnKBDD;d8>d6)=;^0ZVf;_y{ zPM=XI7blMt#AqP9Ug`m?=}0+21SbpE&ERuSVyBPzHCX>T22yU-J^VZN7Lh^}Yj}zj zYaK$b+d~R!mwD+`PD_|nsS?F5SN*9G(3iwSn+^{)gae1db3EcB>(hV=L3iC7ISCGf zukrHq{@l|(4TXluW~LyiiNx?&UaS~tuE)Myd{5t=glSK#ff2i;u#J| zdy8j{yH60It~QM-UkQu#Mc0_;o(#6EY2In58@O(vgVZiSdomu*Dj)hIhwg%dkee-X zJB_Xk=vUy?`8D$9AQvoJt1F^6Pn8G!n3p62o;yTKwy@Xybl5g*uG64(9pn3flYW(y^SCDeo3!qHubIxfhEcw+X>n4ytsZtTGAh-A{h34iR7_8X$nW!k zIOgv8;rBviltn06A;Aq(?ohtjeOqK=$3ys6%I!tOy(<$iK%_m$3476sa1NgSzVq-^ zRUax@=cE;eMlWEJo&u25AW{R*!*=mu_w8S~XI_bw`5+`C8hSM8KpP3Hw1>U`ZMo27-*ClOcx%W?Ok5!P&*8 zk5ofUT-dfs8g9=E8|nZR_Cg_sJA21Wx7pe+eOLp*fZ&H49!9_r)|NtOF}VWg$GU+t z?PTDh2#xi%U`DUo<_})#1n4^24j_X2xWB9I@S%s_8LYP_;g!%3m(eWfT~E0~SLh!u zl<_zHyu~5Nb8w`$G~cCZ3r4j1ss+-5?$$=~y2;c+LG^LBfLliLP)6Bw;OIH=*BCeY zLC}Wt)*U}oLC_m~(r#yH0&NoJgWiyHS-hkpx{8&r4h(l=GL2TfkU_m(6r(98zdKj* z-CUAG=RS;1JJO`N*cU(4pgDK-Z5#=WL?q1esVZ!H>{=C6N|Xw+z;FF28gugk_IfJUlroOC*89}r0Y(X z6<$rDt&xxZ10s9XZ+G7(q`JQ#n+#M(vu*lj^FAf9RD+-UXv&g`d*O-si`@Kba^vF% z$KG{m5q0ecDg^6H%{fB|xvPuUBsT6=)X2jWuI`JV16^Mp3xUWJdPxyp%WcCInLQUY zNJ@$VRo`xmI*7OLB+}%d8hH(F*jQSlgx56rY_RH8KT#biXJ`^>swg%uC?AA&yp~%L2P8h!F+`NGnbYmEKl?#fn;1w#UQdATd({AKfo!dAn|0 z1*n>|?5JaOB304Ckr>0e-51|qOt(a!5)CbOYX=?HSU!jU7+IGXWbl+y($mj=#pyi_ z%N0d`J^kiiyJ&sPkM}k1!KxFmKZRu;j5)6{Pl5&sX)>})@-`$FZ7+}hITz0Dh!t7X ztaxt-X7t}Y_|kj?(#>xY8}`d_?mZedJU$KpuKNGIPnvy~fs>bnsRQt7!oaWF5Id-T zE~Lx$7_mBKmcCa6qyFjj_gz=(hFoZLhYt9dZyYe7;_emBc%7&bf*BpyQ;xqocKp`@ z3kpZWB~=LkBY*TrQ*3ei8Ca_PR*uR=lI!r=#q|K=?rVR@^!3kfG74og+ZOObUTSuO?!ZkqC;Gyg ztw<}_^(v9q*(b%?i{7~TyR~>wHwC^RUU7d4KS~!2x?g`u$9)?1bwo2 znJjv2yhSJ+Be6&`S!6Rt9?I4Tx&nuSyUihy$K(PNprNVfk*?r6ENo;vDVHf$-dtTW zL@)EL4vS#`nv)u@L9+7W5f(|reqgj_4_lFakKgzzi&x|F3Q1&99f}iC!{#9F5RGt+ zdajsQ6@z0F+sPOR^F^yUjy5Ei@(ao(bgYWkbPZd0&g67+F}xpN6#yQ{>EgsbKT>D3 zi{_+R-KclWIbnLUZQvGd=*&*iIK*xc%XF#)mojP#i>-MJeeTq5XkfuKtu^owX7kZX z;GRE15T8D9Neq@Qg06};1`F*^rw9DKTATk3qL_a+R^92FWvs-_%UV- z#pIYazjh<0P?0P;4WRH)NOpcp6OIZ7D8kbxT8a!IMph>#!TB7!fg@;?IbMIRx6jG9 zbV(L5MRjnUEC)NVjeeB`L4IB^?q*Q}d^fj!lgp+kw?p0)BY@J*Y&bRmVvINlJ};ml zD#aVaQ0!d4X%E$$_ClN?M~2A=VECY%M>M=LfPu#^{{g=B-jsg8ZB4jXSso0>dN>Zvjf4>?p9Rs0&w2elPX>o?#iG%p(=Wy+na+}Ofx)~M)%EZ>b z8Xnghe`5;f42}aW9ue#<<4~d+CCYqS+-Z$O8+zPs3-!_d94B|+4bdb44qs0Q-vnr~ z=*E`J8>(HpyKk~_-yf~9rPB5o@U4n1`MOTMdR5B`!$V%3a!wFglgxEjZp(|oHa?{& zRUh4ANAu$U7H0^fBcc1Vd6dWrXQ6M^`{JJi%ZCwuw-_H+jQX3u4YJJWR<}G++|D#&2zdY2&5v-PxH7ZA(3c@Y4)G>>>3)Voko)h5UC95nz@ zDB63Dta>2tKWj+IP@sKqt$oSimmL6Y2t}$`u8H0N0~bIofnnKzA)=I9D@gDHdZxMs zx@?*NMr*@Y*&4uqC-!9&2PJ7pjIuBeRY`VEfUO-q8AF^k1&utfdOX`gc3?^ zF&jtX$j2Q%=#et=k<}lOiJw$MJ>zA4M#yNXTjH9OFRK2iZ9h_DFp?LafSjJpW%9da z%6ZE)UK0_adYi|d$rH-CwS_2oULM&@IZqFD>%oOX8JFfVm1+p#&ko`=a)a-08YIfj zR#U!~rw+oKgFI2t!7_=mE;gqaQE7*1(6QXcprKU{o2I)~HGX9&Rk1Y?dv-fK z^$>)Z_I#}&0?5TEJ#W0ft>@Tf=Vz$=Z)W{b#r}}X0 z8tdzUFB6}$BIdG^K*prHBM9f4-Ynr6eU+T-dKzSzK|KnJ7-ml$K_}4(%n2V!Z;;*~ zLFuR^znjWI#$W4XD34MC#xgU_;M=#U1W_^^yjT$SIedc%zREO+2H1L!DBoGMUqzy} zN~ABLEKQf>50&lnzq9Ca4^@GgO$N(!Ij zUxbfe%~%b%74#=YoSGqA{bNLoaGNl8F}s}b7H!g!YH)_w!rbF>u3;cW550s7!`k&- zj3#@0yEGi^?LG*CA1;mtyS15`cQFJx+=v)YY`vre2{YOpJ@xFPC-u4+7Ib+w3G+IP z=e$S%lZx#SDJqI3)*h^AhaVGaV4{d{HGUr@KZ^>0OS&&HqyH1d-x;)m$Ir>=BQ@cx{P=7>DdpoZ{t1|V9-t*9GK;u;a z-r)M$+lgfb!#Y3^KR<2}fQ4^S5t?%H6|tg|Y-8}LM^D;yh~jVles;XUHk9@LMD5-& zcg3<{-SQ*t)lhJUYOj7l?DtC`VCBDuO?u7an0@*Om3ExJziGY4&0JFjo-%sV?hU_Snqcp>1U-^`qp-x(;%hF+Hu({k5tII`ly3Lkdc+g zCtNz87yVrF;pFVp=9aBNr5-X_7dSbh>d^TgFlZ`COGiQ9R6s<_g|Z{gFIB^IJmv@hz4x7ImLL`M~KQf0UZ+8D$tNqqoo@ zD&CNta`QV)JyY~BbjXjfu?#gYVjNo3GBJQ-JoJ?FN=k%=Nwr1Dg!x9*Ei01WU!Sc< z_S#U(O+mxGobfmf-gG?_Q?qI_;rGJ4?q$B=rKT?KoHI(_`m46fS!)9qkb~mV%U$ve z?}U&O7tpn;AKX8TPo~bj7S2!kOJ1P%fI&*>!jZ1GQqjy@w)Lv`16F4EA6Ax~gPH2_ z6+$3>v6vGK5n=G{s4E8Tv@R-hg1O0(wblD-n%X(hlQMd1crF?0l`kyj^|or^taGNL zQ5`=qsTW~dHP|Y>>y@7baU!S7o3e1jr^{1h`bkhywcU$AX;cZ6IE2kf2jwaLF<3XB zjJ59orl@#9h|%k3*iXf*cRa?_OectiP|mG zrYBU9&FHEh%uj^B5s2g?YRc^L(wyw)(3kA4VU+qQOGI`I50~jBxii zwDrIk^8UBE<}o%G{2LN98Pb9po=z0S;%EUVw4x{GpgV^aBJQD!^fU*_p)4!?nx}fx zubi2<3D{JeO0~`ccCbR9m99_QX9v1OINP1Vh#(e74nY ze@#i;b>3GIpQ2g`&LMFNfSKYh^%Ll`|EHBSA=pI5j@KSO`w%YJjBV`e0G&%r;Wk~5rKIv=yMy!jV)twA4M$7&;F5w1}GWfCuNKG_pjzSlt%gLQ>!!$PE>tH z1AAhEei=1;@#W>vcib*Ei3ov6j`YU_WSQ4==WzT0Wu%BFCiKD6YKq7IjhB@dL1=YB zxutQ@H`>s$h>g}>Uya=TT?Bsyfo*<2gdXgLVdQ>hEw+(t+dyiHJ23m1il>35()!G1 zbjo@JW0C-dxn4ssL|b5c3sbLYE)|ejFR}(zU>J{!vd-V~mU2G^UO5T=EI1A+-dED|595S&|ZeLj_e%0jP__Ujzb;O0q~HK!>D zop{m?c&)xYb5(Px+_3D;ofKBOv&v4x^Ty8JYMioNp)GmV$2Z-Yj}>~aZ@zBau=#jz z#>no+vY8Symcd$!F3UdT>k*>Ae6BcI1v6e{NvWWxVX{6-#8HD`wNzFYXS$|ov1n#< zea3I$lqAUh&Bnp}BW&(j2LfuAOMogMpEG~bg!&_@S(tT@=h@-pW4~CMe*0NKf3?T! zb^?fR@u$5pvhvQl; zX>plBgWA{sHdSB=g3;(S+!?EG%r_x!qD9Nfp42GOY>UQePfceLUF=`V&8Yj$IR~Qnwunj<)!B^GP$>`kn@%}|s~-CECg;PfbkDy^Kc-79hdB*g;l>IhuYzEZuZA*m+4Oo% z_sG-ZjV!v*;|(r>=@f$R#Up$)Up6`=P7_M$S-Duc)Gk(;ya$_;DYx918tfGb2-gDQvkZ^^PQ`sqwZG`lgdaeAw?w;tOtp9VkgOpJ*yLW< z%n#suZ^>ajFeVlL52Y=&9<>FHD?Vu90Z0In=bW2V1w)Jc*Od)Y1&Z^g`f$-lU-k+U zKVHg~`(jiAMwQ_-AOE&~HItNs@uP#4uOMkdHMo;JLlaA9*6g_*?=#nGnCl_szO7wG z!&|9`p(4LCbIv zHM-9hYCIE>LUw*wKLH8P$~WYc>(_XY4ZeKuYUt%#iZW0kyb_MYr z^Z#P13+)g^CV)1y2-t8n_~xmBKu-T&{!|>`hLurX$=ji+zjxqj{4J5zO`DfmJfh_& z63x6MH3AnJl zNtJ&;cwMQnC^ZoEz!2_XJiwtM*KJJV!~LAJyHOD%|M_DIJhYc;g+xarBB?+xK3DWU zSTXJ+M63)qo>D!9>KS*yBKs5JkY|Uc;zILPZG6^~Q%=tW7nOGfgqe&oNwOvLBtgwT z{NZM#Nr2A+S7U3XDY%Gb6654C;>e(IY9=@Q9lw>O5wn@yj_&Cm$92KHI4MJ5vu{1% zN#=j>6Hv6>VcndDPztRmW0CzH)Mu+Z_*_y1_>n#IGJ$E}*=`Brn_`C?zWNBqVh3y* zN&--0JeQ$G)7rl?k6QoD&Tng?IiR+@2wA=+jbzowO)7aG%Ep#5fVe7TDsrGVKJj|hlU-TUp2xG}} zVLrb3UD%>_g43$NyH_qzakBR6l!x?jUm)E4P0^KyXe8#3K_G(NX7yQlKr5x%mHSOX zyx1B{qC9*owjz>mn7PgsonjyB+tAL&b%;?Wy2g=qzfe=MQP25B2W1}>o=c<>X>Lg`a9=6pPWrQBL)FGL$) zktjA9>FM?ozEi%|k($-*b|@$d2HGhfsX)c^K!{C)68)kjI$8mii|xdX(o8rHU-5|+ zEn5H{To=JKL^31O5mZr5%_Uh*P!Yz+a7TR}dX_ndP5|;0L!6l1x$w6lcRC_P(*5M>P}T5 z=RYcignZ>T$@1(KrsD^sJ5`Q)Dy|6(Is~3m%vLyto}2}*K^7LeHY5k!4Xqn!HQS$l zlx>c6lkD0X;uHb)!)`YAMu)W^Eh0~vr^f~!(Z~M3>-)gB^MF~QNrIh4ev0@%t#^Q? z&|OOJ_S0#3xrgydx$awHhSYGurrqzY32JGgEOphwb3c>f$6#5RhJ z6AECF_RZJ_|Cwf2uK;OnfnEh}^s(?vF#Endx4uWK8yUcyL=!OduyW(Da1<74B1mAT zT?FJ<4t+3;F^&vsl@?N!D|b0BsM8m<4mKpoT$KiUa7eL>u@uq_kb(vX$)+ zr^=>M;6n5Gx%cv#zR%)tdavQtn&$bj8P~>%D?zdK2dA3fX{^ez`An|2hS}O{Z@lrt zNA;m;vAHRz9$7F;Kj|`HrY3nr>EPM_tlVx>(+HnLA{8z>)TYEKbT-B` zZvOl6%c@r`zL+yZ7w^fe^;d>FgEi1ISt);@)s?>e^zO*;uGftAvP^#Y3Y7Hh z3mj(=%Ut^(_|v2Z(=4+n7Skh^f8bbG@aoH+_{8y{wZO*1xz+aDuT)5WK(iXl?{ z6WCQ4V>Qs1HE8rxno#BVM#l?}bx@%mO{T?uYFYnt^O#;~K|h$0rFTez19=n|ot7Y- z>rpxm&+1ZrnV#2c@J-+;r(-e~TI5c0Xn~vKnjV_5@8FN;8P{(Re%8k8b1gT>e?ZJyMZMK^#drejHB<&+H9hw1)$3p}@>EW1A$_uQpuLJLQ- z3U-#459tm~C1OkuBM%StcY}2(`K$$?VZ5WMjvZJglh)tJJDwxA-&7U%6=E##)!>-V zTF-}{5O6}v1dd0i``re`T>1fD7P+J;1`%2C(Q}yqNQbjk#VvpCo@}kYpm)=nh3g*i zV(Jz(UECtLSVZE3CKcx~=6W;shl7SWS}k29&jJzbsa4MV_mA1{z(u|l=olPpGzN7n zR-5Pedq1 zYYnF38#e2*+twKrViH@k4n`ntbErY##HD|TRR}s>HrI5M5Ks!RHXciLH7BloHNI~m z6>Cd>zAO^|M2gq=wDXxdO7E1N*2@~dC61dCoBJh!Ilc|Ox z?x!TK&CGlr#{6kfsd4yk?%EqK$j@!oUqsUmKa}^F(D8>o{ii!_Nl38xIh5T9sPI83 z=f%GY=frBFC3b!uy9JQY+|WLr@a4K-Q)**>eV8_S+k9?!b=kzI=fcBbE+UFOTTx}V z$e;9=ZkqYb)rF0!*gSb(%hnJrrTs)PLw!Q$GiMOxpl&aCA?o10dso$gpUT*w{%4LN zxlh-@kSi9njR`}adg49ZVv){)^7;$?3>Q|d$-E+r&u=9tBP~_W^NPy1PnGY4}?An`A3!`0z4sqh$3w;?-a{~y++4#k* zrsIUCNBDz7GR2EM?Trft_X2~B%~$1Gk}%A9Z^}WmwiW+596~tEpGiS3?gj@w z$ZvtYRc)?BL--AyeUKB+X-wguOl?OJd-SjCfQO4-yUMKs)Ns88*)vnVd1l}tKRH%# ze#|!}6F`3xOKZvYIa2#G3CsX%o9 zvLIm$yIIHS2tOwI2J)q&*D=?o0Lz*O7jBb*=?^=9l;qpnS+?k&STJZTNm=l5t|Knq z7{%wG84U}}jst-h7pjRo_Jf!E?}RQqEtwzv0_sW*eE9FFK%<+b6N&u&teHKcf{_WL zX-;hNIO-yo+7yQS)D>h&lArvZ_j5*x8x#c3Tx{NVl;xS#;|XON>hx6cy(Uv=FQyiB z|J@8LqOv0$S%X|e?gx1sTtH008%+j>?M{YvtNld-`0%vMExZIM42P}H@$pg`V|Bh^ zkdzUML^ydT0=a4Lv_2ChnIS zQCRWC`{k6Ej0LPFuQZon6PzzJevLE7Cq1fT7KzpV>9&co5-$38fS;Yn65MgCYQNa& zbJJ-ifr3a3O^jb16L_QiO92syjrpF~?TqRO&(UMR7e&zX;Z$$c+{kRxZS#FVK>E{t z?k>}2fTRQU=rxWWZ>8wxl4f5+K9+g_*!^3ApL)Gv-`m-Y%>ISo3Byc4*%+`yW^jP= zYVZstm3omzv)}b6X$|c1`z^FSFEG)l?TWVpKKuSaNhEb}n9V>X;j)nf!jMml;bpq? z!;5W7Oze(RmudD$R%PpB#7 zByb6|4bH5t=zdX&} z9%0?K9V>`9Gk@h&^s_+y>&w;GuYbSF&Q?_Wm(9uXk9F_x&2-xQoASJudPGEaN>4Y1 z?!FNHxH}dIvMDOrNVD84cOKXAC=dd8Q?vfwgq5RjLLF2q9*qZ-G$w_ydROSZ7_IXG z`}7M)!mWTZKT6h~0k^2XT+&tK+b>i1QjQ42%l3o^hjM}p1-bsEnt6>V^cWF-YvrYC zJulQt+R8JwoDY^=bi-xHL#V3d{a>_;GP!Gi$U=(3UOaBdSv_}xDpU(}cKF=nQg zD;+(|=ig;1lLB8RoCM1dp-TycpW0X1rJBKE?fW`MPvO7coI5vm{v0MVkmZiiMJi0b z)wT5JNbWc?1Mg7jJqnbm)BjflXC_125|g4UCxl6gZ}4-|ys@P3a1mp)f8@c|Z+P@o zdw9G3y7}gt&2!)C$HyX9as|FBaSPY;PEqHuW>5A=SuIPnqGjLdxIH09DLVN-X7Ej0*d>k39zcb1Nr)$HxOh%@#Em8as z@iqJGKKPt|teLjKgQ|zThc>O!UFV9v;+FPHXcpTQe47G&A$udNiq5BpsK=PoL#n>u zGnin6Ucy^CvH3|%;*KbB55+|2h2#)Tz%^NV6+Oo`HTt!v-1Lt>tIZ{ASRqDjLHYu( z=@$`~e+KBS{%A=rDyTxc_#IDbYhZop5(}wz9gnEL zeuW)<12p>!KJNsq#JJD{knlVVAor#`BfCn9PRb}+<;5>~{9>AU%)tI^g0Z~ z?=mtc#rzk2%%8XuqZVA>rk9B)37;LpyI-IOay*f*O+t7wp1~CNwD|&n9`HI_l<8Tu?UzxPkEtM+tA9BOC}Jz_9+74?T_adCJq;4 zNuf|M)mc1;Ybol1LKbVa$v7oPmp8nc?FKeAU;k&76Ooi4`fGC0%Jew=%;cl4<9a zq}ZQs=ysOgUImtYF=;U?gmO6ZO%XCeL%&2q<1iUv1X~*47Dt#?TPveZq$&=cN>!D6 z3X78Wz+X$zbe7&|yH@6Tr#u&sT<;0?$Wppm;;LF$(k`aogZqI}uIN^CRVXT}XuEKh zF$+A8@VA~&;ci9A(&0$esmta&FtcAqrx`c%W)W|jTfC}7z`0d&#abNa_Ji$TcdRPV z#@m0#M-PjAd=7i^jdttJM@D`Q3GwSpb0oKLa zknCpNyNK&KjGj2giEXj?W$KEO@h*&`e(V>OrX20G2QR~P$9ZesDWj{$B?vqHzTPps z-v(0%Sf@yA-1ciE@R)w}0F3c#3P#dA_P5Uc^RhC!C+((8-_TxaxR>+q>u$U#l{G*PE@$ddl610ZdXURe6KKtwG= zlK@1L<<`H+1&uAh-kN2)zTuQp;vzd_mfe_qAuMBxooLc_iXF4cOy@9;b1=|FkhwVWqfW8f zESy%-3r_S3({^))+}CL+uJS1GC<8=%Mh@GM1SyNb?V<4!Dd?79`VTEzlU`ehryoG61a8+H(7Eu^wuGCC1y&dcx!l8)Ze<}jc$|8S`3TFPy)BN zwyC1khS<*Uw*p1V$kF}2!$i$GXCXToDYR++Hzn7*D#hzbzRL9c%Rw8`B98_lap2T- zTvbnh&S@6jX#VxqKIOc8#cJvzSI5Py_Ncm}uH@a?ul=L08iM`9*$SfXO116fI;T_r z*9*Www_{%ReC7|&j*cZgso4Hiu6T_tidB(0kt>BQQP#gwub$DzC4s9n2X zlkd;{NYFNemVu02Ytg!P@5Mqy_dWyd<(FhWi`P>rfb4*_CjIUt_wFw5Rpu-J<*+mc zw;iqZ&H+ky-b&ZQ_dW-JrMj~mwbPrA!eNwfK`lAB^Sqmx8U-Eig9+TMn)eZL(WZ=q zX~fr098^5KqcZeELBRQA-YTo{T^Hip><@KO!WWIzddjWv5%M(Ppq`W&(sEU1;}j4D zNBf6P#+E}mu$sVE-O-lNUCr_4w?e33o0=t5L0yN#{W78xopXG5S&%J@+^|kMyWL}) zxWI>_;FY4+*WJSGQ(fg}pE1!qc}G?s>x`Fsb|$?VaPEcZnHXz6dqNJTLgP%vv7Oyt zv8pZCeCKv)kkie7CBwUs3I|7G!5UgUhXOVj!(`>DVF6C#ZV}`t-djGyi!mHyUV2d* zsl7;izYiW0QJUkOGBc@FDNGt8t6b(6yb`9?ksmhv#X@b9>aI_WHOz_algS#_$jcT= zNa*z0La|y}=P_0TF=Qq$1XhW9NRC+7lCvUX{Qpvbjh%2E%v;-f9*+<>mDkus{Ea00 z5g@&la=mK2R%*|rdCLoqHW~)KgTI(9b^L{6%9IwH=uyUW8F(V46BArT=8EZuywD@C z2)x3WWtK3-IW4|kZ9Po3DLiVV8kM!FJ9J(y-0uenCFiKLwUJW8hDRkB&Nc^Z81D{e z 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�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 IJmdF&09>TF+W-In literal 0 HcmV?d00001 diff --git a/dicom_viewer/dicom_viewer/threeD/loaddicomfile.py b/dicom_viewer/dicom_viewer/threeD/loaddicomfile.py new file mode 100644 index 0000000..b76d994 --- /dev/null +++ b/dicom_viewer/dicom_viewer/threeD/loaddicomfile.py @@ -0,0 +1,190 @@ +# flake8: noqa: 501 + +import numpy as np +import pydicom +import os +import scipy.ndimage +from skimage import measure +import glob + + +def load_dcm_info(path, private): + # 取第一個slice就好 + slice_for_info = pydicom.read_file(path + '/' + os.listdir(path)[0], force=True) + + if private: + name = ('Patient Name', 'Private') + _id = ('Patient ID', 'Private') + age = ('Patient Age', 'Private') + sex = ('Patient Sex', 'Private') + institution_name = ('Institution', 'Private') + date = ('Date', 'Private') + modality = ('Modality', 'Private') + manufacturer = ('Manufacturer', 'Private') + else: + try: + name = ('Patient Name', str(slice_for_info.PatientName).split(' ', 1)[1]) + except: + name = ('Patient Name', 'Anonymous') + try: + _id = ('Patient ID', str(slice_for_info.PatientID)) + except: + _id = ('Patient ID', 'Unknown') + try: + age = ('Patient Age', str(slice_for_info.PatientAge)) + except: + age = ('Patient Age', 'Unknown') + + try: + sex = ('Patient Sex', str(slice_for_info.PatientSex)) + except: + sex = ('Patient Sex', 'Unknown') + + try: + institution_name = ('Institution', str(slice_for_info.InstitutionName)) + except: + institution_name = ('Institution', 'Unknown') + + try: + date = ('Date', str(slice_for_info.InstanceCreationDate)) + except: + date = ('Date', 'Unknown') + + try: + modality = ('Modality', str(slice_for_info.Modality)) + except: + modality = ('Modality', 'Unknown') + + try: + manufacturer = ('Manufacturer', str(slice_for_info.Manufacturer)) + except: + manufacturer = ('Manufacturer', 'Unknown') + + # Test get DICOM metadata + + try: + IPP = ('Image Position Patient', str(slice_for_info.ImagePositionPatient)) + except: + IPP = ('Image Position Patient', 'Unknown') + + try: + IOP_x = ('Image Orientation Patient (x_axis)', str(slice_for_info.ImageOrientationPatient[0:3])) + except: + IOP_x = ('Image Orientation Patient (x_axis)', 'Unknown') + + try: + IOP_y = ('Image Orientation Patient (y_axis)', str(slice_for_info.ImageOrientationPatient[3:6])) + except: + IOP_y = ('Image Orientation Patient (y_axis)', 'Unknown') + + try: + slice_thickness = ('Slice thickness', str(slice_for_info.SliceThickness)) + except: + slice_thickness = ('Slice thickness', 'Unknown') + + try: + delta_i = ('Pixel spacing delta_i', str(slice_for_info.PixelSpacing[0])) + except: + delta_i = ('Pixel spacing delta_i', 'Unknown') + + try: + delta_j = ('Pixel spacing delta_j', str(slice_for_info.PixelSpacing[1])) + except: + delta_j = ('Pixel spacing delta_j', 'Unknown') + + info = [name, _id, age, sex, date, institution_name, modality, manufacturer, + IPP, IOP_x, IOP_y, slice_thickness, delta_i, delta_j] + return info + + +def load_scan(path): + f = glob.glob(rf'{path}/*.dcm') + slices = [pydicom.read_file(s, force=True) for s in f] + # slices = [pydicom.read_file(path + '/' + s, force=True) for s in os.listdir(path)] + all_metadata = [] + for s in slices: + s.file_meta.TransferSyntaxUID = pydicom.uid.ImplicitVRLittleEndian + slices.sort(key=lambda x: int(x.InstanceNumber)) + # thickness在dicom裡面是空白value,算一下給它值(兩個slice間的z差值) + try: + slice_thickness = np.abs(slices[0].ImagePositionPatient[2] - slices[1].ImagePositionPatient[2]) + except Exception: + slice_thickness = np.abs(slices[0].SliceLocation - slices[1].SliceLocation) + for s in slices: + s.SliceThickness = slice_thickness + + # Test get DICOM metadata + slice_metadata = get_metadata(s) + all_metadata.append(slice_metadata) + + # orientation = slices[0].ImageOrientationPatient + # print(orientation) + + return slices, all_metadata + + +def get_pixels_hu(scans): + image = np.flipud(np.stack([s.pixel_array for s in scans])) + # Convert to int16 (from sometimes int16), + # should be possible as values should always be low enough (<32k) + image = image.astype(np.int16) + + # Set outside-of-scan pixels to 1 + # The intercept is usually -1024, so air is approximately 0 + # 在影像中非人體部位(周遭空氣等)被拍到的地方數值會是-2000,把那些設為0 + image[image == -2000] = 0 + + # Convert to Hounsfield units (HU) + intercept = scans[0].RescaleIntercept + slope = scans[0].RescaleSlope + + if slope != 1: + image = slope * image.astype(np.float64) + image = image.astype(np.int16) + + image += np.int16(intercept) + return np.array(image, dtype=np.int16) + + +def resample(image, scan): + # Determine current pixel spacing + new_spacing = [1, 1, 1] + spacing = map(float, ([scan[0].SliceThickness] + [scan[0].PixelSpacing[0]] + [scan[0].PixelSpacing[1]])) + spacing = np.asarray(list(spacing)) + + resize_factor = spacing / new_spacing + new_real_shape = image.shape * resize_factor + new_shape = np.round(new_real_shape) + real_resize_factor = new_shape / image.shape + new_spacing = spacing / real_resize_factor + image = scipy.ndimage.interpolation.zoom(image, real_resize_factor) + + return image, new_spacing + + +def make_mesh(image, threshold=-300, step_size=10): + print('Transposing surface') + # 不同的transpose,圖的方位不一樣,遵循convention以(2,1,0)做 + p = image.transpose(2, 1, 0) + print('Calculating surface') + # verts是所有頂點,faces是所有三角形列表 + verts, faces, norm, val = measure.marching_cubes_lewiner(p, threshold, spacing=(1, 1, 1), + gradient_direction='descent', step_size=step_size, + allow_degenerate=True) + return verts, faces + + +def get_metadata(ds): + # Extract relevant metadata + metadata = { + # 'PatientName': ds.PatientName, + # 'StudyDescription': ds.StudyDescription, + # 'Rows': ds.Rows, + # 'Columns': ds.Columns, + 'PixelSpacing': ds.PixelSpacing, + 'ImageOrientationPatient': ds.ImageOrientationPatient, + 'ImagePositionPatient': ds.ImagePositionPatient, + 'SliceThickness': ds.SliceThickness, + # Add more fields as needed + } + return metadata diff --git a/dicom_viewer/dicom_viewer/threeD/matinqt.py b/dicom_viewer/dicom_viewer/threeD/matinqt.py new file mode 100644 index 0000000..e4d6a59 --- /dev/null +++ b/dicom_viewer/dicom_viewer/threeD/matinqt.py @@ -0,0 +1,25 @@ +from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas +from matplotlib.figure import Figure +from mpl_toolkits.mplot3d.art3d import Poly3DCollection + + +class CFigureCanvas(FigureCanvas): + + def __init__(self, parent=None): + # 直接不要給figsize就會自己fit了 + fig = Figure() + FigureCanvas.__init__(self, fig) + self.setParent(parent) + self.axes = fig.add_subplot(111, projection='3d') + + def plt_3d(self, verts, faces, alpha=0.5): + print("Drawing") + x, y, z = zip(*verts) + mesh = Poly3DCollection(verts[faces], linewidths=0.05, alpha=alpha) + face_color = [1, 1, 0.9] + mesh.set_facecolor(face_color) + self.axes.add_collection3d(mesh) + self.axes.set_xlim(0, max(x)) + self.axes.set_ylim(0, max(y)) + self.axes.set_zlim(0, max(z)) + self.axes.set_facecolor((0.7, 0.7, 0.7)) diff --git a/dicom_viewer/dicom_viewer/threeD/qpaintlabel3.py b/dicom_viewer/dicom_viewer/threeD/qpaintlabel3.py new file mode 100644 index 0000000..090d6e0 --- /dev/null +++ b/dicom_viewer/dicom_viewer/threeD/qpaintlabel3.py @@ -0,0 +1,154 @@ +# flake8: noqa + +from PyQt5.QtWidgets import * +from PyQt5.QtGui import * +from PyQt5 import QtCore +from PyQt5.QtCore import * +import numpy as np +# from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas + + +class QPaintLabel3(QLabel): + + coords_updated = pyqtSignal(list) # Signal to emit when coords are updated + mpsignal = pyqtSignal(str) + + def __init__(self, parent): + super(QLabel, self).__init__(parent) + + self.setMinimumSize(1, 1) + self.setMouseTracking(False) + self.image = None + self.processedImage = None + self.imgr, self.imgc = None, None + self.imgpos_x, self.imgpos_y = None, None + self.pos_x = 20 + self.pos_y = 20 + self.imgr, self.imgc = None, None + # 遇到list就停,圖上的顯示白色只是幌子 + self.pos_xy = [] + # 十字的中心點!每個QLabel指定不同中心點,這樣可以用一樣的paintevent function + self.crosscenter = [0, 0] + self.mouseclicked = None + self.sliceclick = False + # 決定用哪種paintEvent的type, general代表一般的 + self.type = 'general' + self.slice_loc = [0, 0, 0] + self.slice_loc_restore = [0, 0, 0] + self.mousein = False + + def mouseMoveEvent(self, event: QMouseEvent): + super().mouseMoveEvent(event) + + if not self.mousein: + self.slice_loc_restore = self.slice_loc.copy() + self.mousein = True + + self.imgpos_x = int(event.x() * self.imgc / self.width()) + self.imgpos_y = int(event.y() * self.imgr / self.height()) + + if self.type == 'axial': + self.slice_loc[0:2] = self.imgpos_x, self.imgpos_y + elif self.type == 'sagittal': + self.slice_loc[1:3] = self.imgpos_x, self.imgr - self.imgpos_y + elif self.type == 'coronal': + self.slice_loc[0] = self.imgpos_x + self.slice_loc[2] = self.imgr - self.imgpos_y + else: + pass + self.update() + + def leaveEvent(self, event): + self.mousein = False + self.slice_loc = self.slice_loc_restore + self.update() + + def mousePressEvent(self, event: QMouseEvent): + self.crosscenter[0] = event.x() + self.crosscenter[1] = event.y() + + # Test emit mouse coords + self.mpsignal.emit(self.type) + self.coords_updated.emit(self.slice_loc) + + self.slice_loc_restore = self.slice_loc.copy() + self.update() + + def display_image(self, window=1): + self.imgr, self.imgc = self.processedImage.shape[0:2] + qformat = QImage.Format_Indexed8 + if len(self.processedImage.shape) == 3: # rows[0], cols[1], channels[2] + if (self.processedImage.shape[2]) == 4: + qformat = QImage.Format_RGBA8888 + else: + qformat = QImage.Format_RGB888 + img = QImage(self.processedImage, self.processedImage.shape[1], self.processedImage.shape[0], + self.processedImage.strides[0], qformat) + img = img.rgbSwapped() + w, h = self.width(), self.height() + if window == 1: + self.setScaledContents(True) + backlash = self.lineWidth() * 2 + self.setPixmap(QPixmap.fromImage(img).scaled(w - backlash, h - backlash, Qt.IgnoreAspectRatio)) + self.setAlignment(QtCore.Qt.AlignHCenter | QtCore.Qt.AlignVCenter) + self.update() + + def paintEvent(self, event): + super().paintEvent(event) + # 利用一個QFont來設定drawText的格式 + loc = QFont() + loc.setPixelSize(10) + loc.setBold(True) + loc.setItalic(True) + loc.setPointSize(15) + if self.pixmap(): + painter = QPainter(self) + pixmap = self.pixmap() + painter.drawPixmap(self.rect(), pixmap) + + painter.setPen(QPen(Qt.magenta, 10)) + painter.setFont(loc) + painter.drawText(5, self.height() - 5, 'x = %3d , y = %3d , z = %3d' + % (self.slice_loc[0], self.slice_loc[1], self.slice_loc[2])) + + if self.type == 'axial': + # 畫直條 + painter.setPen(QPen(Qt.red, 3)) + painter.drawLine(self.crosscenter[0], 0, self.crosscenter[0], self.height()) + # 畫橫條 + painter.setPen(QPen(Qt.cyan, 3)) + painter.drawLine(0, self.crosscenter[1], self.width(), self.crosscenter[1]) + # 畫中心 + painter.setPen(QPen(Qt.yellow, 3)) + painter.drawPoint(self.crosscenter[0], self.crosscenter[1]) + + elif self.type == 'sagittal': + # 畫直條 + painter.setPen(QPen(Qt.cyan, 3)) + painter.drawLine(self.crosscenter[0], 0, self.crosscenter[0], self.height()) + # 畫橫條 + painter.setPen(QPen(Qt.yellow, 3)) + painter.drawLine(0, self.crosscenter[1], self.width(), self.crosscenter[1]) + # 畫中心 + painter.setPen(QPen(Qt.red, 3)) + painter.drawPoint(self.crosscenter[0], self.crosscenter[1]) + + elif self.type == 'coronal': + # 畫直條 + painter.setPen(QPen(Qt.red, 3)) + painter.drawLine(self.crosscenter[0], 0, self.crosscenter[0], self.height()) + # 畫橫條 + painter.setPen(QPen(Qt.yellow, 3)) + painter.drawLine(0, self.crosscenter[1], self.width(), self.crosscenter[1]) + # 畫中心 + painter.setPen(QPen(Qt.cyan, 3)) + painter.drawPoint(self.crosscenter[0], self.crosscenter[1]) + + else: + pass + + +def linear_convert(img): + convert_scale = 255.0 / (np.max(img) - np.min(img)) + converted_img = convert_scale*img-(convert_scale*np.min(img)) + return converted_img diff --git a/dicom_viewer/dicom_viewer/threeD/resources/double-arrow-down.png b/dicom_viewer/dicom_viewer/threeD/resources/double-arrow-down.png new file mode 100644 index 0000000000000000000000000000000000000000..5a4e9622d0798f527c3beb7ed4939b73f74ee08e GIT binary patch literal 1788 zcmb_di&Il)7XNa+n20dRWdn;qy%LbBAYz3|F$D5}fbxi-bt`JamI6u_;shzRmyib~ z;jv1kBgiu>C_dIy$LFhlf zrsx~=$EBX*oZR;VqjLQ}q%g8u{QskQ7#CoO()Gu53hTcIa7K$-9@`_(i4Wql zw=i!9_w@#mO@uvPXvYJU`Z`JTD?lyY}K z#njZ;Pg5rg-_GqzFL)9Fl%|QoAO@|CYqPuZf}A_L@#ZW(ob=&VNjpUGBUP^{%pF&C zyiM=9zn$C}D&^St#uJn;E(_+dZ8R@fuxatdLxer(?;7!x4u2%w`L0~E|13V^w=Q${ zw&kkq<%81394Fbs0~0?s(F$lg1Nd$Lo}} zBu(p%IzdtqP3wU=tpH1i)(iCjV38pTX9dGxo;%9LGHC!;bX4I3K|qAc5^bFj2r3o+ z>?>csbLoda+RwYZIj_ljSWZ0+q+8*PIB$2Iz7`iEK&$95;=(oH4u4dP(ExbHm<(r8 zNMMRqL_=W`_=v(Oq5cm@3t(>@Sq3`R$_Gpe0T^J)X=a5G40y=}W`zg{*Rt=}I-9<< zzse08_cfz zOUzAlU6|*98`gTU@8w1!7%x8Ezi@`F&PXzCX&EaEzP`ZyIcNBK1hfp5WAe@Jqn0Z_`Fb{EeE053JU7Nb4hMR|yMU%ocySaFg_c%^n5+ z%WSDt3K`PtHoHT4$2a&)y0>;k6ToPrjsUjc74c^*4_`d9UXu*$TqXD)}s29E9qbad{u zs_CSSM4vzYZ0K97qtM*l^I3_9gnKIB-TX!yTEwEiiQzk>wmdEs2n=Ky;qMDWh&{aB_5Jt8A(LgPl$5C?PC*K3g?GSvSWr z;DX7hrgp~g@Nm8`Bf~<4{z+Yb$n}*!RD10`^rt$HxBHf6rxyGlmA-cUZvVd}W#n`D zsh=O7nXXkVuHS4FXS$fUBgtJ1Xmh0tda=&K4KdUZGJj*ZqEi3TqEm*o7DvHn{kF0U z;UNKx4Z#;|Z2g5)q_a2n1ocLOa~Z`i;W#$%)sesPM45rz#OL5Vcn z1^uGV<9R65Xi{8G?(&KnO~I~wb)@<;3RX`2Z=$mpmVIwycijAD*Po)|+FcAf~bJRzPw)H@I01oUSlSxu0tmz^1Nm4JOX|j?;Y==fq){~^+FsqwP1(9|N zRzht6(&sdsjxr(e9KqdC<_bXM?kE!mvk2~iG9ADy4fjHsE5RECUyCxy-~mEx9R$Gd xNRbN)k$?^`0Lt3atQxNRc}_8d0v@<$J9?tdsb@Kx|Y3Ps0(){}1xp7&ia_ literal 0 HcmV?d00001 diff --git a/dicom_viewer/dicom_viewer/threeD/resources/down_arrow.png b/dicom_viewer/dicom_viewer/threeD/resources/down_arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..dc308fb7630d646916f9e6aad9c30ce72625c5bb GIT binary patch literal 13454 zcmeIZdpML`^f!Lbm@*yBjf%n?lw&!RQejNfpqwdGPL-T0Nt82Fd1{6nDxnfOphqM{ z$@!^q=tv}`@HEJw&^V6M_^n&dAHP3-?;r2)z25)6UDxwm+n%*Qd+oK?y*_K-d)-`X zOOs`bS1(2oWZCXrEL#K-qhS9L7ede1lMB5Ngo5m5?bsWXI?xvU@s@k|@9BF5Ob2+Qm*WsmC3|9=O=jGD!JA15~c;(S)8jdMBM(1NdZ>Hf6CXIO8eInNbcMKheO6q-ig^cLv6 zDA(gtyuYA(PW|BFG!7>_hfZjaJ*IfLGoi9)inDLiaCnO`FXyr${9h3jSldX)FAcU* zVz3icGIb1T%VRlzp??3?r7uxDJoi~r{)zhb)d=Fq@49_?zxKvTxyg|@PVp0!=tCE6 zdKM*6cc~7L(2Fcyj3S@I*(ZnA$8bFDgEbH&%RQX6o_swM_1nYxwokgc-_)x4B>u=^ zpf0tD+vrB8c;&ZM2BhXp0F?g2s=&qcWH`zUv*0p+w2lQG6Ozqprvo zUY>LA|EaO%#5b8^pK`ezj_f86o<`{}$%&50$o2ak9W2c+A9=6$M&HyY*YTM~S`eR` z6OSwW_V)TFxAwANJF-~Hxo!SGcyW4z!qEZeGhf!7X%Fs^bL>D-2NrLF##eLLRinf( z);@Kuvl|tZaJH(_epvNP=k0%@WS_eaRkzROTvK&M0J1j z1GjfKHWwUi&e>Ob#wXXcGD2otr_zCELOfW;n_dEV$3#wy!D zYbRX|Yq^(b`|Wg#bHVX1kM~uC1+RB}y8cAv?0E6dho$^V(a*})TQ?%e&O)$8?Tf#b zbY`4i9=%h-Kqq2EH*(W*gVBbq!hg?apW5v1f1G<+lf^SKvIz?OheScq%eLDow03#a zH=Z-AG&P|R_WPe=(bUh*nl-+c$g{mBex0$pHE!_+_O07+$o(2HZ6{bDcAZ%g@3M)4 ztXa}}ZgtG6+Do#Vl%_V=oA4YI`E#&}tYOOok++s7BsL0Afk{EPs(q(uTwlPG@~d9q zz`N$)BJ1E1?7rT$Lf_UjGhGT{Pkr&PH|P|0#>XdD&U6cM9Lm+kJ0j<}qUJdc$Eqgj z0qy1+y+a14H5kU{zISniKR*u-+PQ^{elY30Vy3~3oNbAW9SR=`bs;Q6s?J2;;b0oR zQcjoi4eMOv_Ti3^)Z{UB8h?n!A90>4yZoL|w<{=B5+z4(ATQsVbNc6}>Sq;WdBwk9 zEa}win6y0p`4P1i#UWl?#kj4sc0pVq&pZ3p%KES$#pGqrXf%;0%jt6_$-5}A@v>?r zIm_=`#PmR)gy>(1#uKFjNwgO-ZkM!cQoP?;>J21X8jO7m7;AQjpRm@+Oiap5bWzZ8 zF!ioXY;>rZQuS>uRCPY}YF%HHl;tiXo4q2lqcBv)t##W)azxPfp|X+2lG8tHmRye6 zV_Lubh9W#3nE@WAeFX(CI@Mh#O}GDg^iplkT?d9-(r&vxJN{MkR`~drzQ426R;x1= ztW;-rw+?HgANQMj`#lT~*Q(~y7UlG?Q&ZiVk=yJ!Vbn~WzIZp!y2hkzr`h8T zR$fh67Jc9R>n%opyn8US>h&Mn2|UJsed*hiKDD>C(7VYCJ$1~qkDakvHPa#6#>Fe5 zRzC3F-MH;J!>+VH3MuK;%K4j5Rcl6QABg&vZo7IytVkB3Cpjx|Vb=HHo?FR3-rsVZ z)QrQlzofnAR`AG=%>3|yV|R_}I#n~Tom+|-->$m89OfT_N02hp3u^DBM(=!eAI zZwZsoH|@(*Gj&Z~O52eSZnQN;(e!A}#Arug&#k~3%+<`2HQq%)3{+{lvd)Zuvt!2N zSNTNyY@kmZCvc^aU&Mmi8&_(=9=+NX7Pe&}uXdtxZg$_}BU~YZWL!H@{QW}ED>E0# zH%S|QRvt5Eft5xL)wX_0)KOy4_*YRu zi?2TBGIB#W7+9&-JE(at(Isu#JnyRQRLqY2;>lhU!vm8`&dnR((%*-{Cf78|M;kx1 z%m1vlaVv^ILrnX+IK{=0vr_3oR@p@PP~N{R1hJNQ;#nW};9-ec()#_4ku74V;0_kr z|J~P_-Z2W$mGh@}DAGVo^ck z9hFZGCv&x%H!^HZLydUv(1OUJsqSP~h5U%I2X5dr&2mc-_oidiRbIa!G}bp zbXVzWS-Vv4^+lneq_;84i4-m<2)r2NQB^OQmQ`00y!P02ANOKlbpslIT~x=y-#3Pgdgcy707ukNv9qR5KM7 z`6a!J?k3u%1~l##4ERQtmYl~S46&Ivl{03kr(UbhzL`@%YgZT*JU^%ClfA_O7NTdu zTXkp1oIEG2trkZR^Qxga(NOK{YwFX<@m$U(^{ww2MbGh9Y^O>;505^`ZaevMncrLO zTHe%HQK$g4|JdkPE5FLY$5STghp^ z8d*<{1cIbQJ;<-vP9M2mKdK2tZDn^dbzrXoMKQg{?+oi#L#gPyMC8__4UYD&u7h=6 ziTd+JYJ;V|r7`l^_Y&js`TFH*k&8doIi3&yJ8+=ZP~=zEYor++yGGYOKn+2>p6;sEI~$q1rF7z*u}K0NYcpgnwI2+X#0YD!LR2@pyu zC&+cEwYBJ2=j>2qq>(ZnVV{|-pPQ-2g7nU?mY^!F>Ph>hSd zu66-(ply2PhW`i$mC-N~Q-(J7ZjD z4$lqqIa{~QdFPbkhvQ^Uj=44G*fpm@hI!yu?vwYcN0&btS~FVY{zjy+PcbUjUOyV2^D{OB|xha>EX6nP48 z2(oVb&)g>qH&p6PY|AOepYmpvh5Q@NJ~1bX|h zX2?c1x$jS3$iUb>#P#`iQ5I-j=M?DW;@cYH-weIrpN$6NGL`o)5#EfZk`%QA6Z-dOYjF`qGBJ$fB|t~bc&#iVlI zICYAN3GaRRl4RG2;0r$B2Ope52Z{;~y}Tgmc6;5fYr;N0GWr0Rd27V*)$}8uS0aea zyUut+1>LrQJ#)i;?n5^f8F549e%;p`j7?QvK1GnKeGi}ixFO1PdmWMMa`exGF%sJH zuu?R&@fiU@lzLl_vadl@;=vnB>~>t`LSb7>7sy!;WP2w7c<`?Uk2U2iGKuUvA(T0SgZ&+`{zoh zR!2dSET!^GXeVq=j0riskT-xJ>{qRi4(*)buc`#ED$bpKy)?n7Tz3%MN%9%^W!6y! zd;RLs(=V+(*z13lQyCDG(&l$J^Dp-SI}f&g=|oNR3U$+OaO_LT2_1Z%9qB#yxIOw= zqVEk`*hl}6mWatWu1N);jh2PjL-sEcI(@CcVZQ@o<+x_9)APso@<59|8OVRvg|FPT zANSZ{?#1jxhijuf>{fvOXv5C)NfWAW`H%5ON?*ne$AeaC)tLpEgm z?VfCKEDHmXuv5@=)oNT*w|{Y6d%3Pcgz)>7r(oO*hpILujjOn&1Io=eoAI#I{XSK0 z;{z@&220%+)SW2T{gk_ZPvaJtQ!CfG6dqI;+3Ca;l&@h6>)?c8)(WmIb0JH-Zp+0L z6fmr>n8K5K4Y&054h;PTOa4RKcD~|7$?L@lw?ci1Bp|D2IIDkJgBw~b93T>`*>YUP zdkumdlv$|n;rsCzNVogokrBq0`o1wKYWE5;UVVRgn}4CD)@0c8yiW;mkA z023dd7k;`x=o>;J#-|F@L+AL0M^*8Gn({>K{stH<{Ll5br5 z0&f#?Ah{^4$=&~iKUp6c(Ok>+TSQXx@5@ZC0itjm(?&7`aN=08$~nNMtZSX--%~1D z8aSr=N=+9z2j|n*h&ZWFiMc`RAXKC?Br?tg95ckc-@Y z$|52hiB=P~^)VWOtpS~vk=x_Y>AaTirH*4N0zwHZtib~xRYRg80cV970|a6$jfr?| z66{z-B&{}yLK=+u=O2DZve16KI#(y>j3ai0x=JO?{5;|@KGxzsmRC6LiPseTnn920$imM!)pWJ%5x+> zCn2|+0nAR4{Kx>u{0WxGq0kR%;h4&RdrFe51*`YOnk2H;792Ahny=T=4~F5R-lJ3` zaYtAck4W0SI||V3#z$k}i zJaX0sRG~rhCURDrLt>whB5Q@=2{lwEQnEXYv5i19XA^O~D+Rc2l%lnRM#xyh6Hhc_ zSFHu%Gg4%0Iu3so4AKh13V1>mBMK>u5wgQz++`xpOI&~pUPMY+h~gWL^TmciHw%Ec z&J*9elU+pu2oIEOEsw+R1Vi805ymJY5SPNZ`?>;LGYB66;WVE3$MeWpNe~VJVKSaz z3c~#$TuvmZV8Tg4_7qC7-iYF@mkDrVYZ(+V6rYd`y^@p!E)iF^6J!^W>UKpTiDqGp zS!kL=6M8ohN%vuSG8zKhJ1QfCMk5^D$`jX#LC!AblGuGH`D@7VE9D1t{3SCsqnbsm z`pAhN$aAf%=vS;NCJ;Zu*c3S!yN;2e1i$h)5?)(y_|2eSjS@X$5+p7Gx_KBw4<@3b z_(vNAxB-|b3xrql#afNnj94xy<0ntN5Vqom6qVt?mGDx=;g?aE?1w11!39rP4ZG<~ zrDwDeh&mi1uGKP(F};Z7C4=G%uL;>FNR$Q!jo`ILfNKNb+bm)O0G9ypc>wO?i3b4i z1pwZ|mFQK%;Wq$q763cr2?qe!0)W2~h=l;$ZyAO_r*RZ=dL11Wh6g`qm!RY-d+0TV zUMigp>Kp*m*-4QZhJdBaWan@s4w7(qd4T=K6W3Y|O)8V^1kIJuq%ql#xe^EU@r3Pw z>keSx)x8uHzx1XMQ8HySOt_?j;GSBtAOXNlF!L)(N`oJbkfJ8AF;vaWiAOpmDWHy$ zMcBtC$j<(327n$W@P^WlkfMn1vzkBuZ5=ix>b1uW1bSB9z)7&lgjtW6G;b6S;WGNLU_O_Rf$}Z7hQnsf*1SV0O7wJn@FLc*6Zl#It>{lT9!kgmH-C5DXb?2;&gN zaXJ7DVH}I%#v_nt+s{WI+|iv;RYIP)+y2Uk@MaT?J~HfC#7i*Nhr(dDqSQwQ0$d?X zbaZ!ARX!NcfPG-3Q5Z|Or2buD$Z;xkN>V?<8$sb_9KH~6 zm-ED{o)U=HCgI30gSp|3H(XNAT6$d{9G7Cc-y}PPFU6wq#-3Dv%d#GWA(WbE8D+gd zu)`AGO1h-NE1&}JrmUQJJh<;()2M_PB2^iF~{%y}jXx%u~3^(52Dd)2Dx_MBm{zHF!8G zvVK2(>7O=|niJ0u=SYw!g^5IJGTfX1n`TgX;>W+M?kh~ncEee(;)_LCup5p7OXhIr z8GQ_6babB4=V=_MF$KB333{J%BxG(OxA#EP9eRP$doV_)%`>_sqzVw<*j$tnkOce; z@y$H-Ki*zPKX{5jyrs-UAim+QDl;emaaEaq@F;U5fOK3Ig#6Bp0uh=^5?NRDve-iU`ELkY_AS7qUG_6l)a4 zYw7dFZtP?;{sLYd1qKD~Ss_J5_Q1H{|7aRQ+Pk&?(KJYa0p@8MB)b&Q^mKkeFuN0&0#T;vg|)gaS2_ zP&_22kR4GPw1Ao+e;iO|WSj+RHs*_!0PaqpW=Ko}AQM{%)C`GfFKE0BfFUt$FaVMT zU`R|eZUQv}FeIjoKmdl7LShOz8l_<)jesSlM3NVz6_A*MYY-uB;rdx&2!vEGZRkBK zL_(ms4aM)>9fr&jhylQ(ke9M|Koel$VXE?iCXhemrBy(b0g$dhUdk5yVQI)q5zsH= zE{mvT&KFBj0ZLb5vJZjq5s=u5;?05mlz?}EuO$UIbBND0$SSTX(%F9lCqk;qLH=SP zi1co(768jhQzEl3P^=f?@a7!i*%LsO`+<)S0gr>C?l9p!4#^8r$3zP@a#e|$af>IOa2`mQ z6~!p!NKjV6xa-8TXGmm*B~bcG;A15^`x`*`&;B0@?s@?N(Y8BvuSKcx7B>5q&@lICwGKxTID9hJzQ|Sc<9xz;N(FVwIU* z01O8&+yMZFmtnVLL6VM3M{%sh28rawM>WSHl75B#{v~ zc(LuJsCzAdxxx4Hl$rOVg~;bL1h;)hR03p{GLQ+~q5`3XA(tQ%x0AXFxn6lp=K zaWIN_=njngxQN77phXElw?23w7tSKyh5M5xWd^d4L>-kPBQN0%sxg)M*)$A+gBDKa zJQ2KfX)?4f68o?z;GA_3&)PKs2&af7_997Y8`uzk-nmC=BGNY1GUOA>t*0!&|%2AeumegS-D+!-NB!WE{Q$ zalS+X1bFB(s3p==P`(_LKOaD40$3@4UGVmg0>h5OMlbtVLj*P30C#nc1qxnKvXhPI z>|28Y2Y|+2#Yz}(FEDQd-eMlu0)W@umrq4m5Y3Vqwko&~$r^&07@&!^E$l z*f0o~i2UZanCj+<2(I_hp?TqrAW>_fjLmU%9Ro?R#k9#{vf=LNY77RkcM%Cm+j4n+ z+(iU;aE+T0Hc1JAhtsE@niWq;A zUft~Ax`B?!EXLuhQXUrbqv7PnhzVNuzx~$wfARVY-p@ZUo2oz%hC-%(R{g03N1)ti z8}`0Gt5>!@$T%tdF`@2~Y+By}1W8;)x%r>0)ir^|ld^?Jprm1)j~Ie1eF^vWt(70| zBm2LGzB~pm%QM=4yuIF3S$O8ZclUUBt=^y4hkN|)kob%ng0NT1{!S^k@qJlp!G3#F zH~*dw^c|ACo8C7 zHxgan+t)xb%O*D{qgd~)4p#u%J>I8oQ(-8qcgu$h2HL`v*j?yJG>Ty&NN<%*!wDsldrhBg(w8!i+W2Frq; z^9<%MeZGAN?c7!$Y{_*5Q|~$5utR)IbM{VdIb0sOm+P+Fa6tNr$2&DYJy^+OsQ!V> zdO~xqaQgPqt20&f7!QZa1us@rXhCILuo;ZI<1%_@)tF}6-X9U};&t(`G4QIhJ#G~g zFdUv}3ye34Sqb;&)<4qr=d)R?_4^;+`*XP`(=BWIt{iVGUA^ zGJ39q0cGE%8R*6757&vhhpxe`Co&nqI=;t7`Bs4KpG!}<&|d}GP;>{sCzt#7;b8il z-cTyU9fWcmPYtD7=ql|An{BL}XBRqcH<0n5Gr443PjgQY`p z;S+7o0w>crTeWI?B9GfuFVUhmhu&3*7FLPVt^d)6S@qh7lb(&%ny`3Zwsk7rIft29 zHS?w-e}SVfRx-AHTUSDHXPjQnRw$n-Y{hCGCx^QQYbph6%HP0Jo z;7LmEU}mg-2CE?qP1ZH$`A6T`cX?X>niEboIPJ?8haK4CCH!1Vx3BgC&5PQ{9tMtK zn*U|TGhrFQ)}>V}K6Q+xpC35Old`%r6fsfSEC(^+z!9ht5R9bH>5sz|czbs&>UYvc zy7E5X{95?Z$vV4)iShioPD7E~ufitF6{!%zTf4=`LPjJMip&h<@D=a8K)4*0Xnr(D zcxI>-D`ykJi;{gGxS)poa=l-VgiVICO``5*RB(H7+(_Z;v~xvvrhU4!!`>|Y*~^#U zf)pHaD=kUG`9Rx0Fz7Z!LD?4PKxga$oO?L2!pNp?NxphHUJ|vDu9imym)ncv1HWn0 z=O*hVrc#2y3FU@@>q8e-*A8=p0Sjus7zeRvjBK1-KNO_d$G~ECsg`f0J&fVVhkW8=wtAycnmb=q zwDT=IvL{OVvUd2EPRASB9G^Ispte^eotqbZr&xQ+g|tW7$m!%i3k12I1`qD+!66KP z>{Z5jerGl+a9APdnbAt9SSksMh+`SN|L9nGt+P45v0fuiW_RMqOba(noUzfQ}G<3q59Uw;-j;v zS&5A%w8N$GMsp*Eb0flwk;03MEx}{Q9(6=aS8r}{l8RZmp}+DcJZ5)PqD`QfuJ~y1 zf+G*^sED@H-uJmewb|UX@N4Dl*ZE=1dc7Iv`QV81(qsuE-kbi_WOQ>SUb3M32~^;n z;{+X>3s0YX>&cIw6UMv2bMmDgsL(E`eI#vFvh$h!zn;|7X9M%1Imw>}jCy8|hA&u4 zds;ElJY>X6o*vR0dAq5z(M&V8EwIC2`Z-)=KWix;JdIs$FOQA~2Yp=vkBk_8?ctlx zdS=7s!t;Zw)%h0+&Ph3cM}?2Mzf-^mBkjP!Z=zCiEJwDO#qsrQXdyumqN z?}82}!(1>1rKt|9yH)qAW(G_TJj-r@612ZnqF+Zo|5LR1WqavRMd%cSrKC@Jj=J_? zPRUT~d_Os{@kL^zyW4EniHgY|qa`inmYhFRn0jKSB2U(tG(sg_i2HpUS~M^PXijSsAwNdGg1;pSJzW7Hfo}I6>i=fz|?rhgp~B9#v?0T}W&^ zp_&<=omf+rbQ%g2vn9fNcY3FXkN-WB{9%5+LI|U~lv7VKON9KGrkdC_wM*jDvlA`j zlGJkOj4!sPG4tih%d~5hD}A9HxdLoby{b}JUEFoW>@bw~eR)qr7<%#n4LdLrtp3^| z8sAsw^&!Yr1jUT?9AO6(hH1_PG<$`!k6*Lhu0sQ_x8!Ow*U}C{1)HCsdR1-pDpxtI zlu&=N>*{_CZbTl6i3F`J6CEiBbgF6SsY5ZJ{&PXKK z#VhjjQ0>sN{Ky$WZRg`R8ZlUG$7-KyZUwgQpOS?N>Nu?M-eveoGH;P`DyecruTtuw zLP#%bt{=kb-yC5WfL;rH5z^-bYCa7+)m2L4x1oYxTv7Q7b$cFE(67;L4|4k!)EVms z)~}fw%PVItL>TFiPx6+y3SVG}7ytgU;Bq`I z$3lHz*X$oU$ztCTU`xTuPUpWP03sDYIZ+Li=u2Z2f>8al1!{pdLoes?YHK8{c)otfxS3+4Knahz4vNtFF^=#w0M$Z|7_b!kbpNiC;lRA?vE zq7NHoDj!wBZDgrt%F_y0(rDr5 + + Dialog + + + Qt::NonModal + + + + 0 + 0 + 1140 + 585 + + + + + 995 + 0 + + + + Dialog + + + + + + + + + + 7 + + + + + + + + 0 + 0 + + + + + 1 + 1 + + + + CrossCursor + + + QFrame::Panel + + + QFrame::Plain + + + + + + Qt::AlignCenter + + + + + + + + + + + true + + + + 0 + 0 + + + + + 0 + 1 + + + + SplitVCursor + + + Qt::NoFocus + + + Qt::LeftToRight + + + 255 + + + 9 + + + 128 + + + 128 + + + true + + + Qt::Vertical + + + true + + + false + + + QSlider::TicksBelow + + + 1 + + + + + + + + 0 + 0 + + + + + 1 + 0 + + + + SplitHCursor + + + Qt::NoFocus + + + + + + 255 + + + 128 + + + true + + + Qt::Horizontal + + + false + + + QSlider::TicksBelow + + + 1 + + + + + + + + 0 + 0 + + + + Axial (Transpose) + + + Qt::AlignCenter + + + + + + + + + + + + 0 + 0 + + + + + 1 + 0 + + + + SplitHCursor + + + Qt::NoFocus + + + + + + 255 + + + 128 + + + true + + + Qt::Horizontal + + + false + + + QSlider::TicksBelow + + + 1 + + + + + + + true + + + + 0 + 0 + + + + + 0 + 1 + + + + SplitVCursor + + + Qt::NoFocus + + + Qt::LeftToRight + + + 255 + + + 9 + + + 128 + + + 128 + + + true + + + Qt::Vertical + + + true + + + false + + + QSlider::TicksBelow + + + 1 + + + + + + + + 0 + 0 + + + + Sagittal + + + Qt::AlignCenter + + + + + + + + + + + + 0 + 0 + + + + + 1 + 1 + + + + CrossCursor + + + QFrame::Panel + + + QFrame::Plain + + + + + + + + + + + + + + + + + + + 0 + 0 + + + + + 1 + 0 + + + + SplitHCursor + + + Qt::NoFocus + + + + + + 255 + + + 128 + + + true + + + Qt::Horizontal + + + false + + + QSlider::TicksBelow + + + 1 + + + + + + + true + + + + 0 + 0 + + + + + 0 + 1 + + + + SplitVCursor + + + Qt::NoFocus + + + Qt::LeftToRight + + + 255 + + + 9 + + + 128 + + + 128 + + + true + + + Qt::Vertical + + + true + + + false + + + QSlider::TicksBelow + + + 1 + + + + + + + + 0 + 0 + + + + Coronal + + + Qt::AlignCenter + + + + + + + + + + + + 0 + 0 + + + + + 1 + 1 + + + + CrossCursor + + + QFrame::Panel + + + QFrame::Plain + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + + + + + 186 + 0 + + + + PointingHandCursor + + + Qt::NoFocus + + + QPushButton{ + background-color: red; + border-style: outset; + border-width: 2px; + border-radius: 10px; + border-color: beige; + font: bold 14px; + min-width: 10em; + padding: 6px; +} + + + + Load DICOM File + + + + + + + + 0 + 0 + + + + + 186 + 0 + + + + PointingHandCursor + + + Qt::NoFocus + + + QPushButton{ + background-color: DodgerBlue; + border-style: outset; + border-width: 2px; + border-radius: 10px; + border-color: beige; + font: bold 14px; + min-width: 10em; + padding: 6px; +} + + + + Open 3D View + + + + + + + + + PointingHandCursor + + + Qt::NoFocus + + + QPushButton{ + background-color: #FFEFD5; + border-style: outset; + border-width: 2px; + border-radius: 10px; + border-color: #CD853F; + font: bold 14px; + min-width: 10em; + padding: 6px; +} + + + + Save Slice + + + + + + + + 0 + 0 + + + + PointingHandCursor + + + /* +QComboBox { +background: #7FFFD4; +border: 2px solid #8A2BE2; +border-radius: 10px; +margin: 0px; +} +*/ +QComboBox { + border: 2px solid #8A2BE2; + border-radius: 10px; + padding: 1px 10px 1px 20px; + min-width: 6em; +} +/* +QComboBox:editable { + background: red; +} +*/ +QComboBox:!editable, QComboBox::drop-down:editable { + background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, + stop: 0 #E1E1E1, stop: 0.4 #DDDDDD, + stop: 0.5 #D8D8D8, stop: 1.0 #D3D3D3); +} + +QComboBox:!editable:on, QComboBox::drop-down:editable:on { + background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, + stop: 0 #D3D3D3, stop: 0.4 #D8D8D8, + stop: 0.5 #DDDDDD, stop: 1.0 #E1E1E1); +} + +QComboBox:on { /* shift the text when the popup opens */ + padding-top: 30px; + padding-left: 40px; +} + +QComboBox::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 20px; + + border-left-width: 1px; + border-left-color: darkgray; + border-left-style: solid; + border-top-right-radius: 10px; + border-bottom-right-radius: 10px; +} + +QComboBox::down-arrow { + image: url(resources/double-arrow-down.png); + width: 15px; + height: 15px; +} + + + + Axial + + + + + Sagittal + + + + + Coronal + + + + + + + + + + + + + + + + + 0 + 0 + + + + + 1 + 0 + + + + Dicom Info + + + + + + + + 0 + 0 + + + + Protected Display + + + + + + + + + + 0 + 0 + + + + + 350 + 100 + + + + + 800 + 100 + + + + + + + + + + + + + + + 0 + 0 + + + + + 1 + 0 + + + + ColorMap + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + + 1 + 0 + + + + PointingHandCursor + + + Qt::NoFocus + + + + GRAY + + + + + AUTUMN + + + + + BONE + + + + + COOL + + + + + HOT + + + + + HSV + + + + + JET + + + + + OCEAN + + + + + PINK + + + + + RAINBOW + + + + + SPRING + + + + + SUMMER + + + + + WINTER + + + + + + + + + 0 + 0 + + + + Set insertion point + + + false + + + + + + + + 0 + 0 + + + + Set target point + + + + + + + + 0 + 0 + + + + Qt::NoFocus + + + down sample + + + + + + + + 0 + 0 + + + + Qt::NoFocus + + + Load .npy + + + + + + + + 0 + 0 + + + + Qt::NoFocus + + + Save as .npy + + + + + + + + + + QPaintLabel3 + QLabel +

qpaintlabel3.h
+ + + + + + axial_hSlider + valueChanged(int) + coronal_hSlider + setValue(int) + + + 273 + 226 + + + 908 + 217 + + + + + coronal_hSlider + valueChanged(int) + axial_hSlider + setValue(int) + + + 908 + 217 + + + 234 + 212 + + + + + axial_vSlider + valueChanged(int) + sagittal_hSlider + setValue(int) + + + 28 + 344 + + + 479 + 215 + + + + + sagittal_hSlider + valueChanged(int) + axial_vSlider + setValue(int) + + + 488 + 219 + + + 20 + 249 + + + + + sagittal_vSlider + valueChanged(int) + coronal_vSlider + setValue(int) + + + 388 + 364 + + + 762 + 368 + + + + + coronal_vSlider + valueChanged(int) + sagittal_vSlider + setValue(int) + + + 762 + 294 + + + 388 + 307 + + + + + diff --git a/dicom_viewer/dicom_viewer/threeD/vol_view_module.py b/dicom_viewer/dicom_viewer/threeD/vol_view_module.py new file mode 100644 index 0000000..5f8b6ec --- /dev/null +++ b/dicom_viewer/dicom_viewer/threeD/vol_view_module.py @@ -0,0 +1,56 @@ +import sys +from PyQt5.QtWidgets import QDialog, QGraphicsScene, QApplication +from PyQt5.uic import loadUi +import dicom_viewer.threeD.loaddicomfile as ldf +from dicom_viewer.threeD.matinqt import CFigureCanvas + + +class C3dView(QDialog): + + def __init__(self): + super().__init__() + loadUi('vol_view_module.ui', self) + self.setWindowTitle('3D View') + self.image = None + self.setMouseTracking(False) + self.imgs = None + self.patient = None + self.threshold = 1000 + self.step = 10 + self.alpha = 0.5 + self.thresholdEdit.setText(str(self.threshold)) + self.stepEdit.setText(str(self.step)) + self.alphaEdit.setText(str(self.alpha)) + self.refreshButton.clicked.connect(self.refresh_clicked) + self.graphicsView.setMinimumSize(1, 1) + + def refresh_clicked(self): + self.threshold = int(self.thresholdEdit.text()) + self.step = int(self.stepEdit.text()) + self.alpha = float(self.alphaEdit.text()) + self.vol_show() + + def vol_show(self): + print("Shape before resampling\t", self.imgs.shape) + imgs_after_resamp, spacing = ldf.resample(self.imgs, self.patient) + print("Shape after resampling\t", imgs_after_resamp.shape) + try: + v, f = ldf.make_mesh(imgs_after_resamp, threshold=self.threshold, step_size=self.step) + except Exception: + print('re-resample...') + imgs_after_resamp, spacing = ldf.resample(self.imgs, self.patient) + v, f = ldf.make_mesh(imgs_after_resamp, threshold=self.threshold, step_size=self.step) + + dr = CFigureCanvas() + dr.plt_3d(v, f, alpha=self.alpha) + graphicscene = QGraphicsScene() + graphicscene.addWidget(dr) + self.graphicsView.setScene(graphicscene) + self.graphicsView.show() + + +if __name__ == '__main__': + app = QApplication(sys.argv) + ex = C3dView() + ex.show() + sys.exit(app.exec_()) diff --git a/dicom_viewer/dicom_viewer/threeD/vol_view_module.ui b/dicom_viewer/dicom_viewer/threeD/vol_view_module.ui new file mode 100644 index 0000000..42c322e --- /dev/null +++ b/dicom_viewer/dicom_viewer/threeD/vol_view_module.ui @@ -0,0 +1,159 @@ + + + Dialog + + + Qt::NonModal + + + + 0 + 0 + 796 + 763 + + + + Dialog + + + + + + + + + + + + + 0 + 0 + + + + Step Size + + + Qt::AlignCenter + + + + + + + + 0 + 0 + + + + Threshold + + + Qt::AlignCenter + + + + + + + + 0 + 0 + + + + + + + + + 0 + 0 + + + + + + + + + 0 + 0 + + + + + + + + + 0 + 0 + + + + Alpha + + + Qt::AlignCenter + + + + + + + + + + 0 + 0 + + + + Qt::NoFocus + + + Refresh + + + + + + + Qt::Horizontal + + + QSizePolicy::Minimum + + + + 40 + 20 + + + + + + + + + + + 0 + 0 + + + + Qt::NoFocus + + + + + + + + + + diff --git a/dicom_viewer/dicom_viewer/twoD/edgefunction.py b/dicom_viewer/dicom_viewer/twoD/edgefunction.py new file mode 100644 index 0000000..9c0d3a2 --- /dev/null +++ b/dicom_viewer/dicom_viewer/twoD/edgefunction.py @@ -0,0 +1,149 @@ +# flake8: noqa: 501 + +import cv2 +import numpy as np + + +def roberts(img): + ker_r1 = np.array([[-1, 0], [0, 1]]) + ker_r2 = np.array([[0, -1], [1, 0]]) + rows, cols = img.shape + # for center在左上角 + temp_img = cv2.copyMakeBorder(src=img, top=0, bottom=1, left=0, right=1, borderType=cv2.BORDER_REPLICATE) + new_img = img.copy().astype(float) + for i in range(rows): + for j in range(cols): + temp = temp_img[i:i+2, j:j+2] + new_img[i, j] = np.sqrt(np.sum(np.multiply(ker_r1, temp))**2 + np.sum(np.multiply(ker_r2, temp))**2) + return new_img + + +def perwitt(img): + ker_p1 = np.array([[-1, -1, -1], [0, 0, 0], [1, 1, 1]]) + ker_p2 = np.array([[-1, 0, 1], [-1, 0, 1], [-1, 0, 1]]) + rows, cols = img.shape + # for center在左上角 + temp_img = cv2.copyMakeBorder(src=img, top=1, bottom=1, left=1, right=1, borderType=cv2.BORDER_REPLICATE) + new_img = img.copy().astype(float) + for i in range(rows): + for j in range(cols): + temp = temp_img[i:i+3, j:j+3] + # 平方相加開根號 + new_img[i, j] = np.sqrt(np.sum(np.multiply(ker_p1, temp)) ** 2 + np.sum(np.multiply(ker_p2, temp)) ** 2) + return new_img + + +def sobel(img): + ker_p1 = np.array([[-1, -2, -1], [0, 0, 0], [1, 2, 1]]) + ker_p2 = np.array([[-1, 0, 1], [-2, 0, 2], [-1, 0, 1]]) + rows, cols = img.shape + temp_img = cv2.copyMakeBorder(src=img, top=1, bottom=1, left=1, right=1, borderType=cv2.BORDER_REPLICATE) + new_img = img.copy().astype(float) + for i in range(rows): + for j in range(cols): + temp = temp_img[i:i+3, j:j+3] + # 平方相加開根號 + new_img[i, j] = np.sqrt(np.sum(np.multiply(ker_p1, temp))**2 + np.sum(np.multiply(ker_p2, temp))**2) + return new_img + + +def frei_chen(img): + ker_p1 = np.array([[-1, -np.sqrt(2), -1], [0, 0, 0], [1, np.sqrt(2), 1]]) + ker_p2 = np.array([[-1, 0, 1], [-np.sqrt(2), 0, np.sqrt(2)], [-1, 0, 1]]) + rows, cols = img.shape + temp_img = cv2.copyMakeBorder(src=img, top=1, bottom=1, left=1, right=1, borderType=cv2.BORDER_REPLICATE) + new_img = img.copy().astype(float) + for i in range(rows): + for j in range(cols): + temp = temp_img[i:i+3, j:j+3] + # 平方相加開根號 + new_img[i, j] = np.sqrt(np.sum(np.multiply(ker_p1, temp))**2 + np.sum(np.multiply(ker_p2, temp))**2) + return new_img + + +def krisch(img): + ker_k0 = np.array([[-3, -3, 5], [-3, 0, 5], [-3, -3, 5]]) + ker_k1 = np.array([[-3, 5, 5], [-3, 0, 5], [-3, -3, -3]]) + ker_k2 = np.array([[5, 5, 5], [-3, 0, -3], [-3, -3, -3]]) + ker_k3 = np.array([[5, 5, -3], [5, 0, -3], [-3, -3, -3]]) + ker_k4 = np.array([[5, -3, -3], [5, 0, -3], [5, -3, -3]]) + ker_k5 = np.array([[-3, -3, -3], [5, 0, -3], [5, 5, -3]]) + ker_k6 = np.array([[-3, -3, -3], [-3, 0, -3], [5, 5, 5]]) + ker_k7 = np.array([[-3, -3, -3], [-3, 0, 5], [-3, 5, 5]]) + list_kn = [ker_k0, ker_k1, ker_k2, ker_k3, ker_k4, ker_k5, ker_k6, ker_k7] + rows, cols = img.shape + temp_img = cv2.copyMakeBorder(src=img, top=1, bottom=1, left=1, right=1, borderType=cv2.BORDER_REPLICATE) + new_img = img.copy().astype(float) + for i in range(rows): + for j in range(cols): + temp = temp_img[i:i+3, j:j+3] + _max = 0 # 初始化max值 + for ker in list_kn: + temp_sum = np.sum(ker * temp) + if temp_sum > _max: + _max = temp_sum + new_img[i, j] = _max + return new_img + + +def robinson(img): + ker_r0 = np.array([[-1, 0, 1], [-2, 0, 2], [-1, 0, 1]]) + ker_r1 = np.array([[0, 1, 2], [-1, 0, 1], [-2, -1, 0]]) + ker_r2 = np.array([[1, 2, 1], [0, 0, 0], [-1, -2, -1]]) + ker_r3 = np.array([[2, 1, 0], [1, 0, -1], [0, -1, -2]]) + ker_r4 = np.array([[1, 0, -1], [2, 0, -2], [1, 0, -1]]) + ker_r5 = np.array([[0, -1, -2], [1, 0, -1], [2, 1, 0]]) + ker_r6 = np.array([[-1, -2, -1], [0, 0, 0], [1, 2, 1]]) + ker_r7 = np.array([[-2, -1, 0], [-1, 0, 1], [0, 1, 2]]) + list_rn = [ker_r0, ker_r1, ker_r2, ker_r3, ker_r4, ker_r5, ker_r6, ker_r7] + rows, cols = img.shape + temp_img = cv2.copyMakeBorder(src=img, top=1, bottom=1, left=1, right=1, borderType=cv2.BORDER_REPLICATE) + new_img = img.copy().astype(float) + for i in range(rows): + for j in range(cols): + temp = temp_img[i:i+3, j:j+3] + _max = 0 # 初始化max值 + for ker in list_rn: + temp_sum = np.sum(ker * temp) + if temp_sum > _max: + _max = temp_sum + new_img[i, j] = _max + return new_img + + +def nevatia_babu(img): + ker_nb0 = np.array([[100, 100, 100, 100, 100], [100, 100, 100, 100, 100], [0, 0, 0, 0, 0], + [-100, -100, -100, -100, -100], [-100, -100, -100, -100, -100]]) + ker_nb1 = np.array([[100, 100, 100, 100, 100], [100, 100, 100, 78, -32], [100, 92, 0, -92, -100], + [32, -78, -100, -100, -100], [-100, -100, -100, -100, -100]]) + ker_nb2 = np.array([[100, 100, 100, 32, -100], [100, 100, 92, -78, -100], [100, 100, 0, -100, -100], + [100, 78, -92, -100, -100], [100, -32, -100, -100, -100]]) + ker_nb3 = np.array([[-100, -100, 0, 100, 100], [-100, -100, 0, 100, 100], [-100, -100, 0, 100, 100], + [-100, -100, 0, 100, 100], [-100, -100, 0, 100, 100]]) + ker_nb4 = np.array([[-100, 32, 100, 100, 100], [-100, -78, 92, 100, 100], [-100, -100, 0, 100, 100], + [-100, -100, -92, 78, 100], [-100, -100, -100, -32, 100]]) + ker_nb5 = np.array([[100, 100, 100, 100, 100], [-32, 78, 100, 100, 100], [-100, -92, 0, 92, 100], + [-100, -100, -100, -78, 32], [-100, -100, -100, -100, -100]]) + + list_nbn = [ker_nb0, ker_nb1, ker_nb2, ker_nb3, ker_nb4, ker_nb5] + rows, cols = img.shape + temp_img = cv2.copyMakeBorder(src=img, top=2, bottom=2, left=2, right=2, borderType=cv2.BORDER_REPLICATE) + new_img = img.copy().astype(float) + for i in range(rows): + for j in range(cols): + temp = temp_img[i:i+5, j:j+5] + _max = 0 # 初始化max值 + for ker in list_nbn: + temp_sum = np.sum(ker * temp) + if temp_sum > _max: + _max = temp_sum + new_img[i, j] = _max + return new_img + + +def reverse_thresholding(img, threshold=128): + new_img = np.empty(img.shape) + new_img.fill(255) + mask = img >= threshold + new_img[mask] = 0 + return new_img diff --git a/dicom_viewer/dicom_viewer/twoD/qpaintlabel2.py b/dicom_viewer/dicom_viewer/twoD/qpaintlabel2.py new file mode 100644 index 0000000..0e287d3 --- /dev/null +++ b/dicom_viewer/dicom_viewer/twoD/qpaintlabel2.py @@ -0,0 +1,224 @@ +# flake8: noqa: 501 + +from PyQt5.QtWidgets import QLabel +from PyQt5.QtGui import QImage, QPixmap +from PyQt5 import QtCore +from PyQt5.QtCore import Qt +from twoD import edgefunction as ef +import cv2 +import numpy as np +import pydicom + + +class QPaintLabel2(QLabel): + + def __init__(self, parent): + super(QLabel, self).__init__(parent) + self.window = None + self.setMouseTracking(False) + # 為了能resize scale down, 要setMinimumSize,不然會被辨認為不可縮小 + self.setMinimumSize(1, 1) + self.drawornot, self.seed = False, False + self.image = None + self.processedImage = None + self.imgr, self.imgc = None, None + self.pos_x = 20 + self.pos_y = 20 + self.imgpos_x = 0 + self.imgpos_y = 0 + # 遇到list就停,圖上的顯示白色只是幌子 + self.pos_xy = [] + self.mor_Kersize = 3 + self.mor_Iter = 3 + + def mouseMoveEvent(self, event): + if self.drawornot: + self.pos_x = event.pos().x() + self.pos_y = event.pos().y() + self.imgpos_x = int(self.pos_x * self.imgc / self.width()) + self.imgpos_y = int(self.pos_y * self.imgr / self.height()) + self.pos_xy.append((self.imgpos_x, self.imgpos_y)) + self.drawing() + + def mousePressEvent(self, event): + if self.drawornot: + self.pos_x = event.pos().x() + self.pos_y = event.pos().y() + self.imgpos_x = int(self.pos_x * self.imgc / self.width()) + self.imgpos_y = int(self.pos_y * self.imgr / self.height()) + self.pos_xy.append((self.imgpos_x, self.imgpos_y)) + self.drawing() + if self.seed: + self.pos_x = event.pos().x() + self.pos_y = event.pos().y() + self.imgpos_x = int(self.pos_x * self.imgc / self.width()) + self.imgpos_y = int(self.pos_y * self.imgr / self.height()) + self.seed_clicked(seedx=self.imgpos_x, seedy=self.imgpos_y) + self.seed = False + +# https://stackoverflow.com/questions/7501706/python-how-do-i-pass-variables-between-class-instances-or-get-the-caller + def edge_detection(self, _type): + try: + self.processedImage = cv2.cvtColor(self.processedImage, cv2.COLOR_BGR2GRAY) + except Exception: + pass + self.processedImage = linear_convert(self.processedImage).astype(np.uint8) + if _type == 'Laplacian': + self.processedImage = cv2.convertScaleAbs(cv2.Laplacian(self.processedImage, cv2.CV_16S, ksize=1)) + elif _type == 'Sobel': + img = linear_convert(ef.sobel(self.processedImage)).astype(np.uint8) + ret, img = cv2.threshold(img, 110, 255, cv2.THRESH_BINARY) + self.processedImage = img + elif _type == 'Perwitt': + img = linear_convert(ef.perwitt(self.processedImage)).astype(np.uint8) + ret, img = cv2.threshold(img, 70, 255, cv2.THRESH_BINARY) + self.processedImage = img + elif _type == 'Frei & Chen': + img = linear_convert(ef.frei_chen(self.processedImage)).astype(np.uint8) + ret, img = cv2.threshold(img, 80, 255, cv2.THRESH_BINARY) + self.processedImage = img + + self.display_image() + + def morthology(self, _type): + kernel = np.ones((self.mor_Kersize, self.mor_Kersize), np.uint8) + + if _type == 'Dilation': + self.processedImage = cv2.dilate(self.processedImage, kernel, iterations=self.mor_Iter) + elif _type == 'Erosion': + self.processedImage = cv2.erode(self.processedImage, kernel, iterations=self.mor_Iter) + elif _type == 'Opening': + self.processedImage = cv2.morphologyEx(self.processedImage, cv2.MORPH_OPEN, + kernel, iterations=self.mor_Iter) + elif _type == 'Closing': + self.processedImage = cv2.morphologyEx(self.processedImage, cv2.MORPH_CLOSE, + kernel, iterations=self.mor_Iter) + + self.display_image() + + def load_dicom_image(self, fname): + dcm = pydicom.read_file(fname, force=True) + # or whatever is the correct transfer syntax for the file + dcm.file_meta.TransferSyntaxUID = pydicom.uid.ImplicitVRLittleEndian + print(np.nanmax(dcm.pixel_array), np.nanmin(dcm.pixel_array)) + dcm.image = dcm.pixel_array * dcm.RescaleSlope + dcm.RescaleIntercept + self.image = linear_convert(dcm.image).astype(np.uint8) + self.processedImage = self.image.copy() + self.imgr, self.imgc = self.processedImage.shape[0:2] + self.display_image() + + def load_image(self, fname): + print(fname) + self.image = cv2.imread(fname) + self.processedImage = self.image.copy() + self.imgr, self.imgc = self.processedImage.shape[0:2] + self.display_image() + + def display_image(self): + qformat = QImage.Format_Indexed8 + if len(self.processedImage.shape) == 3: # rows[0], cols[1], channels[2] + if (self.processedImage.shape[2]) == 4: + qformat = QImage.Format_RGBA8888 + else: + qformat = QImage.Format_RGB888 + + w, h = self.width(), self.height() + img = QImage(self.processedImage, self.processedImage.shape[1], + self.processedImage.shape[0], self.processedImage.strides[0], qformat) + img = img.rgbSwapped() + # 讓image跟著Qlabel大小改變 + self.setScaledContents(True) + # 扣掉線寬才不會讓qlabel變大 + backlash = self.lineWidth()*2 + self.setPixmap(QPixmap.fromImage(img).scaled(w-backlash, h-backlash, Qt.IgnoreAspectRatio)) + self.setAlignment(QtCore.Qt.AlignHCenter | QtCore.Qt.AlignVCenter) + + def drawing(self): + self.processedImage[self.imgpos_y:self.imgpos_y+20, self.imgpos_x:self.imgpos_x+20] = 255 + self.display_image() + + def thresholding(self, threshold): + ret, img = cv2.threshold(self.processedImage, threshold, 255, cv2.THRESH_BINARY) + self.processedImage = img + self.display_image() + + def seed_clicked(self, seedx, seedy): + try: + self.processedImage = cv2.cvtColor(self.processedImage, cv2.COLOR_BGR2GRAY) + except Exception: + pass + tobeprocessed = self.processedImage.copy() + result = self.region_growing(tobeprocessed, (seedy, seedx)) + self.processedImage = result + self.display_image() + + def region_growing(self, img, seed): + _list = [] + # zeros_like建構一個和img的shape一樣但都是zeros的矩陣,和np.zeros(img.shape)應該是一樣的 + outimg = np.zeros_like(img) + _list.append((seed[0], seed[1])) + processed = [] + # 當list有值,就挑第一個list[0]進行處理,如果list[0]的值不是0(即是255),就把新影像list[0]位置設為255 + # 周遭是255的位置在新影像也都設成255,並進入待處理區 + while len(_list) > 0: + pix = _list[0] + outimg[pix[0], pix[1]] = 255 + for coord in get8n(pix[0], pix[1], img.shape): + if img[coord[0], coord[1]] != 0: + outimg[coord[0], coord[1]] = 255 + # 放在list裡面的都會被拿出來處理,所以如果不在processed裡面,代表還沒被放到預備處理區(即list) + # 就把他放進去list,然後也放進processed,代表已經進入預備處理區了 + if coord not in processed: + _list.append(coord) + processed.append(coord) + # 處理過的就離開預備處理清單list, processed不刪掉,因為做過的就是做過了 + _list.pop(0) + self.processedImage = outimg + self.display_image() + cv2.destroyAllWindows() + return outimg + + +def get8n(x, y, shape): + out = [] + maxx = shape[1]-1 + maxy = shape[0]-1 + # top left + outx = min(max(x-1, 0), maxx) + outy = min(max(y-1, 0), maxy) + out.append((outx, outy)) + # top center + outx = x + outy = min(max(y-1, 0), maxy) + out.append((outx, outy)) + # top right + outx = min(max(x+1, 0), maxx) + outy = min(max(y-1, 0), maxy) + out.append((outx, outy)) + # left + outx = min(max(x-1, 0), maxx) + outy = y + out.append((outx, outy)) + # right + outx = min(max(x+1, 0), maxx) + outy = y + out.append((outx, outy)) + # bottom left + outx = min(max(x-1, 0), maxx) + outy = min(max(y+1, 0), maxy) + out.append((outx, outy)) + # bottom center + outx = x + outy = min(max(y+1, 0), maxy) + out.append((outx, outy)) + # bottom right + outx = min(max(x+1, 0), maxx) + outy = min(max(y+1, 0), maxy) + out.append((outx, outy)) + return out + + +def linear_convert(img): + convert_scale = 255.0 / (np.max(img) - np.min(img)) + converted_img = convert_scale*img-(convert_scale*np.min(img)) + return converted_img diff --git a/dicom_viewer/dicom_viewer/twoD/resources/undo.png b/dicom_viewer/dicom_viewer/twoD/resources/undo.png new file mode 100644 index 0000000000000000000000000000000000000000..904b6f66fc9c9f8c46659681949cb42f65fb20f7 GIT binary patch literal 21326 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 + + Dialog + + + Qt::NonModal + + + + 0 + 0 + 942 + 670 + + + + Dialog + + + + + + + + + + Gray +Scale + + + + + + + + 0 + 0 + + + + Qt::NoFocus + + + + + + Undo + + + + + + + + + + 0 + 0 + + + + Qt::NoFocus + + + 0 + + + + true + + + Threshold + + + + + + + + + + + Qt::NoFocus + + + Thresholding + + + + + + + + + + Morthology + + + + + + + + + Dilation + + + + + Erosion + + + + + Opening + + + + + Closing + + + + + + + + + + + + + 0 + 0 + + + + Iteration + + + Qt::AlignCenter + + + + + + + + 0 + 0 + + + + + + + + + 0 + 0 + + + + Kernel Size + + + Qt::AlignCenter + + + + + + + + 0 + 0 + + + + + + + + + + + 0 + 0 + + + + Qt::NoFocus + + + Refresh + + + + + + + Qt::Horizontal + + + QSizePolicy::Minimum + + + + 40 + 20 + + + + + + + + + + + + + Edge Detection + + + + + + + + + 0 + 0 + + + + + Laplacian + + + + + Sobel + + + + + Perwitt + + + + + Frei & Chen + + + + + + + + + 0 + 0 + + + + Qt::NoFocus + + + Go! + + + + + + + + + + Region Growing + + + + + + + + Currently Only Support Binary Image + + + Qt::AlignCenter + + + + + + + + 0 + 0 + + + + Qt::NoFocus + + + Seeding + + + + + + + + + + Drawing + + + + + + + + true + + + Qt::NoFocus + + + -1 + + + Draw + + + + + + + + + + + + + + + + + Qt::NoFocus + + + Load Image + + + + + + + Qt::NoFocus + + + Save Image + + + + + + + + + + + + 0 + 0 + + + + QFrame::Box + + + 1 + + + + + + + + + + + 0 + 0 + + + + QFrame::Box + + + QFrame::Plain + + + 1 + + + + + + + + + + + + + QPaintLabel2 + QLabel +
qpaintlabel2.h
+
+
+ + + + thresholdValue + returnPressed() + thresholdButton + click() + + + 377 + 86 + + + 296 + 89 + + + + +
diff --git a/dicom_viewer/package.xml b/dicom_viewer/package.xml new file mode 100644 index 0000000..f24dc89 --- /dev/null +++ b/dicom_viewer/package.xml @@ -0,0 +1,21 @@ + + + + dicom_viewer + 0.0.0 + Dicom viewer + telecom + TODO: License declaration + + rclpy + std_msgs + + ament_copyright + ament_flake8 + ament_pep257 + python3-pytest + + + ament_python + + diff --git a/dicom_viewer/readme.md b/dicom_viewer/readme.md new file mode 100644 index 0000000..908f867 --- /dev/null +++ b/dicom_viewer/readme.md @@ -0,0 +1,82 @@ +

+ + Dicom Viewer + +

簡易醫學影像GUI (Dicom Viewer)

+

能顯示 2D/3D Dicom影像的應用

+
+

+ +本project旨在利用python+Qt製作簡易的醫學影像GUI,提供一個平台,能在上面使用python開發測試各式影像處理功能,尤其是針對3D之Dicom Stack! + +## 先看兩段Demo吧 +### 2D Image Processing +### 3D Image Processing + +## 執行畫面 +執行程式會打開Main Window,左上角的選單有2D processing和3D processing兩個子選項,其中後者embed有3D volume reconstruction功能 + +### Main Window + + mainwindow + + +### 2D processing +內含功能 +- Load Image (含*.dcm) +- Save Image +- Convert to gray scale +- Restore +- Thresholding +- Region Growing +- Morthology (Dilation, Erosion, Opening, Closing) +- Edge Detection (Laplacian, Sobel, Perwitt, Frei & Chen) +- Drawing +
+ + 2D_Processing + + + +### 3D processing +內含功能 +- Load DICOM stack +- Save slice (axial, sagittal, coronal) +- Colormap transform +- Slider scrolling +- Mouse hovering/clicking +- Show DICOM info +- Show slice index coordinate +- 3D volume reconstruction +
+ + 3D_Processing + + +### 3D volume reconstruction +
+ + 3D_Volume + + + +## Future Extension +- 加入數據分析功能 + >導入一些醫學知識,讓軟體有一些初步的分析功能(如有沒有骨折、腫瘤等等) +- 3D reconstruction改善 + >更新volume重建算法,提升計算速度與還原度 +- 3D image processing + >加入對3D voxel影像進行更複雜的影像處理功能 +- Make it distributable + >包裝成release版本,成為可轉散發軟體。希望能支援跨平台運作(window、macOS) + +## How to use it? +Project root will be **/src**, just clone it and run mainwindow.py. + +Strictly follow the package version in requirements.txt is not necessary. + +## Acknowledgments +- [brain.png](https://github.com/wenyalintw/Dicom-Viewer/blob/master/resources/brain.png) licensed under "CC BY 3.0" downloaded from [ICONFINDER](https://www.iconfinder.com/icons/1609653/brain_organs_icon) +- 3D volume reconstruction modified from [Howard Chen's Post](https://www.raddq.com/dicom-processing-segmentation-visualization-in-python/) + +###### MIT License (2019), Wen-Ya Lin diff --git a/dicom_viewer/resource/dicom_viewer b/dicom_viewer/resource/dicom_viewer new file mode 100644 index 0000000..e69de29 diff --git a/dicom_viewer/setup.cfg b/dicom_viewer/setup.cfg new file mode 100644 index 0000000..291bd84 --- /dev/null +++ b/dicom_viewer/setup.cfg @@ -0,0 +1,4 @@ +[develop] +script_dir=$base/lib/dicom_viewer +[install] +install_scripts=$base/lib/dicom_viewer diff --git a/dicom_viewer/setup.py b/dicom_viewer/setup.py new file mode 100644 index 0000000..337aa3b --- /dev/null +++ b/dicom_viewer/setup.py @@ -0,0 +1,27 @@ +from setuptools import find_packages, setup + +package_name = 'dicom_viewer' + +setup( + name=package_name, + version='0.0.0', + packages=find_packages(exclude=['test']), + data_files=[ + ('share/ament_index/resource_index/packages', + ['resource/' + package_name]), + ('share/' + package_name, ['package.xml']), + ], + install_requires=['setuptools'], + zip_safe=True, + maintainer='telecom', + maintainer_email='lfmaldon@ens2m.org', + description='Dicom viewer', + license='TODO: License declaration', + tests_require=['pytest'], + entry_points={ + 'console_scripts': [ + # 'pointPublisher = dicom_viewer.pointPublisher:main', + 'mainwindow = dicom_viewer.mainwindow:main' + ], + }, +) diff --git a/dicom_viewer/test/test_copyright.py b/dicom_viewer/test/test_copyright.py new file mode 100644 index 0000000..97a3919 --- /dev/null +++ b/dicom_viewer/test/test_copyright.py @@ -0,0 +1,25 @@ +# Copyright 2015 Open Source Robotics Foundation, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from ament_copyright.main import main +import pytest + + +# Remove the `skip` decorator once the source file(s) have a copyright header +@pytest.mark.skip(reason='No copyright header has been placed in the generated source file.') +@pytest.mark.copyright +@pytest.mark.linter +def test_copyright(): + rc = main(argv=['.', 'test']) + assert rc == 0, 'Found errors' diff --git a/dicom_viewer/test/test_flake8.py b/dicom_viewer/test/test_flake8.py new file mode 100644 index 0000000..27ee107 --- /dev/null +++ b/dicom_viewer/test/test_flake8.py @@ -0,0 +1,25 @@ +# Copyright 2017 Open Source Robotics Foundation, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from ament_flake8.main import main_with_errors +import pytest + + +@pytest.mark.flake8 +@pytest.mark.linter +def test_flake8(): + rc, errors = main_with_errors(argv=[]) + assert rc == 0, \ + 'Found %d code style errors / warnings:\n' % len(errors) + \ + '\n'.join(errors) diff --git a/dicom_viewer/test/test_pep257.py b/dicom_viewer/test/test_pep257.py new file mode 100644 index 0000000..b234a38 --- /dev/null +++ b/dicom_viewer/test/test_pep257.py @@ -0,0 +1,23 @@ +# Copyright 2015 Open Source Robotics Foundation, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from ament_pep257.main import main +import pytest + + +@pytest.mark.linter +@pytest.mark.pep257 +def test_pep257(): + rc = main(argv=['.', 'test']) + assert rc == 0, 'Found code style errors / warnings' diff --git a/doc/placeholder.txt b/doc/placeholder.txt new file mode 100644 index 0000000..aaf02a3 --- /dev/null +++ b/doc/placeholder.txt @@ -0,0 +1,3 @@ +place holder for report + +Has no value, dreams or aspirations, only for testing \ No newline at end of file diff --git a/haptic_controller/CMakeLists.txt b/haptic_controller/CMakeLists.txt new file mode 100644 index 0000000..38132dc --- /dev/null +++ b/haptic_controller/CMakeLists.txt @@ -0,0 +1,123 @@ +cmake_minimum_required(VERSION 3.8) +project(haptic_controller) + +# Default to C++14 +if(NOT CMAKE_CXX_STANDARD) + set(CMAKE_CXX_STANDARD 14) +endif() + +if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang") + add_compile_options(-Wall -Wextra -Wpedantic) +endif() + +# Find dependencies + +set(DEPS + ament_cmake + ament_cmake_python + hardware_interface + rclcpp + rclpy + trajectory_msgs + tf2_ros + tf2_geometry_msgs + visualization_msgs + geometry_msgs + std_msgs + interactive_markers + controller_interface + generate_parameter_library + pluginlib + rclcpp_lifecycle + realtime_tools + pantograph_library + eigen3_cmake_module + Eigen3 +) + +foreach(Dependency IN ITEMS ${DEPS}) + find_package(${Dependency} REQUIRED) +endforeach() + +generate_parameter_library( + haptic_controller_parameters + src/haptic_controller_parameters.yaml +) +add_library(${PROJECT_NAME} SHARED + src/haptic_controller.cpp +) + +target_compile_features(${PROJECT_NAME} PUBLIC cxx_std_17) +target_include_directories(${PROJECT_NAME} PUBLIC + $ + $ + $ +) + +target_link_libraries(${PROJECT_NAME} PUBLIC + haptic_controller_parameters +) +ament_target_dependencies(${PROJECT_NAME} PUBLIC ${DEPS}) +target_compile_definitions(${PROJECT_NAME} PRIVATE "HAPTIC_CONTROLLER_BUILDING_DLL") +pluginlib_export_plugin_description_file(controller_interface haptic_controller_plugin.xml) + +if(BUILD_TESTING) + find_package(ament_lint_auto REQUIRED) + # the following line skips the linter which checks for copyrights + # comment the line when a copyright and license is added to all source files + set(ament_cmake_copyright_FOUND TRUE) + # the following line skips cpplint (only works in a git repo) + # comment the line when this package is in a git repo and when + # a copyright and license is added to all source files + set(ament_cmake_cpplint_FOUND TRUE) + ament_lint_auto_find_test_dependencies() +endif() + +#----------------------------------------------------- +# Cpp setup +#----------------------------------------------------- + +# Include Cpp "include" directory +# include_directories(include) + +# Create Cpp executables +add_executable(error_estimation src/error_estimation.cpp) +ament_target_dependencies(error_estimation PUBLIC ${DEPS}) + +# Install Cpp executables +install( + TARGETS + error_estimation + DESTINATION lib/${PROJECT_NAME}) + +install( + DIRECTORY include/ + DESTINATION include +) +install( + TARGETS + haptic_controller + haptic_controller_parameters + EXPORT export_haptic_controller + RUNTIME DESTINATION bin + ARCHIVE DESTINATION lib + LIBRARY DESTINATION lib + INCLUDES DESTINATION include +) + +#----------------------------------------------------- +# Install Python package +#----------------------------------------------------- +ament_python_install_package( + ${PROJECT_NAME} +) + +install( + PROGRAMS + scripts/markers.py + DESTINATION lib/${PROJECT_NAME} +) + +ament_export_targets(export_haptic_controller HAS_LIBRARY_TARGET) +ament_export_dependencies(${DEPS}) +ament_package() diff --git a/haptic_controller/LICENSE b/haptic_controller/LICENSE new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/haptic_controller/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/haptic_controller/haptic_controller/__init__.py b/haptic_controller/haptic_controller/__init__.py new file mode 100644 index 0000000..8824178 --- /dev/null +++ b/haptic_controller/haptic_controller/__init__.py @@ -0,0 +1,15 @@ +# Copyright 2023, ICube Laboratory, University of Strasbourg +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Author: Luis Maldonado (lfmaldon@ens2m.org) diff --git a/haptic_controller/haptic_controller_plugin.xml b/haptic_controller/haptic_controller_plugin.xml new file mode 100644 index 0000000..04b5129 --- /dev/null +++ b/haptic_controller/haptic_controller_plugin.xml @@ -0,0 +1,10 @@ + + + + Haptic controller used to implement force control + + + diff --git a/haptic_controller/include/haptic_controller/haptic_controller.hpp b/haptic_controller/include/haptic_controller/haptic_controller.hpp new file mode 100644 index 0000000..4149706 --- /dev/null +++ b/haptic_controller/include/haptic_controller/haptic_controller.hpp @@ -0,0 +1,109 @@ +// Copyright 2024, ICube Laboratory, University of Strasbourg +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#ifndef HAPTIC_CONTROLLER__HAPTIC_CONTROLLER_HPP_ +#define HAPTIC_CONTROLLER__HAPTIC_CONTROLLER_HPP_ + +#include +#include +#include +#include +#include +#include +#include + +#include "controller_interface/controller_interface.hpp" +#include "rclcpp_lifecycle/node_interfaces/lifecycle_node_interface.hpp" +#include "rclcpp_lifecycle/state.hpp" + +#include "realtime_tools/realtime_buffer.h" +#include "haptic_controller/visibility_control.h" + +// auto-generated by generate_parameter_library +#include "haptic_controller_parameters.hpp" +#include "pantograph_library/pantograph_model.hpp" + +#include "std_msgs/msg/float64.hpp" +#include + +namespace haptic_controller +{ + +class HapticController : public controller_interface::ControllerInterface +{ +public: + HAPTIC_CONTROLLER_PUBLIC + HapticController(); + + HAPTIC_CONTROLLER_PUBLIC + ~HapticController() = default; + + HAPTIC_CONTROLLER_PUBLIC + controller_interface::CallbackReturn on_init() override; + + HAPTIC_CONTROLLER_PUBLIC + controller_interface::InterfaceConfiguration command_interface_configuration() const override; + + HAPTIC_CONTROLLER_PUBLIC + controller_interface::InterfaceConfiguration state_interface_configuration() const override; + + HAPTIC_CONTROLLER_PUBLIC + controller_interface::CallbackReturn on_configure( + const rclcpp_lifecycle::State & previous_state) override; + + HAPTIC_CONTROLLER_PUBLIC + controller_interface::CallbackReturn on_activate( + const rclcpp_lifecycle::State & previous_state) override; + + HAPTIC_CONTROLLER_PUBLIC + controller_interface::CallbackReturn on_deactivate( + const rclcpp_lifecycle::State & previous_state) override; + + HAPTIC_CONTROLLER_PUBLIC + controller_interface::return_type update( + const rclcpp::Time & time, const rclcpp::Duration & period) override; + + std::vector joint_names_; + std::string interface_name_; + + std::vector command_interface_types_; + Eigen::Vector3d marker_pos_; + double last_pos_a1_; + double last_pos_a5_; + double current_pos_a1_; + double current_pos_a5_; + +protected: + controller_interface::CallbackReturn read_parameters(); + void marker_callback(const visualization_msgs::msg::Marker::SharedPtr msg); + + std::shared_ptr param_listener_; + Params params_; + + std::unordered_map> name_if_value_mapping_; + std::vector pantograph_joint_names_; + pantograph_library::PantographModel pantograph_model_; + + realtime_tools::RealtimeBuffer> rt_command_ptr_; + rclcpp::Subscription::SharedPtr error_subscriber_; + double last_error_; + rclcpp::Subscription::SharedPtr marker_subscriber_; + double kp; + double kd_tip; + double ratio; +}; + +} // namespace haptic_controller + +#endif // HAPTIC_CONTROLLER__HAPTIC_CONTROLLER_HPP_ diff --git a/haptic_controller/include/haptic_controller/visibility_control.h b/haptic_controller/include/haptic_controller/visibility_control.h new file mode 100644 index 0000000..27fa911 --- /dev/null +++ b/haptic_controller/include/haptic_controller/visibility_control.h @@ -0,0 +1,56 @@ +// Copyright 2024, ICube Laboratory, University of Strasbourg +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/* This header must be included by all rclcpp headers which declare symbols + * which are defined in the rclcpp library. When not building the rclcpp + * library, i.e. when using the headers in other package's code, the contents + * of this header change the visibility of certain symbols which the rclcpp + * library cannot have, but the consuming code must have inorder to link. + */ + +#ifndef HAPTIC_CONTROLLER__VISIBILITY_CONTROL_H_ +#define HAPTIC_CONTROLLER__VISIBILITY_CONTROL_H_ + +// This logic was borrowed (then namespaced) from the examples on the gcc wiki: +// https://gcc.gnu.org/wiki/Visibility + +#if defined _WIN32 || defined __CYGWIN__ +#ifdef __GNUC__ +#define HAPTIC_CONTROLLER_EXPORT __attribute__((dllexport)) +#define HAPTIC_CONTROLLER_IMPORT __attribute__((dllimport)) +#else +#define HAPTIC_CONTROLLER_EXPORT __declspec(dllexport) +#define HAPTIC_CONTROLLER_IMPORT __declspec(dllimport) +#endif +#ifdef HAPTIC_CONTROLLER_BUILDING_DLL +#define HAPTIC_CONTROLLER_PUBLIC HAPTIC_CONTROLLER_EXPORT +#else +#define HAPTIC_CONTROLLER_PUBLIC HAPTIC_CONTROLLER_IMPORT +#endif +#define HAPTIC_CONTROLLER_PUBLIC_TYPE HAPTIC_CONTROLLER_PUBLIC +#define HAPTIC_CONTROLLER_LOCAL +#else +#define HAPTIC_CONTROLLER_EXPORT __attribute__((visibility("default"))) +#define HAPTIC_CONTROLLER_IMPORT +#if __GNUC__ >= 4 +#define HAPTIC_CONTROLLER_PUBLIC __attribute__((visibility("default"))) +#define HAPTIC_CONTROLLER_LOCAL __attribute__((visibility("hidden"))) +#else +#define HAPTIC_CONTROLLER_PUBLIC +#define HAPTIC_CONTROLLER_LOCAL +#endif +#define HAPTIC_CONTROLLER_PUBLIC_TYPE +#endif + +#endif // HAPTIC_CONTROLLER__VISIBILITY_CONTROL_H_ diff --git a/haptic_controller/package.xml b/haptic_controller/package.xml new file mode 100644 index 0000000..74fba1e --- /dev/null +++ b/haptic_controller/package.xml @@ -0,0 +1,33 @@ + + + + haptic_controller + 0.0.0 + Haptic controller and visualization tools + telecom + Apache-2.0 + + ament_cmake + ament_cmake_python + + pantograph_library + rclcpp + rclcpp_lifecycle + rclpy + + backward_ros + controller_interface + generate_parameter_library + hardware_interface + pluginlib + + ament_lint_auto + ament_lint_common + + forward_command_controller + trajectory_msgs + + + ament_cmake + + diff --git a/haptic_controller/scripts/markers.py b/haptic_controller/scripts/markers.py new file mode 100755 index 0000000..9674e3e --- /dev/null +++ b/haptic_controller/scripts/markers.py @@ -0,0 +1,81 @@ +#!/usr/bin/env python3 +import rclpy +from rclpy.node import Node +from visualization_msgs.msg import Marker +from geometry_msgs.msg import Point +from std_msgs.msg import Float64MultiArray + + +class NeedleTrajectory(Node): + + def __init__(self): + super().__init__('needle_trajectory_marker') + + # Create subscription to topic /target_point + self.subscription = self.create_subscription(Float64MultiArray, '/image_points', + self.listener_callback, 5) + + self.subscription # Prevent unused variable warning + + self.publisher = self.create_publisher(Marker, '/visualization_marker', 5) + + def listener_callback(self, msg): + # Ensure the message contains 3 elements + if len(msg.data) != 6: + self.get_logger().error('Received Float64MultiArray does not contain exactly 6 elements.') # noqa: E501 + return + + # Extract the point coordinates + x1, y1, z1, x2, y2, z2 = msg.data + + # Initialize the marker + marker = Marker() + marker.header.frame_id = 'world' + marker.header.stamp = self.get_clock().now().to_msg() + marker.type = marker.LINE_STRIP + marker.id = 0 + marker.action = marker.ADD + + # Marker parameters + marker.scale.x = 0.005 + marker.color.r = 1.0 + marker.color.g = 0.0 + marker.color.b = 0.0 + marker.color.a = 1.0 + marker.pose.position.x = 0.0 + marker.pose.position.y = 0.0 + marker.pose.position.z = 0.0 + + # Marker line points + marker.points = [] + # Starting point (fulcrum point coords) + start_pt = Point() + start_pt.x = 0.0 + start_pt.y = 0.16056 + start_pt.z = 0.09 + marker.points.append(start_pt) + + # Create the target point + target_point = Point() + target_point.x = x2 + target_point.y = y2 + target_point.z = z2 + marker.points.append(target_point) + + self.publisher.publish(marker) + + +def main(args=None): + rclpy.init(args=args) + trajectory_node = NeedleTrajectory() + + try: + rclpy.spin(trajectory_node) + except KeyboardInterrupt: + pass + trajectory_node.destroy_node() + rclpy.shutdown() + + +if __name__ == '__main__': + main() diff --git a/haptic_controller/src/error_estimation.cpp b/haptic_controller/src/error_estimation.cpp new file mode 100644 index 0000000..ca6841c --- /dev/null +++ b/haptic_controller/src/error_estimation.cpp @@ -0,0 +1,157 @@ +// Copyright 2024, ICube Laboratory, University of Strasbourg +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include +#include +#include + +#include "rclcpp/rclcpp.hpp" +#include "visualization_msgs/msg/marker.hpp" +#include "visualization_msgs/msg/interactive_marker_feedback.hpp" +#include "geometry_msgs/msg/point.hpp" +#include "tf2_geometry_msgs/tf2_geometry_msgs.hpp" +#include "geometry_msgs/msg/pose_stamped.hpp" +#include "std_msgs/msg/float64.hpp" + +#include "tf2_ros/transform_listener.h" +#include "tf2_ros/buffer.h" + + +class ErrorEstimation : public rclcpp::Node +{ +public: + ErrorEstimation() + : Node("error_estimation"), tf_buffer_(this->get_clock()), tf_listener_(tf_buffer_) + { + marker_sub_ = this->create_subscription( + "/visualization_marker", 10, + std::bind(&ErrorEstimation::marker_callback, this, std::placeholders::_1)); + + // Create error publisher + error_publisher_ = this->create_publisher("/angle_error", 10); + + // Timer to trigger error calculation and logging every second (only for testing) + timer_ = + this->create_wall_timer( + std::chrono::milliseconds(2), + std::bind(&ErrorEstimation::calculate_and_log_error, this)); + + RCLCPP_INFO(this->get_logger(), "Error Estimation Node has been started."); + } + +private: + void marker_callback(const visualization_msgs::msg::Marker::SharedPtr msg) + { + if (msg->points.size() != 2) { + RCLCPP_ERROR(this->get_logger(), "Received marker does not have exactly 2 points."); + return; + } + + if (msg->points.size() == 0) { + // If msg is empty default points to origin + p0.x = PI_x; + p0.y = PI_y; + p0.z = PI_z; + + p1.x = 0; + p1.y = 0; + p1.z = 0; + } else { + // Extract the points from the marker + p0 = msg->points[0]; // Insertion point + p1 = msg->points[1]; // Target point from marker + } + } + + void calculate_and_log_error() + { + // calculate and log error + try { + auto transform_stamped = tf_buffer_.lookupTransform( + "world", "needle_interaction_link", + tf2::TimePointZero); + + // Needle insertion point + Eigen::Vector3d PI; + PI << PI_x, PI_y, PI_z; + + // Extract needle interaction point (PU) position + auto PU = transform_stamped.transform.translation; + Eigen::Vector3d PU_vec(PU.x, PU.y, PU.z); + + // Vector from insertion point (PI) to arrow tip + // Vectors are defined in PI frame + Eigen::Vector3d marker_vec(p1.x - p0.x, p1.y - p0.y, p1.z - p0.z); + + // Vector from PI to PU + Eigen::Vector3d needle_vec = PU_vec - PI; + + // Calculate the angle between the arrow vector + // and the vector from the fixed point to the third point + double angle_error = PI_CST - std::acos( + needle_vec.dot(marker_vec) / + (needle_vec.norm() * marker_vec.norm())); + + if (isnan(angle_error)) { + // RCLCPP_INFO( + // this->get_logger(), "Unable to calculate error, target point not defined ! "); + + // RCLCPP_INFO( + // this->get_logger(), "Angle error set to %.2f ", 0.0); + + // Publish angle error default value + auto msg = std_msgs::msg::Float64(); + msg.data = 0.0; + error_publisher_->publish(msg); + } else { + // RCLCPP_INFO( + // this->get_logger(), "Angular error between needle and trajectory: %.2f", angle_error); + + // Publish angle error + auto msg = std_msgs::msg::Float64(); + msg.data = angle_error; + error_publisher_->publish(msg); + } + } catch (tf2::TransformException & ex) { + // RCLCPP_ERROR( + // this->get_logger(), "Could not transform from 'world' to 'needle_interaction_link': %s", + // ex.what()); + } + } + + geometry_msgs::msg::Point p0; + geometry_msgs::msg::Point p1; + + // Coords of insertion point according to CAD + double PI_x = 0; + double PI_y = 0.16056; + double PI_z = 0.09; + + double PI_CST = 3.14159265358979323846; + + rclcpp::Subscription::SharedPtr marker_sub_; + + tf2_ros::Buffer tf_buffer_; + tf2_ros::TransformListener tf_listener_; + rclcpp::TimerBase::SharedPtr timer_; + rclcpp::Publisher::SharedPtr error_publisher_; +}; + +int main(int argc, char ** argv) +{ + rclcpp::init(argc, argv); + rclcpp::spin(std::make_shared()); + rclcpp::shutdown(); + return 0; +} diff --git a/haptic_controller/src/haptic_controller.cpp b/haptic_controller/src/haptic_controller.cpp new file mode 100644 index 0000000..203cace --- /dev/null +++ b/haptic_controller/src/haptic_controller.cpp @@ -0,0 +1,404 @@ +// Copyright 2024, ICube Laboratory, University of Strasbourg +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include "haptic_controller/haptic_controller.hpp" +// #include "pantograph_mimick_controller/src/pantograph_controller_utils.hpp" +#include + +#include "controller_interface/helpers.hpp" +#include "hardware_interface/loaned_command_interface.hpp" +#include "hardware_interface/types/hardware_interface_type_values.hpp" +#include "rclcpp/logging.hpp" +#include "rclcpp/qos.hpp" + +namespace haptic_controller +{ + +const auto kUninitializedValue = std::numeric_limits::quiet_NaN(); +using hardware_interface::HW_IF_POSITION; +using hardware_interface::HW_IF_VELOCITY; +using hardware_interface::HW_IF_EFFORT; + +HapticController::HapticController() +: controller_interface::ControllerInterface(), pantograph_model_() +{ +} + +controller_interface::CallbackReturn HapticController::on_init() +{ + // Implementation of init method + try { + param_listener_ = std::make_shared(get_node()); + } catch (const std::exception & e) { + fprintf(stderr, "Exception thrown during init stage with message: %s \n", e.what()); + return controller_interface::CallbackReturn::ERROR; + } + + return controller_interface::CallbackReturn::SUCCESS; +} + +controller_interface::CallbackReturn HapticController::on_configure( + const rclcpp_lifecycle::State & /*previous_state*/) +{ + // Implementation of on_configure method + auto ret = this->read_parameters(); + if (ret != controller_interface::CallbackReturn::SUCCESS) { + return ret; + } + + pantograph_joint_names_ = { + params_.prefix + "panto_a1", + params_.prefix + "panto_a2", + params_.prefix + "panto_a3", + params_.prefix + "panto_a4", + params_.prefix + "panto_a5", + params_.prefix + "tool_theta_joint", + params_.prefix + "tool_phi_joint", + params_.prefix + "needle_interaction_joint"}; + + // Create subscription to error topic (for testing) + error_subscriber_ = \ + get_node()->create_subscription( + "/angle_error", + rclcpp::SystemDefaultsQoS(), + [this](const std_msgs::msg::Float64::SharedPtr msg) + {rt_command_ptr_.writeFromNonRT(msg);}); + + // Create subscription to marker topic + marker_subscriber_ = \ + get_node()->create_subscription( + "/visualization_marker", 10, + std::bind(&HapticController::marker_callback, this, std::placeholders::_1)); + + // Initialization for motor speed calculation : + last_pos_a1_ = 0.0; + last_pos_a5_ = 0.0; + current_pos_a1_ = 0.0; + current_pos_a5_ = 0.0; + + RCLCPP_INFO(get_node()->get_logger(), "configure successful"); + return controller_interface::CallbackReturn::SUCCESS; +} + +controller_interface::InterfaceConfiguration +HapticController::command_interface_configuration() const +{ + // Implementation of command_interface_configuration method + controller_interface::InterfaceConfiguration command_interfaces_config; + command_interfaces_config.type = controller_interface::interface_configuration_type::INDIVIDUAL; + + command_interfaces_config.names.push_back( + pantograph_joint_names_[0] + "/" + HW_IF_EFFORT); + command_interfaces_config.names.push_back( + pantograph_joint_names_[4] + "/" + HW_IF_EFFORT); + + + return command_interfaces_config; +} + +controller_interface::InterfaceConfiguration HapticController::state_interface_configuration() +const +{ + return controller_interface::InterfaceConfiguration{ + controller_interface::interface_configuration_type::ALL}; +} + +controller_interface::CallbackReturn HapticController::on_activate( + const rclcpp_lifecycle::State & /*previous_state*/) +{ + // Implementation of on_activate method + std::vector> + ordered_interfaces; + if ( + !controller_interface::get_ordered_interfaces( + command_interfaces_, command_interface_types_, std::string(""), ordered_interfaces) || + command_interface_types_.size() != ordered_interfaces.size()) + { + RCLCPP_ERROR( + get_node()->get_logger(), "Expected %zu command interfaces, got %zu", + command_interface_types_.size(), ordered_interfaces.size()); + return controller_interface::CallbackReturn::ERROR; + } + + // reset command buffer if a command came through callback when controller was inactive + rt_command_ptr_ = \ + realtime_tools::RealtimeBuffer>(nullptr); + + RCLCPP_INFO(get_node()->get_logger(), "activate successful"); + return controller_interface::CallbackReturn::SUCCESS; +} + +controller_interface::CallbackReturn HapticController::on_deactivate( + const rclcpp_lifecycle::State & /*previous_state*/) +{ + return controller_interface::CallbackReturn::SUCCESS; +} + +double get_value( + const std::unordered_map> & map, + const std::string & name, const std::string & interface_name) +{ + const auto & interfaces_and_values = map.at(name); + const auto interface_and_value = interfaces_and_values.find(interface_name); + if (interface_and_value != interfaces_and_values.cend()) { + return interface_and_value->second; + } else { + return kUninitializedValue; + } +} + +controller_interface::return_type HapticController::update( + const rclcpp::Time & /*time*/, const rclcpp::Duration & period) +{ + if (param_listener_->is_old(params_)) { + if (read_parameters() != controller_interface::CallbackReturn::SUCCESS) { + RCLCPP_ERROR(get_node()->get_logger(), "Failed to read parameters during update"); + return controller_interface::return_type::ERROR; + } + } + + for (const auto & state_interface : state_interfaces_) { + name_if_value_mapping_[ + state_interface.get_prefix_name()][state_interface.get_interface_name()] = + state_interface.get_value(); + RCLCPP_DEBUG( + get_node()->get_logger(), "%s/%s: %f\n", state_interface.get_prefix_name().c_str(), + state_interface.get_interface_name().c_str(), state_interface.get_value()); + } + + // Get the previous (active) joint torques + double torque_a1 = get_value(name_if_value_mapping_, pantograph_joint_names_[0], HW_IF_EFFORT); + double torque_a5 = get_value(name_if_value_mapping_, pantograph_joint_names_[4], HW_IF_EFFORT); + + // ========================================================== + // Compute motor rotation speeds using numerical derivation + // ========================================================== + // Step size : + double dt = period.seconds(); + + // Get the current joint positions + double current_pos_a1_ = + get_value(name_if_value_mapping_, pantograph_joint_names_[0], HW_IF_POSITION); + double current_pos_a5_ = + get_value(name_if_value_mapping_, pantograph_joint_names_[4], HW_IF_POSITION); + + double current_vel_a1 = (current_pos_a1_ - last_pos_a1_) / dt; + double current_vel_a5 = (current_pos_a5_ - last_pos_a5_) / dt; + + // Save positions for next calculation + if (current_pos_a1_ != last_pos_a1_) { + last_pos_a1_ = current_pos_a1_; + } + if (current_pos_a5_ != last_pos_a5_) { + last_pos_a5_ = current_pos_a5_; + } + + // Check if positions are close to limit + // Pantograph home position : Q = [q1, q2] = [3.4025, -0.1901] + + // Save positions and velocities to state vectors + Eigen::Vector2d q = Eigen::Vector2d(current_pos_a1_, current_pos_a5_); + Eigen::Vector2d q_dot = Eigen::Vector2d(current_vel_a1, current_vel_a5); + + // ========================================================== + // Compute angle error between desired trajectory (int_marker) + // and current needle orientation + // ========================================================== + + // Get angle error from rt buffer + auto angle_error_msg = rt_command_ptr_.readFromRT(); + // no command received yet + if (!angle_error_msg || !(*angle_error_msg)) { + last_error_ = 0.0; + return controller_interface::return_type::OK; + } + + last_error_ = (*angle_error_msg)->data; + // last_error_ = std::abs(last_error_); // Check if needed + + // Print info in terminal (for testing only) + // RCLCPP_INFO(get_node()->get_logger(), "angle error : %2f ", last_error_); + + // ========================================================== + // Compute joint torques according to force control law + // ========================================================== + Eigen::Vector3d v_needle, v_target, v_proj; + + // Pantograph end effector position : + Eigen::Vector2d P3 = pantograph_model_.fk(q); + + // Compute the pantograph jacobian: + Eigen::Matrix2d J_panto = pantograph_model_.jacobian(q); + + // Pantograph end effector velocities + Eigen::Vector2d P3_dot = J_panto * q_dot; + + // System end effector position : + Eigen::Vector3d PU = pantograph_model_.fk_system(q); + + // Pantograph insertion point + Eigen::Vector3d PI; + // PI << pantograph_model_.PI_x, pantograph_model_.PI_y, pantograph_model_.PI_z; + PI[0] = pantograph_model_.PI_x; + PI[1] = pantograph_model_.PI_y; + PI[2] = pantograph_model_.PI_z; + + // Needle vector (PI to PU) : + v_needle = PU - PI; + + // Needle trajectory vector (PI to Ptarget) : + v_target = marker_pos_ - PI; + + // Projection of Needle vector in trajectory path + v_proj = -v_needle.norm() * std::cos(last_error_) * v_target.normalized(); + + // F_u :Force felt by the user + // F_u Force unit vector + Eigen::Vector3d v_u; + v_u = v_proj - v_needle; + + // Desired guiding force is proportional to error + double F_guide = kp * last_error_; + + // F_guide should not exceed 5 N + if (std::abs(F_guide) > 5) { + F_guide = 5; + } + + // F_u : Force felt by the user at PU + Eigen::Vector3d F_u = F_guide * v_u.normalized(); + + // F_mech : Force that the pantograph needs to apply to create F_u + // Compute intersection point between (v_target,v_needle) plane and (x0,y0) plane + Eigen::Vector3d z_0 = Eigen::Vector3d(0, 0, 1); + double dot1 = z_0.dot(v_target.normalized()); + double t_int = 0; + // Check if dot1 is not null + if (dot1 != 0) { + t_int = -z_0.dot(PI) / dot1; + } else { + t_int = 0; + } + + // Coords of the intersection point + Eigen::Vector3d P_int = PI + t_int * v_target.normalized(); + + // Compute F_mech unit direction vector + Eigen::Vector2d v_mech = (P_int.head(2) - P3).normalized(); + + // Compute alpha angle + double alpha = std::atan2(v_mech[1], v_mech[0]); + + // Compute F_mech magnitude + double norm_F_mech = pantograph_model_.get_panto_force(PU, F_u.norm(), alpha); + + // Force at the pantograph end effector : + // kd_tip : Damping coefficient + // double kd = 0.15 * kp; + Eigen::Vector2d F_mech = norm_F_mech * v_mech - kd_tip * P3_dot; + + // Computation of the active joint torques + Eigen::Vector2d tau = J_panto.transpose() * F_mech; + + // ========================================================== + // Write commands to HW + // ========================================================== + // Limit the torque in the joints for security purposes + double limit = 0.25; // in Nm + + if (abs(tau(0)) > limit) { + RCLCPP_INFO( + get_node()->get_logger(), "Torque command tau_0 too high ! "); + + bool sign_tau_0 = std::signbit(tau(0)); + + if (sign_tau_0) { + tau(0) = limit; + } else { + tau(0) = -limit; + } + } + + if (abs(tau(1)) > limit) { + RCLCPP_INFO( + get_node()->get_logger(), "Torque command tau_1 too high ! "); + + bool sign_tau_1 = std::signbit(tau(1)); + + if (sign_tau_1) { + tau(1) = limit; + } else { + tau(1) = -limit; + } + } + + // Info for debug + RCLCPP_INFO( + get_node()->get_logger(), + "Angle error : %f, F_u (in N) : %.2f, F_mech (in N) : %.2f, Tau (in Nm): %.2f, %.2f", + last_error_, F_u.norm(), F_mech.norm(), tau(0), tau(1)); + + command_interfaces_[0].set_value(tau(0)); + command_interfaces_[1].set_value(tau(1)); + return controller_interface::return_type::OK; +} + +controller_interface::CallbackReturn +HapticController::read_parameters() +{ + if (!param_listener_) { + RCLCPP_ERROR(get_node()->get_logger(), "Error encountered during init"); + return controller_interface::CallbackReturn::ERROR; + } + params_ = param_listener_->get_params(); + + // Update pantograph model parameters + pantograph_model_.set_link_lenghts( + params_.model_parameters.l_a1, + params_.model_parameters.l_a2, + params_.model_parameters.l_a3, + params_.model_parameters.l_a4, + params_.model_parameters.l_a5); + + // Update kp gain : + kp = params_.model_parameters.kp; + // Update kd_tip gain : + kd_tip = params_.model_parameters.kd_tip; + // Update ratio for dampening coef: + ratio = params_.model_parameters.ratio; + return controller_interface::CallbackReturn::SUCCESS; +} + +void haptic_controller::HapticController::marker_callback( + const visualization_msgs::msg::Marker::SharedPtr msg) +{ + if (msg->type == visualization_msgs::msg::Marker::LINE_STRIP && !msg->points.empty()) { + auto points = msg->points; + auto target_point = points[1]; + marker_pos_ << target_point.x, target_point.y, target_point.z; + } else { + // If msg is empty default target points to origin + marker_pos_ << 0.0, 0.0, 0.0; + } +} + +} // namespace haptic_controller + +#include "class_loader/register_macro.hpp" + +CLASS_LOADER_REGISTER_CLASS( + haptic_controller::HapticController, + controller_interface::ControllerInterface) + +// PLUGINLIB_EXPORT_CLASS(haptic_controller::HapticController, controller_interface::ControllerInterface) diff --git a/haptic_controller/src/haptic_controller_parameters.yaml b/haptic_controller/src/haptic_controller_parameters.yaml new file mode 100644 index 0000000..98b8243 --- /dev/null +++ b/haptic_controller/src/haptic_controller_parameters.yaml @@ -0,0 +1,71 @@ +haptic_controller: + prefix: { + type: string, + default_value: "", + description: "Model prefix, none by default.", + } + model_parameters: + kp: { + type: double, + default_value: 1.0, + description: "Proportional gain for force computation", + validation: { + gt<>: [0], + } + } + kd_tip: { + type: double, + default_value: 1.0, + description: "Dampening gain for force computation", + validation: { + gt<>: [0], + } + } + ratio: { + type: double, + default_value: 0.7, + description: "ratio for force dampening ceofficient", + validation: { + gt<>: [0], + } + } + l_a1: { + type: double, + default_value: 0.1, + description: "Length of the first link of the pantograph.", + validation: { + gt<>: [0], + } + } + l_a2: { + type: double, + default_value: 0.165, + description: "Length of the second link of the pantograph.", + validation: { + gt<>: [0], + } + } + l_a3: { + type: double, + default_value: 0.165, + description: "Length of the third link of the pantograph.", + validation: { + gt<>: [0], + } + } + l_a4: { + type: double, + default_value: 0.1, + description: "Length of the fourth link of the pantograph.", + validation: { + gt<>: [0], + } + } + l_a5: { + type: double, + default_value: 0.085, + description: "Length of the fifth link of the pantograph.", + validation: { + gt<>: [0], + } + } diff --git a/nitd.repos b/nitd.repos new file mode 100644 index 0000000..aad3cb7 --- /dev/null +++ b/nitd.repos @@ -0,0 +1,10 @@ +repositories: + external/ethercat_driver_ros2: + type: git + url: https://github.com/ICube-Robotics/ethercat_driver_ros2.git + version: main + + external/needle_pantograph_ros2: + type: git + url: https://github.com/ICube-Robotics/needle_pantograph_ros2.git + version: main