tand826 / wsiprocess

Whole Slide Image (WSI) Processing Library for Histopathological / Cytopathological Machine Learning Tasks
Apache License 2.0
23 stars 3 forks source link

Parser for SlideRunner annotations #20

Closed tand826 closed 3 years ago

tand826 commented 4 years ago

Now

tand826 commented 4 years ago

Exmperimental implementation at this commit

tand826 commented 4 years ago

I implemented to read all the database and parse them later because I don't know how fast sqlite3 reads. It might be slower than the implementation to read the database every time wsiprcess needs data. Anyway, now you can use the SQLite file of SlideRunner. HOWEVER, there are some restrictions.

tand826 commented 4 years ago

SlideRunner v1.31.0 might be able to make polygon annotations...?

bnapora commented 4 years ago

One of the main differences between v1.31.0 and v1.99 db structure is in "Annotations_coordinates" table. He added a coordinateZ column.

tand826 commented 4 years ago

@bnapora Brian,

Thanks for the information of db. I added if sentence for polygon annotation, but I could not add the process for circle annotation because the parameters of circle annotations are unclear to me. If you know the parameters, can you teach me? Or, can you implement the feature?

bnapora commented 4 years ago

Below is an excerpt of how the circle annotations are extracted. Very similar to Dot (x & y for center) except has a radius

eg. - DB.annotations[4].x1, DB.annotations[4].y1, DB.annotations[4].r

Below is the calculation the SlideRunner folks use: down_factor = slide.level_downsamples[level] d = 2 * annotation.r / down_factor x_min = (annotation.x1 - annotation.r) / down_factor y_min = (annotation.y1 - annotation.r) / down_factor x_max = x_min + d y_max = y_min + d

I'll take a look at implementing, but want to make sure I don't mess up your well structured code.

Brian

tand826 commented 4 years ago

@bnapora

Thanks for the information of coordinates! I think this can parse circle annotations. Can you test with this implementation?

Takumi

bnapora commented 4 years ago

@tand826

Very cool! Parser is extracting Circle annotations now. However when annotation has larger radius then the dot_bbox value, then it seems to generate unexpected output. I'll have to do some more testing to see if I can suggest a solution to that challenge.

Currently I'm trying to get WSIProcess to work with other OpenSlide formats besides TIF. I think it may be an issue with libvips integration with OpenSlide, but haven't been able to figure it out. (Any tips you might have on that beast would be appreciated. =)

Brian

bnapora commented 4 years ago

Can you provide me an example of what command would be to use CLI for extracting patches from SlideRunner db? I'm currently using

wsiprocess detection ./sample/CMU-1.tif ./sample/CMU1_spot.sqlite -dw 80 -dh 80 -pw 448 -ph 448 -co -ra 10:0:0 -st ./projects/

But get an errof indicating it doesn't know what slidename to look up in db: File "/home/bnapora/development/wsiprocess/wsiprocess/annotationparser/SlideRunner_parser.py", line 70, in read_annotations query += f" where slide=='{self.slidename2uid[slidename]}'" KeyError: './sample/CMU-1.tif'

tand826 commented 4 years ago

@bnapora

dot_bbox value works only if the annotation have only one coordinate like [[100, 200]] while the circle annotations always have more than 2 coordinates like [[100, 200], [150, 250]]. Can you tell me the command you used?

Some slides are tested, and listed here. Which scanner vendor's slides are you using?

That KeyError is a bug! Thanks for the bug report. I fixed it here. It was because wsiprocess have slidename as its absolute path although SlideRunner annotations have slidename as its basename.

bnapora commented 4 years ago

Tested the KeyError fix. Was able to export dot annotations from SlideRunner using CLI. I haven't done much more testing. Still haven't figured out why I can't get SVS format images to work. (The only image I've been able to use with WSIPROCESS is CMU-tif.)

My CLI call: !wsiprocess detection /mnt/c/WSI/9374efe6ac06388cc877.svs /mnt/c/WSI/databases/WSILoader_SpotAnno_Small.sqlite -dw 80 -dh 80 -pw 448 -ph 448 -co -ra 10:0:0 -st ./projects/

