diff --git a/.travis.yml b/.travis.yml index 30f9295..ddb92df 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,9 +7,6 @@ matrix: - os: linux python: 3.7 dist: bionic - - os: linux - python: 3.8 - dist: bionic before_install: - wget http://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh; - bash miniconda.sh -b -p $HOME/miniconda diff --git a/README.md b/README.md index f229c45..8cde1cc 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,12 @@ +[![Python Version](https://img.shields.io/pypi/pyversions/neuro.svg)](https://python.org) +[![PyPI](https://img.shields.io/pypi/v/neuro.svg)](https://pypi.org/project/neuro) +[![Wheel](https://img.shields.io/pypi/wheel/neuro.svg)](https://pypi.org/project/neuro) +[![Development Status](https://img.shields.io/pypi/status/neuro.svg)](https://github.com/SainsburyWellcomeCentre/neuro) +[![Travis](https://img.shields.io/travis/com/SainsburyWellcomeCentre/neuro?label=Travis%20CI)]( + https://travis-ci.com/SainsburyWellcomeCentre/neuro) +[![Coverage Status](https://coveralls.io/repos/github/SainsburyWellcomeCentre/neuro/badge.svg?branch=master)](https://coveralls.io/github/SainsburyWellcomeCentre/neuro?branch=master) +[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/python/black) + + # neuro Visualisation and analysis of brain imaging data diff --git a/neuro/points/__init__.py b/neuro/points/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/neuro/points/points_to_brainrender.py b/neuro/points/points_to_brainrender.py new file mode 100644 index 0000000..042d7d1 --- /dev/null +++ b/neuro/points/points_to_brainrender.py @@ -0,0 +1,110 @@ +""" +Converts point positions from cellfinder coordinates to brainrender + +N.B. This is currently specific to coronal images, with the origin at the most +caudal, ventral left point. The default is also for 10um voxel spacing. +""" + +import argparse +import imlib.IO.cells as cells_io +from imlib.misc import check_positive_float, check_positive_int + + +def run( + cells_file, + output_filename, + pixel_size_x=10, + pixel_size_y=10, + pixel_size_z=10, + max_z=13200, + key="df", +): + print(f"Converting file: {cells_file}") + cells = cells_io.get_cells(cells_file) + cells = cells_io.cells_to_dataframe(cells) + + cells["x"] = cells["x"] * pixel_size_x + cells["y"] = cells["y"] * pixel_size_y + cells["z"] = cells["z"] * pixel_size_z + + cells.columns = ["z", "y", "x", "type"] + + cells["x"] = max_z - cells["x"] + + print(f"Saving to: {output_filename}") + cells.to_hdf(output_filename, key=key, mode="w") + + print("Finished") + + +def get_parser(): + parser = argparse.ArgumentParser( + formatter_class=argparse.ArgumentDefaultsHelpFormatter + ) + parser.add_argument( + dest="cells_file", + type=str, + help="Cellfinder cells file to be converted", + ) + parser.add_argument( + dest="output_filename", + type=str, + help="Output filename. Should end with '.h5'", + ) + + parser.add_argument( + "-x", + "--x-pixel-size", + dest="x_pixel_size", + type=check_positive_float, + default=10, + help="Pixel_size that the cells are defined in.", + ) + parser.add_argument( + "-y", + "--y-pixel-size", + dest="y_pixel_size", + type=check_positive_float, + default=10, + help="Pixel_size that the cells are defined in.", + ) + parser.add_argument( + "-z", + "--z-pixel-size", + dest="z_pixel_size", + type=check_positive_float, + default=10, + help="Pixel_size that the cells are defined in.", + ) + parser.add_argument( + "--max-z", + dest="max_z", + type=check_positive_int, + default=13200, + help="Maximum z extent of the atlas", + ) + parser.add_argument( + "--hdf-key", + dest="hdf_key", + type=str, + default="df", + help="hdf identifier ", + ) + return parser + + +def main(): + args = get_parser().parse_args() + run( + args.cells_file, + args.output_filename, + pixel_size_x=args.x_pixel_size, + pixel_size_y=args.y_pixel_size, + pixel_size_z=args.z_pixel_size, + max_z=args.max_z, + key=args.hdf_key, + ) + + +if __name__ == "__main__": + main() diff --git a/setup.py b/setup.py index 92778ad..478265e 100644 --- a/setup.py +++ b/setup.py @@ -1,6 +1,6 @@ from setuptools import setup, find_namespace_packages -requirements = ["brainrender", "napari"] +requirements = ["brainrender", "napari", "imlib", "pandas"] setup( @@ -22,7 +22,7 @@ "coverage<=4.5.4", ] }, - python_requires=">=3.6", + python_requires=">=3.6, <3.8", packages=find_namespace_packages(exclude=("docs", "tests*")), include_package_data=True, url="https://github.com/SainsburyWellcomeCentre/neuro", @@ -37,5 +37,11 @@ "Intended Audience :: Developers", "Intended Audience :: Science/Research", ], + entry_points={ + "console_scripts": [ + "points_to_brainrender = " + "neuro.points.points_to_brainrender:main", + ] + }, zip_safe=False, ) diff --git a/tests/data/points/brainrender.h5 b/tests/data/points/brainrender.h5 new file mode 100644 index 0000000..df90eec Binary files /dev/null and b/tests/data/points/brainrender.h5 differ diff --git a/tests/data/points/cellfinder_out.xml b/tests/data/points/cellfinder_out.xml new file mode 100644 index 0000000..33280b7 --- /dev/null +++ b/tests/data/points/cellfinder_out.xml @@ -0,0 +1,3947 @@ + + + + placeholder.tif + + + 1 + + 2 + + 679 + 80 + 660 + + + 679 + 102 + 656 + + + 629 + 108 + 659 + + + 681 + 316 + 629 + + + 678 + 92 + 658 + + + 626 + 95 + 662 + + + 779 + 152 + 639 + + + 615 + 151 + 655 + + + 609 + 156 + 654 + + + 601 + 168 + 653 + + + 701 + 290 + 632 + + + 727 + 321 + 628 + + + 715 + 327 + 628 + + + 655 + 79 + 664 + + + 666 + 87 + 662 + + + 675 + 136 + 654 + + + 600 + 177 + 653 + + + 880 + 322 + 614 + + + 617 + 151 + 656 + + + 599 + 161 + 655 + + + 544 + 224 + 647 + + + 683 + 300 + 633 + + + 682 + 302 + 633 + + + 709 + 302 + 632 + + + 689 + 315 + 632 + + + 678 + 340 + 631 + + + 664 + 118 + 658 + + + 592 + 163 + 656 + + + 874 + 299 + 616 + + + 720 + 297 + 632 + + + 636 + 108 + 663 + + + 681 + 115 + 658 + + + 707 + 300 + 633 + + + 712 + 304 + 632 + + + 696 + 311 + 633 + + + 615 + 116 + 663 + + + 694 + 292 + 635 + + + 710 + 297 + 633 + + + 709 + 300 + 633 + + + 696 + 304 + 633 + + + 700 + 314 + 632 + + + 844 + 264 + 200 + + + 740 + 292 + 632 + + + 686 + 304 + 635 + + + 750 + 332 + 628 + + + 591 + 75 + 672 + + + 494 + 82 + 675 + + + 614 + 104 + 666 + + + 609 + 109 + 666 + + + 597 + 221 + 648 + + + 943 + 238 + 611 + + + 287 + 278 + 649 + + + 685 + 318 + 635 + + + 69 + 388 + 662 + + + 572 + 576 + 618 + + + 618 + 135 + 662 + + + 723 + 307 + 633 + + + 682 + 314 + 635 + + + 730 + 313 + 632 + + + 684 + 323 + 634 + + + 699 + 299 + 636 + + + 718 + 307 + 634 + + + 649 + 337 + 635 + + + 650 + 66 + 671 + + + 649 + 74 + 670 + + + 607 + 160 + 659 + + + 690 + 300 + 637 + + + 715 + 311 + 634 + + + 505 + 93 + 675 + + + 692 + 307 + 637 + + + 628 + 80 + 672 + + + 612 + 95 + 671 + + + 650 + 105 + 666 + + + 539 + 136 + 668 + + + 596 + 162 + 661 + + + 686 + 301 + 638 + + + 704 + 301 + 637 + + + 730 + 340 + 632 + + + 614 + 57 + 677 + + + 599 + 177 + 658 + + + 744 + 299 + 634 + + + 673 + 59 + 672 + + + 632 + 82 + 672 + + + 650 + 85 + 670 + + + 665 + 88 + 668 + + + 610 + 103 + 670 + + + 585 + 152 + 663 + + + 616 + 159 + 660 + + + 691 + 297 + 639 + + + 701 + 301 + 638 + + + 735 + 306 + 635 + + + 509 + 59 + 682 + + + 575 + 581 + 620 + + + 687 + 67 + 671 + + + 658 + 90 + 669 + + + 652 + 109 + 667 + + + 636 + 118 + 667 + + + 614 + 130 + 666 + + + 697 + 298 + 640 + + + 723 + 328 + 635 + + + 605 + 174 + 660 + + + 694 + 292 + 640 + + + 709 + 297 + 639 + + + 682 + 302 + 640 + + + 596 + 102 + 673 + + + 654 + 117 + 666 + + + 651 + 120 + 666 + + + 539 + 167 + 664 + + + 704 + 297 + 639 + + + 686 + 307 + 639 + + + 726 + 317 + 636 + + + 671 + 325 + 639 + + + 687 + 332 + 637 + + + 699 + 338 + 636 + + + 632 + 141 + 664 + + + 616 + 102 + 672 + + + 670 + 108 + 667 + + + 611 + 151 + 665 + + + 599 + 224 + 653 + + + 668 + 326 + 641 + + + 728 + 327 + 637 + + + 659 + 347 + 640 + + + 552 + 373 + 643 + + + 729 + 523 + 620 + + + 656 + 95 + 672 + + + 710 + 296 + 641 + + + 735 + 339 + 635 + + + 662 + 81 + 674 + + + 656 + 90 + 672 + + + 670 + 122 + 666 + + + 611 + 165 + 663 + + + 524 + 165 + 668 + + + 699 + 293 + 642 + + + 663 + 313 + 642 + + + 701 + 314 + 640 + + + 637 + 88 + 674 + + + 610 + 114 + 672 + + + 868 + 285 + 624 + + + 703 + 291 + 643 + + + 707 + 293 + 642 + + + 724 + 296 + 641 + + + 678 + 533 + 622 + + + 691 + 309 + 643 + + + 689 + 313 + 643 + + + 708 + 313 + 641 + + + 625 + 100 + 675 + + + 694 + 294 + 644 + + + 701 + 296 + 643 + + + 670 + 336 + 642 + + + 663 + 338 + 642 + + + 658 + 350 + 641 + + + 498 + 94 + 682 + + + 715 + 296 + 643 + + + 672 + 301 + 644 + + + 721 + 318 + 640 + + + 721 + 335 + 639 + + + 629 + 50 + 683 + + + 621 + 154 + 667 + + + 608 + 159 + 666 + + + 666 + 306 + 645 + + + 710 + 305 + 643 + + + 715 + 335 + 640 + + + 665 + 344 + 642 + + + 613 + 92 + 679 + + + 663 + 91 + 675 + + + 692 + 100 + 671 + + + 587 + 177 + 665 + + + 863 + 283 + 628 + + + 866 + 296 + 627 + + + 711 + 293 + 645 + + + 669 + 330 + 644 + + + 627 + 91 + 679 + + + 497 + 94 + 684 + + + 693 + 296 + 646 + + + 669 + 310 + 646 + + + 665 + 330 + 644 + + + 683 + 337 + 643 + + + 645 + 120 + 672 + + + 616 + 164 + 667 + + + 600 + 180 + 665 + + + 681 + 309 + 645 + + + 684 + 312 + 645 + + + 672 + 318 + 645 + + + 652 + 81 + 679 + + + 100 + 267 + 678 + + + 703 + 292 + 647 + + + 682 + 303 + 647 + + + 720 + 309 + 644 + + + 676 + 350 + 643 + + + 621 + 95 + 679 + + + 651 + 135 + 671 + + + 706 + 290 + 648 + + + 745 + 301 + 643 + + + 682 + 312 + 647 + + + 656 + 80 + 680 + + + 661 + 82 + 680 + + + 503 + 125 + 681 + + + 608 + 144 + 673 + + + 465 + 407 + 651 + + + 527 + 91 + 687 + + + 693 + 302 + 647 + + + 730 + 330 + 642 + + + 613 + 174 + 667 + + + 860 + 279 + 631 + + + 697 + 300 + 649 + + + 526 + 155 + 677 + + + 722 + 315 + 646 + + + 617 + 106 + 681 + + + 691 + 297 + 650 + + + 663 + 320 + 649 + + + 690 + 345 + 646 + + + 652 + 92 + 681 + + + 609 + 107 + 681 + + + 616 + 162 + 671 + + + 607 + 178 + 669 + + + 688 + 302 + 650 + + + 685 + 303 + 650 + + + 709 + 303 + 649 + + + 678 + 310 + 650 + + + 669 + 354 + 647 + + + 643 + 94 + 682 + + + 608 + 160 + 673 + + + 704 + 302 + 650 + + + 555 + 359 + 653 + + + 638 + 82 + 686 + + + 675 + 312 + 651 + + + 693 + 312 + 650 + + + 650 + 75 + 686 + + + 628 + 83 + 686 + + + 619 + 103 + 683 + + + 680 + 300 + 652 + + + 679 + 304 + 652 + + + 608 + 114 + 682 + + + 534 + 179 + 674 + + + 854 + 279 + 635 + + + 705 + 298 + 652 + + + 696 + 313 + 651 + + + 710 + 314 + 650 + + + 743 + 332 + 645 + + + 665 + 336 + 650 + + + 646 + 114 + 680 + + + 686 + 305 + 653 + + + 692 + 315 + 652 + + + 662 + 324 + 652 + + + 506 + 83 + 695 + + + 616 + 120 + 682 + + + 592 + 192 + 670 + + + 704 + 303 + 652 + + + 722 + 317 + 649 + + + 725 + 323 + 649 + + + 681 + 349 + 650 + + + 653 + 99 + 683 + + + 701 + 291 + 654 + + + 677 + 308 + 653 + + + 678 + 310 + 653 + + + 610 + 115 + 684 + + + 586 + 624 + 185 + + + 716 + 309 + 652 + + + 786 + 393 + 641 + + + 649 + 107 + 683 + + + 710 + 313 + 653 + + + 664 + 85 + 687 + + + 656 + 86 + 688 + + + 682 + 308 + 655 + + + 675 + 336 + 653 + + + 640 + 97 + 687 + + + 618 + 162 + 677 + + + 724 + 305 + 652 + + + 704 + 321 + 652 + + + 616 + 94 + 689 + + + 694 + 307 + 655 + + + 665 + 341 + 654 + + + 683 + 306 + 657 + + + 685 + 345 + 654 + + + 496 + 215 + 675 + + + 687 + 310 + 656 + + + 696 + 312 + 656 + + + 728 + 322 + 652 + + + 722 + 330 + 652 + + + 721 + 346 + 651 + + + 700 + 348 + 653 + + + 647 + 60 + 695 + + + 642 + 88 + 690 + + + 628 + 110 + 687 + + + 845 + 257 + 643 + + + 697 + 300 + 657 + + + 698 + 304 + 656 + + + 642 + 57 + 696 + + + 632 + 98 + 689 + + + 684 + 339 + 655 + + + 663 + 341 + 656 + + + 670 + 362 + 654 + + + 637 + 127 + 685 + + + 692 + 298 + 659 + + + 714 + 313 + 656 + + + 686 + 107 + 685 + + + 513 + 509 + 197 + + + 678 + 304 + 659 + + + 700 + 313 + 657 + + + 719 + 317 + 655 + + + 720 + 320 + 655 + + + 716 + 351 + 653 + + + 696 + 302 + 658 + + + 709 + 307 + 657 + + + 687 + 299 + 660 + + + 704 + 300 + 659 + + + 669 + 108 + 688 + + + 638 + 229 + 670 + + + 710 + 310 + 658 + + + 731 + 339 + 654 + + + 694 + 344 + 657 + + + 674 + 358 + 657 + + + 642 + 100 + 692 + + + 609 + 114 + 692 + + + 609 + 140 + 687 + + + 723 + 299 + 658 + + + 698 + 301 + 660 + + + 712 + 317 + 658 + + + 664 + 333 + 659 + + + 639 + 95 + 693 + + + 705 + 317 + 658 + + + 695 + 376 + 655 + + + 361 + 568 + 657 + + + 844 + 286 + 645 + + + 681 + 299 + 662 + + + 682 + 307 + 662 + + + 689 + 307 + 661 + + + 717 + 315 + 658 + + + 655 + 91 + 694 + + + 621 + 121 + 691 + + + 621 + 139 + 687 + + + 685 + 302 + 663 + + + 709 + 305 + 661 + + + 700 + 307 + 661 + + + 694 + 310 + 662 + + + 723 + 384 + 654 + + + 679 + 306 + 663 + + + 666 + 324 + 662 + + + 703 + 329 + 659 + + + 756 + 341 + 653 + + + 737 + 123 + 681 + + + 842 + 288 + 646 + + + 671 + 309 + 663 + + + 705 + 307 + 661 + + + 716 + 318 + 659 + + + 623 + 61 + 703 + + + 625 + 97 + 696 + + + 618 + 106 + 695 + + + 614 + 174 + 682 + + + 667 + 318 + 663 + + + 678 + 333 + 661 + + + 514 + 73 + 708 + + + 632 + 95 + 697 + + + 653 + 109 + 693 + + + 525 + 117 + 700 + + + 512 + 167 + 690 + + + 840 + 263 + 651 + + + 693 + 312 + 663 + + + 691 + 315 + 663 + + + 711 + 316 + 661 + + + 716 + 321 + 661 + + + 729 + 329 + 659 + + + 690 + 338 + 661 + + + 607 + 104 + 698 + + + 612 + 127 + 693 + + + 681 + 310 + 664 + + + 699 + 337 + 661 + + + 664 + 344 + 662 + + + 670 + 98 + 695 + + + 612 + 108 + 697 + + + 618 + 158 + 687 + + + 607 + 184 + 682 + + + 671 + 367 + 661 + + + 588 + 86 + 703 + + + 697 + 306 + 664 + + + 590 + 87 + 704 + + + 639 + 88 + 700 + + + 708 + 315 + 664 + + + 686 + 316 + 665 + + + 671 + 362 + 663 + + + 630 + 93 + 701 + + + 704 + 304 + 665 + + + 708 + 321 + 663 + + + 714 + 321 + 663 + + + 693 + 329 + 664 + + + 638 + 94 + 700 + + + 696 + 301 + 666 + + + 708 + 306 + 665 + + + 689 + 306 + 666 + + + 683 + 316 + 665 + + + 699 + 319 + 664 + + + 643 + 96 + 699 + + + 612 + 116 + 697 + + + 666 + 115 + 694 + + + 838 + 270 + 653 + + + 689 + 309 + 667 + + + 665 + 313 + 667 + + + 657 + 93 + 700 + + + 610 + 149 + 692 + + + 612 + 162 + 689 + + + 616 + 173 + 687 + + + 716 + 322 + 664 + + + 612 + 153 + 692 + + + 588 + 167 + 690 + + + 594 + 184 + 686 + + + 837 + 267 + 654 + + + 693 + 305 + 668 + + + 688 + 312 + 667 + + + 717 + 319 + 664 + + + 685 + 341 + 665 + + + 618 + 104 + 701 + + + 708 + 303 + 667 + + + 705 + 307 + 666 + + + 702 + 320 + 666 + + + 687 + 320 + 667 + + + 673 + 323 + 667 + + + 715 + 327 + 664 + + + 690 + 101 + 696 + + + 620 + 183 + 686 + + + 836 + 293 + 652 + + + 698 + 306 + 668 + + + 683 + 312 + 668 + + + 703 + 313 + 667 + + + 726 + 342 + 663 + + + 719 + 343 + 664 + + + 725 + 362 + 662 + + + 687 + 319 + 669 + + + 724 + 327 + 665 + + + 609 + 116 + 702 + + + 834 + 275 + 655 + + + 716 + 321 + 666 + + + 609 + 122 + 701 + + + 619 + 160 + 692 + + + 676 + 306 + 670 + + + 718 + 311 + 667 + + + 683 + 316 + 669 + + + 714 + 320 + 666 + + + 689 + 339 + 667 + + + 707 + 338 + 666 + + + 635 + 64 + 710 + + + 644 + 106 + 701 + + + 622 + 179 + 688 + + + 713 + 301 + 669 + + + 667 + 309 + 671 + + + 705 + 315 + 668 + + + 716 + 325 + 667 + + + 695 + 330 + 668 + + + 722 + 340 + 665 + + + 666 + 351 + 669 + + + 608 + 113 + 703 + + + 533 + 127 + 705 + + + 512 + 138 + 704 + + + 606 + 191 + 687 + + + 690 + 313 + 671 + + + 668 + 358 + 669 + + + 628 + 95 + 707 + + + 606 + 128 + 701 + + + 614 + 169 + 692 + + + 718 + 308 + 669 + + + 743 + 309 + 666 + + + 705 + 313 + 670 + + + 668 + 367 + 669 + + + 650 + 88 + 706 + + + 621 + 110 + 704 + + + 693 + 303 + 672 + + + 704 + 319 + 670 + + + 599 + 105 + 708 + + + 616 + 161 + 695 + + + 603 + 196 + 688 + + + 714 + 312 + 671 + + + 515 + 109 + 713 + + + 605 + 124 + 704 + + + 608 + 141 + 701 + + + 704 + 315 + 671 + + + 659 + 337 + 672 + + + 660 + 148 + 696 + + + 650 + 151 + 696 + + + 509 + 151 + 704 + + + 704 + 301 + 673 + + + 693 + 308 + 673 + + + 697 + 313 + 672 + + + 681 + 315 + 673 + + + 698 + 319 + 671 + + + 710 + 367 + 668 + + + 670 + 115 + 701 + + + 624 + 130 + 702 + + + 606 + 194 + 690 + + + 690 + 315 + 673 + + + 712 + 320 + 671 + + + 651 + 323 + 675 + + + 708 + 365 + 669 + + + 632 + 104 + 708 + + + 644 + 112 + 705 + + + 459 + 148 + 706 + + + 608 + 177 + 694 + + + 604 + 191 + 691 + + + 544 + 200 + 692 + + + 717 + 316 + 672 + + + 709 + 320 + 672 + + + 651 + 332 + 675 + + + 692 + 332 + 673 + + + 591 + 469 + 665 + + + 673 + 93 + 708 + + + 693 + 308 + 675 + + + 709 + 320 + 672 + + + 651 + 322 + 676 + + + 673 + 93 + 708 + + + 644 + 112 + 706 + + + 624 + 130 + 704 + + + 459 + 149 + 707 + + + 544 + 200 + 693 + + + 705 + 313 + 674 + + + 651 + 332 + 676 + + + 691 + 332 + 674 + + + 708 + 365 + 671 + + + 590 + 469 + 666 + + + 801 + 491 + 654 + + + 590 + 90 + 715 + + + 632 + 105 + 709 + + + 614 + 162 + 699 + + + 604 + 191 + 693 + + + 690 + 315 + 676 + + + 673 + 320 + 677 + + + 683 + 323 + 676 + + + 694 + 331 + 675 + + + 660 + 357 + 675 + + + 667 + 374 + 674 + + + 637 + 96 + 712 + + + 634 + 156 + 700 + + + 621 + 186 + 695 + + + 713 + 347 + 672 + + + 669 + 348 + 675 + + + 633 + 142 + 703 + + + 614 + 160 + 700 + + + 614 + 169 + 698 + + + 707 + 341 + 673 + + + 711 + 356 + 672 + + + 663 + 366 + 675 + + + 681 + 321 + 677 + + + 636 + 87 + 715 + + + 518 + 124 + 715 + + + 645 + 145 + 702 + + + 619 + 177 + 698 + + + 714 + 327 + 675 + + + 660 + 352 + 677 + + + 626 + 177 + 698 + + + 705 + 318 + 676 + + + 716 + 346 + 674 + + + 638 + 574 + 658 + + + 621 + 104 + 714 + + + 640 + 135 + 706 + + + 532 + 194 + 699 + + + 668 + 316 + 680 + + + 618 + 112 + 713 + + + 630 + 171 + 700 + + + 608 + 180 + 699 + + + 692 + 362 + 677 + + + 523 + 71 + 728 + + + 716 + 311 + 677 + + + 683 + 332 + 679 + + + 429 + 424 + 685 + + + 604 + 74 + 722 + + + 619 + 108 + 715 + + + 588 + 189 + 699 + + + 612 + 113 + 714 + + + 652 + 131 + 708 + + + 613 + 163 + 703 + + + 740 + 361 + 674 + + + 657 + 93 + 716 + + + 685 + 320 + 681 + + + 697 + 328 + 680 + + + 681 + 342 + 680 + + + 572 + 512 + 668 + + + 629 + 71 + 723 + + + 610 + 96 + 720 + + + 505 + 104 + 724 + + + 624 + 173 + 703 + + + 679 + 314 + 682 + + + 689 + 328 + 680 + + + 714 + 331 + 678 + + + 669 + 342 + 681 + + + 711 + 346 + 678 + + + 727 + 358 + 676 + + + 666 + 363 + 680 + + + 546 + 392 + 683 + + + 607 + 137 + 711 + + + 817 + 246 + 674 + + + 696 + 327 + 680 + + + 648 + 156 + 705 + + + 616 + 176 + 703 + + + 686 + 322 + 682 + + + 651 + 67 + 724 + + + 635 + 118 + 715 + + + 590 + 127 + 716 + + + 611 + 187 + 702 + + + 822 + 266 + 672 + + + 938 + 279 + 653 + + + 661 + 316 + 685 + + + 661 + 367 + 682 + + + 627 + 170 + 705 + + + 629 + 174 + 705 + + + 589 + 201 + 700 + + + 795 + 433 + 667 + + + 589 + 94 + 724 + + + 631 + 162 + 707 + + + 645 + 164 + 706 + + + 602 + 206 + 699 + + + 669 + 340 + 683 + + + 694 + 341 + 681 + + + 589 + 128 + 717 + + + 652 + 147 + 708 + + + 608 + 199 + 700 + + + 629 + 115 + 718 + + + 634 + 139 + 712 + + + 627 + 176 + 705 + + + 677 + 335 + 685 + + + 711 + 335 + 682 + + + 669 + 113 + 716 + + + 618 + 183 + 705 + + + 592 + 209 + 700 + + + 622 + 143 + 713 + + + 713 + 339 + 683 + + + 699 + 321 + 685 + + + 648 + 342 + 688 + + + 682 + 354 + 685 + + + 696 + 364 + 684 + + + 658 + 92 + 723 + + + 617 + 108 + 723 + + + 635 + 164 + 710 + + + 611 + 191 + 705 + + + 709 + 315 + 685 + + + 682 + 337 + 686 + + + 646 + 72 + 728 + + + 599 + 104 + 725 + + + 638 + 133 + 716 + + + 645 + 150 + 712 + + + 681 + 319 + 687 + + + 696 + 329 + 685 + + + 706 + 633 + 665 + + + 617 + 115 + 722 + + + 586 + 130 + 721 + + + 634 + 160 + 711 + + + 595 + 211 + 702 + + + 691 + 334 + 686 + + + 609 + 142 + 717 + + + 612 + 170 + 711 + + + 713 + 331 + 685 + + + 695 + 338 + 687 + + + 684 + 338 + 688 + + + 670 + 366 + 687 + + + 623 + 430 + 683 + + + 654 + 499 + 675 + + + 670 + 150 + 712 + + + 712 + 360 + 685 + + + 671 + 450 + 681 + + + 614 + 147 + 717 + + + 657 + 322 + 691 + + + 700 + 337 + 686 + + + 726 + 367 + 684 + + + 609 + 126 + 722 + + + 612 + 146 + 717 + + + 645 + 696 + 182 + + + 651 + 320 + 692 + + + 703 + 324 + 688 + + + 644 + 335 + 691 + + + 722 + 367 + 686 + + + 640 + 103 + 727 + + + 611 + 127 + 724 + + + 618 + 198 + 708 + + + 712 + 326 + 687 + + + 691 + 339 + 689 + + + 719 + 364 + 686 + + + 733 + 378 + 684 + + + 713 + 623 + 668 + + + 611 + 119 + 725 + + + 657 + 320 + 693 + + + 647 + 333 + 692 + + + 716 + 345 + 687 + + + 650 + 348 + 691 + + + 716 + 351 + 687 + + + 653 + 403 + 687 + + + 628 + 85 + 731 + + + 521 + 169 + 720 + + + 611 + 199 + 708 + + + 605 + 206 + 706 + + + 675 + 356 + 690 + + + 594 + 534 + 676 + + + 617 + 108 + 728 + + + 590 + 194 + 710 + + + 833 + 302 + 674 + + + 649 + 336 + 694 + + + 652 + 345 + 693 + + + 613 + 113 + 728 + + + 630 + 118 + 726 + + + 613 + 194 + 711 + + + 608 + 209 + 708 + + + 606 + 210 + 708 + + + 657 + 318 + 695 + + + 678 + 350 + 691 + + + 660 + 511 + 677 + + + 593 + 119 + 729 + + + 606 + 123 + 727 + + + 602 + 123 + 727 + + + 659 + 324 + 694 + + + 657 + 413 + 689 + + + 623 + 116 + 727 + + + 612 + 136 + 724 + + + 634 + 156 + 718 + + + 644 + 162 + 716 + + + 627 + 170 + 715 + + + 629 + 89 + 733 + + + 503 + 118 + 735 + + + 518 + 138 + 730 + + + 607 + 183 + 714 + + + 602 + 208 + 709 + + + 596 + 213 + 708 + + + 655 + 329 + 696 + + + 687 + 334 + 693 + + + 637 + 96 + 732 + + + 625 + 103 + 732 + + + 603 + 205 + 711 + + + 446 + 442 + 209 + + + 623 + 470 + 685 + + + 650 + 109 + 729 + + + 509 + 119 + 736 + + + 806 + 255 + 687 + + + 655 + 320 + 697 + + + 665 + 361 + 693 + + + 620 + 158 + 720 + + + 610 + 168 + 718 + + + 620 + 170 + 718 + + + 612 + 187 + 714 + + + 688 + 343 + 693 + + + 650 + 357 + 695 + + + 652 + 359 + 695 + + + 644 + 429 + 690 + + + 592 + 90 + 737 + + + 596 + 99 + 736 + + + 807 + 267 + 686 + + + 629 + 446 + 690 + + + 587 + 92 + 738 + + + 623 + 185 + 716 + + + 703 + 338 + 693 + + + 661 + 343 + 696 + + + 645 + 344 + 697 + + + 718 + 102 + 649 + + + 603 + 121 + 655 + + + 708 + 283 + 627 + + + 717 + 297 + 625 + + + 726 + 315 + 623 + + + 695 + 318 + 625 + + + 730 + 339 + 621 + + + 510 + 53 + 669 + + + 636 + 90 + 658 + + + 583 + 160 + 650 + + + 884 + 281 + 609 + + + 711 + 301 + 626 + + + 704 + 321 + 625 + + + 652 + 75 + 660 + + + 631 + 77 + 661 + + + 753 + 320 + 622 + + + 671 + 76 + 659 + + + 649 + 81 + 660 + + + 613 + 117 + 657 + + + 615 + 160 + 651 + + + 718 + 305 + 626 + + + 713 + 306 + 626 + + + 736 + 335 + 622 + + + 503 + 75 + 668 + + + 600 + 99 + 661 + + + 675 + 113 + 653 + + + 657 + 116 + 654 + + + 597 + 156 + 652 + + + 683 + 301 + 628 + + + 708 + 306 + 627 + + + 528 + 162 + 655 + + + 695 + 298 + 629 + + + 636 + 75 + 663 + + + 653 + 80 + 661 + + + 547 + 226 + 644 + + + 683 + 305 + 630 + + + 696 + 305 + 629 + + + 727 + 318 + 626 + + + 666 + 78 + 661 + + + 673 + 119 + 655 + + + 610 + 160 + 653 + + + 594 + 222 + 644 + + + + diff --git a/tests/tests/test_integration/test_points.py b/tests/tests/test_integration/test_points.py new file mode 100644 index 0000000..3c2b9f2 --- /dev/null +++ b/tests/tests/test_integration/test_points.py @@ -0,0 +1,38 @@ +import sys +from pathlib import Path +import pandas as pd + +from neuro.points.points_to_brainrender import ( + main as points_to_brainrender_run, +) + +points_dir = Path("tests", "data", "points") +cellfinder_out = points_dir / "cellfinder_out.xml" +brainrender_file = points_dir / "brainrender.h5" + + +def test_points_to_brainrender(tmpdir): + tmpdir = Path(tmpdir) + brainrender_file_test = tmpdir / "brainrender_test.h5" + + args = [ + "points_to_brainrender", + str(cellfinder_out), + str(brainrender_file_test), + "-x", + "10", + "-y", + "10", + "-z", + "10", + "--max-z", + "13200", + "--hdf-key", + "df", + ] + sys.argv = args + points_to_brainrender_run() + + pd.read_hdf(brainrender_file_test, key="df") == pd.read_hdf( + brainrender_file, key="df" + ) diff --git a/tests/tests/test_nothing.py b/tests/tests/test_nothing.py deleted file mode 100644 index 69a2822..0000000 --- a/tests/tests/test_nothing.py +++ /dev/null @@ -1,2 +0,0 @@ -def test_nothing(): - assert True