Output Traceback (most recent call last): File "/home/bnapora/miniconda3/envs/wsiprocess/bin/wsiprocess", line 11, in load_entry_point('wsiprocess', 'console_scripts', 'wsiprocess')() File "/home/bnapora/development/wsiprocess/wsiprocess/cli.py", line 207, in main annotation = process_annotation(args, slide, rule) File "/home/bnapora/development/wsiprocess/wsiprocess/cli.py", line 194, in process_annotation annotation.make_masks(slide, rule, foreground=True) File "/home/bnapora/development/wsiprocess/wsiprocess/annotation.py", line 156, in makemasks slide, size, method=foreground, min=min, max=max_) File "/home/bnapora/development/wsiprocess/wsiprocess/annotation.py", line 286, in make_foreground_mask buffer=thumb.write_to_memory(), File "/home/bnapora/miniconda3/envs/wsiprocess/lib/python3.6/site-packages/pyvips/vimage.py", line 619, in write_to_memory raise Error('unable to write to memory') pyvips.error.Error: unable to write to memory source input: Compression scheme 33005 tile decoding is not implemented source input: Compression scheme 33005 tile decoding is not implemented

tand826 commented 4 years ago

Can you provide me an example of what command would be to use CLI for extracting patches from SlideRunner db? I'm currently using

I missed this. As you have noticed, set your SlideRunner annotation file in the "annotation" argument.

The only image I've been able to use with WSIPROCESS is CMU-tif.

You might have compiled libvips without OpenSlide support. See the OpenSlide section in the installation notes and type vips --vips-config to see file import with OpenSlide: yes in the output. If you don't find "yes" there, perhaps, you need to install openslide and recompile libvips like

sudo apt install openslide-tools

# download vips tarball

tar xvfz vips-8.10.1.tar.gz
cd vips-8.10.1 && ./configure && make -j && sudo make install
bnapora commented 4 years ago

Takumi,

Thanks for the help. Libvips currently doesn’t see the OpenSlide library installed on the machine. I use openslide-tools in many other projects, so I know it works. But for some reason libvips doesn’t see it when building. I tried building it a couple times. I haven’t been able to find any posts online indicating how to force libvips to find openslide during the make process. Do you know how to force libvips to see openslide?

Brian

From: Takumi Ando notifications@github.com Sent: Monday, November 9, 2020 10:55 PM To: tand826/wsiprocess wsiprocess@noreply.github.com Cc: Brian Napora bnapora@gestaltdiagnostics.com; Mention mention@noreply.github.com Subject: Re: [tand826/wsiprocess] Parser for SlideRunner annotations (#20)

Can you provide me an example of what command would be to use CLI for extracting patches from SlideRunner db? I'm currently using

I missed this. As you have noticed, set your SlideRunner annotation file in the "annotation" argument.

The only image I've been able to use with WSIPROCESS is CMU-tif.

You might have compiled libvips without OpenSlide support. See the OpenSlide section in the installation noteshttps://libvips.github.io/libvips/install.html and type vips --vips-config to see file import with OpenSlide: yes in the output. If you don't find "yes" there, perhaps, you need to install openslide and recompile libvips like

sudo apt install openslide-tools

download vips tarball

tar xvfz vips-8.10.1.tar.gz

cd vips-8.10.1 && ./configure && make -j && sudo make install

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/tand826/wsiprocess/issues/20#issuecomment-724503144, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AH6SIZJOGKCVJROAR5YB6TTSPDPV7ANCNFSM4SUMFQJQ.

tand826 commented 4 years ago

How about this?

pkg-config --list-all | grep openslide
# in the vips directory
./configure --with-openslide
bnapora commented 4 years ago

Takumi,

We really appreciate your assistance on this. If you have any other ideas, we’d love to try them. I’ve tried getting openslide working with vips on two different Ubuntu 18.04 machines. On both machines I can use vips with no Openslide, and Openslide works fine on its own. I’ve posted the output of the recent attempts on one of those machines below.

Openslide is installed: (wsiprocess) bnapora@DESKTOP-MUE6PMA:~/development/wsiprocess/vips-8.10.2$mailto:bnapora@DESKTOP-MUE6PMA:~/development/wsiprocess/vips-8.10.2$ dpkg --list | grep openslide

ii libopenslide0 3.4.1+dfsg-2 amd64 library for reading whole slide image files ii openslide-tools 3.4.1+dfsg-2 amd64 Manipulation and conversion tools for OpenSlide ii python-openslide-examples 1.1.1-2ubuntu4 all Python examples for python-openslide and python3-openslide ii python3-openslide 1.1.1-2ubuntu4 amd64 Python 3 wrapper for reading whole slide image files

I tried reinstalling vips (vips-8.10.2) using the “—with-openslide” directive. When running vips config check, still see openslide integration as no: file import with OpenEXR: no file import with OpenSlide: no

The only resource I’ve been able to find that might address is an issue thread posted on libvips repo from last year: https://github.com/libvips/libvips/issues/1316

However neither of my installations have a folder called “openslide-3.4.1” to even add to the PKG_CONFIG_PATH variable.

(wsiprocess) bnapora@DESKTOP-MUE6PMA:~/development/wsiprocess/vips-8.10.2$mailto:bnapora@DESKTOP-MUE6PMA:~/development/wsiprocess/vips-8.10.2$ dpkg --listfiles openslide-tools /. /usr /usr/bin /usr/bin/openslide-quickhash1sum /usr/bin/openslide-show-properties /usr/bin/openslide-write-png /usr/share /usr/share/doc /usr/share/doc/openslide-tools /usr/share/doc/openslide-tools/copyright /usr/share/man /usr/share/man/man1 /usr/share/man/man1/openslide-quickhash1sum.1.gz /usr/share/man/man1/openslide-show-properties.1.gz /usr/share/man/man1/openslide-write-png.1.gz /usr/share/doc/openslide-tools/changelog.Debian.gz

From: Takumi Ando notifications@github.com Sent: Tuesday, November 10, 2020 1:11 AM To: tand826/wsiprocess wsiprocess@noreply.github.com Cc: Brian Napora bnapora@gestaltdiagnostics.com; Mention mention@noreply.github.com Subject: Re: [tand826/wsiprocess] Parser for SlideRunner annotations (#20)

How about this?

pkg-config --list-all | grep openslide

in the vips directory

./configure --with-openslide

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/tand826/wsiprocess/issues/20#issuecomment-724568555, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AH6SIZONQFAYQRX7ZYAPVF3SPD7QNANCNFSM4SUMFQJQ.

tand826 commented 4 years ago

There are 3 openslide-related packages. libopenslide-dev seems to be the one we need to install to enable openslide support. I'm sorry for the misdirection in the installation section.

I tried like below.

 # file import with OpenSlide:      no
sudo apt remove libopenslide0 libopenslide-dev openslide-tools
sudo apt install openslide-tools && ./configure

# file import with OpenSlide:       no
sudo apt remove libopenslide0 libopenslide-dev openslide-tools
sudo apt install libopenslide0 && ./configure 

# file import with OpenSlide:       yes
sudo apt remove libopenslide0 libopenslide-dev openslide-tools
sudo apt install libopenslide-dev && ./configure  
bnapora commented 4 years ago

Takumi,

Yeah! After following removal steps you suggested, and then reinstalling libvips I was successful in getting libvips to indicate “yes” for Openslide file import. Steps I used are:

sudo apt remove libopenslide0 libopenslide-dev openslide-tools

sudo apt install libopenslide-dev && ./configure

cd vips-8.10.2 && ./configure && make -j && sudo make install

in the vips directory

./configure --with-openslide

Unfortunately when attempting to run WSIPROCESS on an SVS image I now encounter this error:

~/development/wsiprocess/wsiprocess/annotation.py in make_foregroundmask(self, slide, size, method, min, max_) 284 thumb = slide.get_thumbnail(size) 285 thumb = np.ndarray( --> 286 buffer=thumb.write_to_memory(), 287 dtype=np.uint8, 288 shape=[thumb.height, thumb.width, thumb.bands])

~/miniconda3/envs/wsiprocess/lib/python3.6/site-packages/pyvips/vimage.py in write_to_memory(self) 617 pointer = vips_lib.vips_image_write_to_memory(self.pointer, psize) 618 if pointer == ffi.NULL: --> 619 raise Error('unable to write to memory') 620 pointer = ffi.gc(pointer, glib_lib.g_free) 621

Error: unable to write to memory source input: Compression scheme 33005 tile decoding is not implemented source input: Compression scheme 33005 tile decoding is not implemented

It looks like an issue with libvips as well.

If your interested, I’m attaching a copy of a Jupyter notebook I’m using to test WSIPROCESS. In this notebook there is a script to download the specific SVS file I’m testing (2efb541724b5c017c503.svs). I’m also attaching the ASAP annotation file (although I’m sure you can create your own if desired.) You will need to change paths in the notebook to meet your specific set-up.

Brian

From: Takumi Ando notifications@github.com Sent: Tuesday, November 10, 2020 5:14 PM To: tand826/wsiprocess wsiprocess@noreply.github.com Cc: Brian Napora bnapora@gestaltdiagnostics.com; Mention mention@noreply.github.com Subject: Re: [tand826/wsiprocess] Parser for SlideRunner annotations (#20)

There are 3 openslide-related packages. libopenslide-dev seems to be the one we need to install to enable openslide support. I'm sorry for the misdirection in the installation section.

I tried like below.

file import with OpenSlide: no

sudo apt remove libopenslide0 libopenslide-dev openslide-tools

sudo apt install openslide-tools && ./configure

file import with OpenSlide: no

sudo apt remove libopenslide0 libopenslide-dev openslide-tools

sudo apt install libopenslide0 && ./configure

file import with OpenSlide: yes

sudo apt remove libopenslide0 libopenslide-dev openslide-tools

sudo apt install libopenslide-dev && ./configure

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/tand826/wsiprocess/issues/20#issuecomment-725064871, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AH6SIZPJQOCOORU6OQJMQRDSPHQPLANCNFSM4SUMFQJQ.

tand826 commented 4 years ago

The problem with the 33005 compression might be because of SVS images. Can you share with me the output of ./configure? Are libtiff, libjpeg, and libpng available? It can be another misdirection in the installation section. As for me, it is like

checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for gobject-introspection... no
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for needs -lstdc++... yes
checking for native Win32... no
checking for binary open needed... no
checking for Mac OS X... no
checking whether make supports the include directive... yes (GNU style)
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking how to print strings... printf
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-pc-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /bin/dd
checking how to truncate binary pipes... /bin/dd bs=4096 count=1
checking for mt... mt
checking if mt is a manifest tool... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking for gawk... (cached) gawk
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking whether gcc understands -c and -o together... (cached) yes
checking dependency style of gcc... (cached) gcc3
checking for gcc option to accept ISO C99... none needed
checking for gcc option to accept ISO Standard C... (cached) none needed
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking how to run the C++ preprocessor... g++ -E
checking for ld used by g++... /usr/bin/ld -m elf_x86_64
checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC -DPIC
checking if g++ PIC flag -fPIC -DPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking if g++ supports -c -o file.o... (cached) yes
checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... (cached) GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether ln -s works... yes
checking if malloc debugging is wanted... no
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking for LC_MESSAGES... yes
checking for CFPreferencesCopyAppValue... no
checking for CFLocaleCopyCurrent... no
checking libintl.h usability... yes
checking libintl.h presence... yes
checking for libintl.h... yes
checking for ngettext in libc... yes
checking for dgettext in libc... yes
checking for bind_textdomain_codeset... yes
checking for msgfmt... /usr/bin/msgfmt
checking for dcgettext... yes
checking if msgfmt accepts -c... yes
checking for gmsgfmt... /usr/bin/msgfmt
checking for xgettext... /usr/bin/xgettext
checking for catalogs to be installed...  en_GB de
checking for gcc version... 5.4.0
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for ANSI C header files... (cached) yes
checking errno.h usability... yes
checking errno.h presence... yes
checking for errno.h... yes
checking math.h usability... yes
checking math.h presence... yes
checking for math.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking sys/file.h usability... yes
checking sys/file.h presence... yes
checking for sys/file.h... yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking sys/mman.h usability... yes
checking sys/mman.h presence... yes
checking for sys/mman.h... yes
checking for sys/types.h... (cached) yes
checking for sys/stat.h... (cached) yes
checking for unistd.h... (cached) yes
checking io.h usability... no
checking io.h presence... no
checking for io.h... no
checking direct.h usability... no
checking direct.h presence... no
checking for direct.h... no
checking windows.h usability... no
checking windows.h presence... no
checking for windows.h... no
checking for dllwrap... no
checking for dlltool... false
checking for objdump... (cached) objdump
checking for ranlib... (cached) ranlib
checking for strip... (cached) strip
checking for ar... (cached) ar
checking for as... as
checking for ld... /usr/bin/ld -m elf_x86_64
checking for C/C++ restrict keyword... __restrict
checking for __attribute__((vector_size))... yes
checking for an ANSI C-conforming const... yes
checking for mode_t... yes
checking for off_t... yes
checking for size_t... yes
checking for gcc with working vector support... no
checking for working memcmp... yes
checking for stdlib.h... (cached) yes
checking for unistd.h... (cached) yes
checking for sys/param.h... (cached) yes
checking for getpagesize... yes
checking for working mmap... yes
checking for vprintf... yes
checking for _doprnt... no
checking for getcwd... yes
checking for gettimeofday... yes
checking for getwd... yes
checking for memset... yes
checking for munmap... yes
checking for putenv... yes
checking for realpath... yes
checking for strcasecmp... yes
checking for strchr... yes
checking for strcspn... yes
checking for strdup... yes
checking for strerror... yes
checking for strrchr... yes
checking for strspn... yes
checking for vsnprintf... yes
checking for realpath... (cached) yes
checking for mkstemp... yes
checking for mktemp... yes
checking for random... yes
checking for rand... yes
checking for sysconf... yes
checking for atexit... yes
checking for cbrt in -lm... yes
checking for hypot in -lm... yes
checking for atan2 in -lm... yes
checking for REQUIRED... yes
checking for MONOTONIC_TIME... yes
checking for DATE_TIME_FORMAT_ISO8601... no
checking for THREADS... yes
checking for pthread_setattr_default_np... no
checking for TYPE_INIT... no
checking for WIN32_GET_COMMAND_LINE... yes
checking for STR_TO_ASCII... yes
checking for HAVE_CHECKED_MUL... yes
checking for gtk-doc... yes
checking for gtkdoc-check... gtkdoc-check.test
checking for gtkdoc-check... /usr/bin/gtkdoc-check
checking for gtkdoc-rebase... /usr/bin/gtkdoc-rebase
checking for gtkdoc-mkpdf... /usr/bin/gtkdoc-mkpdf
checking whether to build gtk-doc documentation... no
checking for GTKDOC_DEPS... yes
checking for EXPAT... yes
checking for GSF... yes
checking for GSF_ZIP64... yes
checking for FFTW... no
configure: WARNING: fftw not found; disabling fftw support
checking for MAGICK_WAND... no
checking for IMAGE_MAGICK... no
configure: WARNING: neither MagickCore nor ImageMagick found; disabling Magick support
checking for ImportImagePixels... no
checking for ImagesToBlob... no
checking for ORC... no
configure: WARNING: orc-0.4.11 or later not found; disabling orc support
checking for LCMS... no
configure: WARNING: lcms2 not found; disabling ICC profile support
checking for OPENEXR... yes
checking for X... libraries , headers 
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
checking for NIFTI... libraries (none), headers (none)
checking for HEIF... no
configure: WARNING: libheif not found; disabling HEIF support
checking for PDFIUM... libraries (none), headers (none)
checking for POPPLER... no
configure: WARNING: poppler-glib >= 0.16.0 or cairo >= 1.2 not found; disabling PDF load via poppler
checking for RSVG... no
configure: WARNING: librsvg-2.0 >= 2.40.3 or cairo >= 1.2 not found; disabling SVG load via rsvg
checking for ZLIB... yes
checking for OPENSLIDE... yes
checking for MATIO... no
configure: WARNING: matio not found; disabling matio support
checking for CFITSIO... no
configure: WARNING: cfitsio not found; disabling cfitsio support
checking for LIBWEBP... no
configure: WARNING: libwebp, mux, demux not found; disabling WEBP support
checking for PANGOFT2... yes
checking for TIFF... yes
checking whether COMPRESSION_WEBP is declared... no
checking for giflib... libraries (none), headers (none)
configure: WARNING: giflib not found; disabling direct GIF support
checking for SPNG... no
checking for PNG... yes
checking for png_set_chunk_malloc_max... no
checking for IMAGEQUANT... no
configure: WARNING: libimagequant not found; disabling 8bpp PNG support
checking for JPEG... yes
checking for jpeg_c_bool_param_supported... no
checking for EXIF... yes
checking exif-data.h usability... yes
checking exif-data.h presence... yes
checking for exif-data.h... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating vips.pc
config.status: creating vips-cpp.pc
config.status: creating Makefile
config.status: creating ./libvips/include/vips/version.h
config.status: creating libvips/include/Makefile
config.status: creating libvips/include/vips/Makefile
config.status: creating libvips/Makefile
config.status: creating libvips/arithmetic/Makefile
config.status: creating libvips/colour/Makefile
config.status: creating libvips/colour/profiles/Makefile
config.status: creating libvips/conversion/Makefile
config.status: creating libvips/convolution/Makefile
config.status: creating libvips/deprecated/Makefile
config.status: creating libvips/foreign/Makefile
config.status: creating libvips/freqfilt/Makefile
config.status: creating libvips/histogram/Makefile
config.status: creating libvips/draw/Makefile
config.status: creating libvips/iofuncs/Makefile
config.status: creating libvips/morphology/Makefile
config.status: creating libvips/mosaicing/Makefile
config.status: creating libvips/create/Makefile
config.status: creating libvips/resample/Makefile
config.status: creating cplusplus/include/Makefile
config.status: creating cplusplus/include/vips/Makefile
config.status: creating cplusplus/Makefile
config.status: creating tools/Makefile
config.status: creating tools/batch_crop
config.status: creating tools/batch_image_convert
config.status: creating tools/batch_rubber_sheet
config.status: creating tools/light_correct
config.status: creating tools/shrink_width
config.status: creating test/Makefile
config.status: creating test/variables.sh
config.status: creating test/test-suite/Makefile
config.status: creating test/test-suite/helpers/Makefile
config.status: creating man/Makefile
config.status: creating doc/Makefile
config.status: creating doc/libvips-docs.xml
config.status: creating po/Makefile.in
config.status: creating fuzz/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing default-1 commands
* build options
native win32:               no
native OS X:                no
open files in binary mode:      no
enable debug:               no
enable deprecated library components:   yes
enable docs with gtkdoc:        no
gobject introspection:          no
enable radiance support:        yes
enable analyze support:         yes
enable PPM support:             yes

* optional dependencies
use fftw3 for FFT:          no
Magick package:             none
Magick API version:             none
load with libMagick:            no
save with libMagick:            no
accelerate loops with orc:      no
  (requires orc-0.4.11 or later)
ICC profile support with lcms:      no
file import with niftiio:       no
file import with libheif:       no
file import with OpenEXR:       yes
file import with OpenSlide:     yes
  (requires openslide-3.3.0 or later)
file import with matio:         no
PDF import with PDFium:         no
PDF import with poppler-glib:       no
  (requires poppler-glib 0.16.0 or later)
SVG import with librsvg-2.0:        no
  (requires librsvg-2.0 2.34.0 or later)
zlib:                   yes
file import with cfitsio:       no
file import/export with libwebp:    no
  (requires libwebp, libwebpmux, libwebpdemux 0.6.0 or later)
text rendering with pangoft2:       yes
file import/export with libspng:    no
  (requires libspng-0.6 or later)
file import/export with libpng:     yes (pkg-config libpng >= 1.2.9)
  (requires libpng-1.2.9 or later)
support 8bpp PNG quantisation:      no
  (requires libimagequant)
file import/export with libtiff:    yes (pkg-config libtiff-4)
file import/export with giflib:     no
file import/export with libjpeg:    yes (pkg-config)
image pyramid export:           yes
  (requires libgsf-1 1.14.26 or later)
use libexif to load/save JPEG metadata: yes

I'm a bit curious about the notebook, but I think libvips installation should be the reason though...?

tand826 commented 3 years ago

For now, I close this issue because wsiprocess can now parse SlideRunner annotations. If there are any further questions or problems, feel free to reopen this issue.