https://launchpad.net/ubuntu/+source/octave-image/2.14.0-5/+build/27031084 RUN: /usr/share/launchpad-buildd/bin/builder-prep Kernel version: Linux bos02-s390x-013 5.4.0-167-generic #184-Ubuntu SMP Tue Oct 31 09:21:34 UTC 2023 s390x Buildd toolchain package versions: launchpad-buildd_235~645~ubuntu20.04.1 python3-lpbuildd_235~645~ubuntu20.04.1 sbuild_0.79.0-1ubuntu1 git-build-recipe_0.3.6 git_1:2.25.1-1ubuntu3.11 dpkg-dev_1.19.7ubuntu3.2 python3-debian_0.1.36ubuntu1.1. Syncing the system clock with the buildd NTP service... 29 Nov 13:37:22 ntpdate[1934]: adjust time server 10.211.37.1 offset -0.000108 sec RUN: /usr/share/launchpad-buildd/bin/in-target unpack-chroot --backend=chroot --series=noble --arch=s390x PACKAGEBUILD-27031084 --image-type chroot /home/buildd/filecache-default/c23f799bb684944311373fdcead5a58221fa6ef7 Creating target for build PACKAGEBUILD-27031084 RUN: /usr/share/launchpad-buildd/bin/in-target mount-chroot --backend=chroot --series=noble --arch=s390x PACKAGEBUILD-27031084 Starting target for build PACKAGEBUILD-27031084 RUN: /usr/share/launchpad-buildd/bin/in-target override-sources-list --backend=chroot --series=noble --arch=s390x PACKAGEBUILD-27031084 'deb http://ftpmaster.internal/ubuntu noble main universe' 'deb http://ftpmaster.internal/ubuntu noble-security main universe' 'deb http://ftpmaster.internal/ubuntu noble-updates main universe' 'deb http://ftpmaster.internal/ubuntu noble-proposed main universe' Overriding sources.list in build-PACKAGEBUILD-27031084 RUN: /usr/share/launchpad-buildd/bin/in-target update-debian-chroot --backend=chroot --series=noble --arch=s390x PACKAGEBUILD-27031084 Updating target for build PACKAGEBUILD-27031084 Get:1 http://ftpmaster.internal/ubuntu noble InRelease [240 kB] Get:2 http://ftpmaster.internal/ubuntu noble-security InRelease [74.9 kB] Get:3 http://ftpmaster.internal/ubuntu noble-updates InRelease [74.9 kB] Get:4 http://ftpmaster.internal/ubuntu noble-proposed InRelease [102 kB] Get:5 http://ftpmaster.internal/ubuntu noble/main s390x Packages [1332 kB] Get:6 http://ftpmaster.internal/ubuntu noble/main Translation-en [517 kB] Get:7 http://ftpmaster.internal/ubuntu noble/universe s390x Packages [14.1 MB] Get:8 http://ftpmaster.internal/ubuntu noble/universe Translation-en [6026 kB] Get:9 http://ftpmaster.internal/ubuntu noble-proposed/main s390x Packages [126 kB] Get:10 http://ftpmaster.internal/ubuntu noble-proposed/main Translation-en [45.1 kB] Get:11 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x Packages [1246 kB] Get:12 http://ftpmaster.internal/ubuntu noble-proposed/universe Translation-en [362 kB] Fetched 24.2 MB in 5s (5058 kB/s) Reading package lists... Reading package lists... Building dependency tree... Reading state information... Calculating upgrade... The following package was automatically installed and is no longer required: libunistring2 Use 'sudo apt autoremove' to remove it. The following NEW packages will be installed: libunistring5 The following packages will be upgraded: apt apt-utils base-files base-passwd bash bash-completion binutils binutils-common binutils-s390x-linux-gnu bsdextrautils bsdutils cpp cpp-13 debianutils diffutils dpkg dpkg-dev fakeroot g++ g++-13 gcc gcc-13 gcc-13-base grep krb5-locales libapparmor1 libapt-pkg6.0 libargon2-1 libasan8 libatomic1 libaudit-common libaudit1 libbinutils libblkid1 libc-bin libc-dev-bin libc6 libc6-dev libcap-ng0 libcc1-0 libcryptsetup12 libctf-nobfd0 libctf0 libdb5.3 libdpkg-perl libfakeroot libfdisk1 libffi8 libgcc-13-dev libgcc-s1 libgdbm-compat4 libgdbm6 libgnutls30 libgomp1 libgpg-error-l10n libgpg-error0 libgssapi-krb5-2 libidn2-0 libitm1 libk5crypto3 libkrb5-3 libkrb5support0 liblzma5 libmount1 libncursesw6 libnsl-dev libnsl2 libpam-modules libpam-modules-bin libpam-runtime libpam0g libperl5.36 libpng16-16 libproc2-0 libreadline8 libseccomp2 libselinux1 libsemanage-common libsemanage2 libsepol2 libsframe1 libsmartcols1 libsqlite3-0 libssl3 libstdc++-13-dev libstdc++6 libsystemd-shared libsystemd0 libtinfo6 libtirpc-common libtirpc-dev libtirpc3 libubsan1 libudev1 libuuid1 libxxhash0 libzstd1 linux-libc-dev lto-disabled-list mawk mount ncurses-base ncurses-bin openssl optipng perl perl-base perl-modules-5.36 pinentry-curses procps readline-common systemd systemd-dev systemd-sysv sysvinit-utils ubuntu-keyring util-linux uuid-runtime xz-utils zlib1g 120 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 91.1 MB of archives. After this operation, 2274 kB of additional disk space will be used. Get:1 http://ftpmaster.internal/ubuntu noble/main s390x libnsl-dev s390x 1.3.0-3 [73.5 kB] Get:2 http://ftpmaster.internal/ubuntu noble/main s390x libc6-dev s390x 2.38-3ubuntu1 [1626 kB] Get:3 http://ftpmaster.internal/ubuntu noble/main s390x libc-dev-bin s390x 2.38-3ubuntu1 [20.0 kB] Get:4 http://ftpmaster.internal/ubuntu noble/main s390x libtirpc-common all 1.3.4+ds-1 [7920 B] Get:5 http://ftpmaster.internal/ubuntu noble/main s390x libtirpc-dev s390x 1.3.4+ds-1 [196 kB] Get:6 http://ftpmaster.internal/ubuntu noble/main s390x libgssapi-krb5-2 s390x 1.20.1-5build1 [146 kB] Get:7 http://ftpmaster.internal/ubuntu noble/main s390x libkrb5-3 s390x 1.20.1-5build1 [354 kB] Get:8 http://ftpmaster.internal/ubuntu noble/main s390x libk5crypto3 s390x 1.20.1-5build1 [89.1 kB] Get:9 http://ftpmaster.internal/ubuntu noble/main s390x libkrb5support0 s390x 1.20.1-5build1 [34.1 kB] Get:10 http://ftpmaster.internal/ubuntu noble/main s390x libssl3 s390x 3.0.10-1ubuntu3 [1625 kB] Get:11 http://ftpmaster.internal/ubuntu noble/main s390x libtirpc3 s390x 1.3.4+ds-1 [84.8 kB] Get:12 http://ftpmaster.internal/ubuntu noble/main s390x libnsl2 s390x 1.3.0-3 [44.4 kB] Get:13 http://ftpmaster.internal/ubuntu noble-proposed/main s390x linux-libc-dev s390x 6.6.0-13.13 [1563 kB] Get:14 http://ftpmaster.internal/ubuntu noble/main s390x libcc1-0 s390x 13.2.0-7ubuntu1 [50.2 kB] Get:15 http://ftpmaster.internal/ubuntu noble/main s390x gcc-13-base s390x 13.2.0-7ubuntu1 [44.6 kB] Get:16 http://ftpmaster.internal/ubuntu noble/main s390x libgcc-s1 s390x 13.2.0-7ubuntu1 [35.7 kB] Get:17 http://ftpmaster.internal/ubuntu noble/main s390x libgomp1 s390x 13.2.0-7ubuntu1 [146 kB] Get:18 http://ftpmaster.internal/ubuntu noble/main s390x libitm1 s390x 13.2.0-7ubuntu1 [31.3 kB] Get:19 http://ftpmaster.internal/ubuntu noble/main s390x libatomic1 s390x 13.2.0-7ubuntu1 [9432 B] Get:20 http://ftpmaster.internal/ubuntu noble/main s390x libasan8 s390x 13.2.0-7ubuntu1 [2854 kB] Get:21 http://ftpmaster.internal/ubuntu noble/main s390x libubsan1 s390x 13.2.0-7ubuntu1 [1112 kB] Get:22 http://ftpmaster.internal/ubuntu noble/main s390x g++-13 s390x 13.2.0-7ubuntu1 [10.2 MB] Get:23 http://ftpmaster.internal/ubuntu noble/main s390x libstdc++-13-dev s390x 13.2.0-7ubuntu1 [2461 kB] Get:24 http://ftpmaster.internal/ubuntu noble/main s390x libgcc-13-dev s390x 13.2.0-7ubuntu1 [1000 kB] Get:25 http://ftpmaster.internal/ubuntu noble/main s390x gcc-13 s390x 13.2.0-7ubuntu1 [17.6 MB] Get:26 http://ftpmaster.internal/ubuntu noble/main s390x cpp-13 s390x 13.2.0-7ubuntu1 [8794 kB] Get:27 http://ftpmaster.internal/ubuntu noble/main s390x libstdc++6 s390x 13.2.0-7ubuntu1 [874 kB] Get:28 http://ftpmaster.internal/ubuntu noble/main s390x libzstd1 s390x 1.5.5+dfsg2-2 [336 kB] Get:29 http://ftpmaster.internal/ubuntu noble-proposed/main s390x zlib1g s390x 1:1.3.dfsg-3ubuntu1 [75.3 kB] Get:30 http://ftpmaster.internal/ubuntu noble-proposed/main s390x libctf0 s390x 2.41-7ubuntu1 [97.8 kB] Get:31 http://ftpmaster.internal/ubuntu noble-proposed/main s390x libctf-nobfd0 s390x 2.41-7ubuntu1 [99.0 kB] Get:32 http://ftpmaster.internal/ubuntu noble-proposed/main s390x libsframe1 s390x 2.41-7ubuntu1 [13.9 kB] Get:33 http://ftpmaster.internal/ubuntu noble-proposed/main s390x libbinutils s390x 2.41-7ubuntu1 [448 kB] Get:34 http://ftpmaster.internal/ubuntu noble-proposed/main s390x binutils-common s390x 2.41-7ubuntu1 [228 kB] Get:35 http://ftpmaster.internal/ubuntu noble-proposed/main s390x binutils s390x 2.41-7ubuntu1 [3044 B] Get:36 http://ftpmaster.internal/ubuntu noble-proposed/main s390x binutils-s390x-linux-gnu s390x 2.41-7ubuntu1 [2267 kB] Get:37 http://ftpmaster.internal/ubuntu noble/main s390x libc6 s390x 2.38-3ubuntu1 [2839 kB] Get:38 http://ftpmaster.internal/ubuntu noble/main s390x base-files s390x 13ubuntu5 [73.6 kB] Get:39 http://ftpmaster.internal/ubuntu noble/main s390x debianutils s390x 5.14 [89.3 kB] Get:40 http://ftpmaster.internal/ubuntu noble-proposed/main s390x bash s390x 5.2.21-2ubuntu1 [855 kB] Get:41 http://ftpmaster.internal/ubuntu noble/main s390x bsdutils s390x 1:2.39.2-6ubuntu1 [95.2 kB] Get:42 http://ftpmaster.internal/ubuntu noble/main s390x diffutils s390x 1:3.10-1 [187 kB] Get:43 http://ftpmaster.internal/ubuntu noble/main s390x liblzma5 s390x 5.4.5-0.1 [133 kB] Get:44 http://ftpmaster.internal/ubuntu noble/main s390x libapparmor1 s390x 4.0.0~alpha2-0ubuntu6 [49.3 kB] Get:45 http://ftpmaster.internal/ubuntu noble/main s390x libaudit-common all 1:3.1.1-1build1 [5510 B] Get:46 http://ftpmaster.internal/ubuntu noble/main s390x libcap-ng0 s390x 0.8.3-1build3 [15.7 kB] Get:47 http://ftpmaster.internal/ubuntu noble/main s390x libaudit1 s390x 1:3.1.1-1build1 [48.2 kB] Get:48 http://ftpmaster.internal/ubuntu noble/main s390x libblkid1 s390x 2.39.2-6ubuntu1 [126 kB] Get:49 http://ftpmaster.internal/ubuntu noble/main s390x libselinux1 s390x 3.5-1build2 [83.5 kB] Get:50 http://ftpmaster.internal/ubuntu noble/main s390x libmount1 s390x 2.39.2-6ubuntu1 [137 kB] Get:51 http://ftpmaster.internal/ubuntu noble/main s390x libpam0g s390x 1.5.2-9.1ubuntu1 [66.0 kB] Get:52 http://ftpmaster.internal/ubuntu noble-proposed/main s390x libseccomp2 s390x 2.5.4-2ubuntu1 [52.2 kB] Get:53 http://ftpmaster.internal/ubuntu noble/main s390x systemd-sysv s390x 253.5-1ubuntu7 [11.5 kB] Get:54 http://ftpmaster.internal/ubuntu noble/main s390x systemd-dev all 253.5-1ubuntu7 [78.5 kB] Get:55 http://ftpmaster.internal/ubuntu noble/main s390x systemd s390x 253.5-1ubuntu7 [3064 kB] Get:56 http://ftpmaster.internal/ubuntu noble/main s390x libsystemd-shared s390x 253.5-1ubuntu7 [1901 kB] Get:57 http://ftpmaster.internal/ubuntu noble/main s390x libargon2-1 s390x 0~20190702+dfsg-4 [53.1 kB] Get:58 http://ftpmaster.internal/ubuntu noble/main s390x libuuid1 s390x 2.39.2-6ubuntu1 [34.4 kB] Get:59 http://ftpmaster.internal/ubuntu noble/main s390x libcryptsetup12 s390x 2:2.6.1-5ubuntu1 [239 kB] Get:60 http://ftpmaster.internal/ubuntu noble/main s390x libfdisk1 s390x 2.39.2-6ubuntu1 [149 kB] Get:61 http://ftpmaster.internal/ubuntu noble/main s390x mount s390x 2.39.2-6ubuntu1 [118 kB] Get:62 http://ftpmaster.internal/ubuntu noble/main s390x libsystemd0 s390x 253.5-1ubuntu7 [413 kB] Get:63 http://ftpmaster.internal/ubuntu noble/main s390x libudev1 s390x 253.5-1ubuntu7 [162 kB] Get:64 http://ftpmaster.internal/ubuntu noble/main s390x libxxhash0 s390x 0.8.2-2 [23.6 kB] Get:65 http://ftpmaster.internal/ubuntu noble-proposed/main s390x libapt-pkg6.0 s390x 2.7.7 [962 kB] Get:66 http://ftpmaster.internal/ubuntu noble/main s390x dpkg s390x 1.22.1ubuntu3 [1389 kB] Get:67 http://ftpmaster.internal/ubuntu noble/main s390x grep s390x 3.11-3 [172 kB] Get:68 http://ftpmaster.internal/ubuntu noble/main s390x ncurses-bin s390x 6.4+20231121-1build1 [196 kB] Get:69 http://ftpmaster.internal/ubuntu noble-proposed/main s390x libperl5.36 s390x 5.36.0-10ubuntu1 [4899 kB] Get:70 http://ftpmaster.internal/ubuntu noble-proposed/main s390x perl s390x 5.36.0-10ubuntu1 [235 kB] Get:71 http://ftpmaster.internal/ubuntu noble-proposed/main s390x perl-base s390x 5.36.0-10ubuntu1 [1881 kB] Get:72 http://ftpmaster.internal/ubuntu noble-proposed/main s390x perl-modules-5.36 all 5.36.0-10ubuntu1 [2984 kB] Get:73 http://ftpmaster.internal/ubuntu noble/main s390x libdb5.3 s390x 5.3.28+dfsg2-4 [752 kB] Get:74 http://ftpmaster.internal/ubuntu noble-proposed/main s390x libgdbm6 s390x 1.23-5 [35.5 kB] Get:75 http://ftpmaster.internal/ubuntu noble-proposed/main s390x libgdbm-compat4 s390x 1.23-5 [6538 B] Get:76 http://ftpmaster.internal/ubuntu noble/main s390x util-linux s390x 2.39.2-6ubuntu1 [1137 kB] Get:77 http://ftpmaster.internal/ubuntu noble/main s390x base-passwd s390x 3.6.2 [51.1 kB] Get:78 http://ftpmaster.internal/ubuntu noble/main s390x libc-bin s390x 2.38-3ubuntu1 [659 kB] Get:79 http://ftpmaster.internal/ubuntu noble/main s390x ncurses-base all 6.4+20231121-1build1 [25.2 kB] Get:80 http://ftpmaster.internal/ubuntu noble/main s390x sysvinit-utils s390x 3.08-3ubuntu1 [34.3 kB] Get:81 http://ftpmaster.internal/ubuntu noble-proposed/main s390x apt s390x 2.7.7 [1377 kB] Get:82 http://ftpmaster.internal/ubuntu noble-proposed/main s390x apt-utils s390x 2.7.7 [213 kB] Get:83 http://ftpmaster.internal/ubuntu noble-proposed/main s390x ubuntu-keyring all 2023.11.28.1 [11.1 kB] Get:84 http://ftpmaster.internal/ubuntu noble/main s390x libunistring5 s390x 1.1-2 [544 kB] Get:85 http://ftpmaster.internal/ubuntu noble/main s390x libidn2-0 s390x 2.3.4-1build1 [65.1 kB] Get:86 http://ftpmaster.internal/ubuntu noble/main s390x libgnutls30 s390x 3.8.1-4ubuntu6 [937 kB] Get:87 http://ftpmaster.internal/ubuntu noble/main s390x libpam-modules-bin s390x 1.5.2-9.1ubuntu1 [51.9 kB] Get:88 http://ftpmaster.internal/ubuntu noble/main s390x libpam-modules s390x 1.5.2-9.1ubuntu1 [291 kB] Get:89 http://ftpmaster.internal/ubuntu noble/main s390x libsmartcols1 s390x 2.39.2-6ubuntu1 [66.3 kB] Get:90 http://ftpmaster.internal/ubuntu noble/main s390x uuid-runtime s390x 2.39.2-6ubuntu1 [33.2 kB] Get:91 http://ftpmaster.internal/ubuntu noble/main s390x libgpg-error-l10n all 1.47-3 [7936 B] Get:92 http://ftpmaster.internal/ubuntu noble/main s390x libgpg-error0 s390x 1.47-3 [73.9 kB] Get:93 http://ftpmaster.internal/ubuntu noble/main s390x libpam-runtime all 1.5.2-9.1ubuntu1 [41.5 kB] Get:94 http://ftpmaster.internal/ubuntu noble/main s390x libsemanage-common all 3.5-1build1 [9982 B] Get:95 http://ftpmaster.internal/ubuntu noble/main s390x libsepol2 s390x 3.5-2 [308 kB] Get:96 http://ftpmaster.internal/ubuntu noble/main s390x libsemanage2 s390x 3.5-1build1 [95.1 kB] Get:97 http://ftpmaster.internal/ubuntu noble/main s390x libncursesw6 s390x 6.4+20231121-1build1 [158 kB] Get:98 http://ftpmaster.internal/ubuntu noble/main s390x libtinfo6 s390x 6.4+20231121-1build1 [115 kB] Get:99 http://ftpmaster.internal/ubuntu noble-proposed/main s390x libffi8 s390x 3.4.4-2 [22.6 kB] Get:100 http://ftpmaster.internal/ubuntu noble/main s390x libproc2-0 s390x 2:4.0.4-2ubuntu1 [58.6 kB] Get:101 http://ftpmaster.internal/ubuntu noble/main s390x mawk s390x 1.3.4.20231102-1 [131 kB] Get:102 http://ftpmaster.internal/ubuntu noble/main s390x procps s390x 2:4.0.4-2ubuntu1 [722 kB] Get:103 http://ftpmaster.internal/ubuntu noble/main s390x krb5-locales all 1.20.1-5build1 [13.7 kB] Get:104 http://ftpmaster.internal/ubuntu noble-proposed/main s390x readline-common all 8.2-3 [56.2 kB] Get:105 http://ftpmaster.internal/ubuntu noble-proposed/main s390x libreadline8 s390x 8.2-3 [167 kB] Get:106 http://ftpmaster.internal/ubuntu noble-proposed/main s390x libsqlite3-0 s390x 3.44.2-1 [727 kB] Get:107 http://ftpmaster.internal/ubuntu noble/main s390x openssl s390x 3.0.10-1ubuntu3 [1189 kB] Get:108 http://ftpmaster.internal/ubuntu noble/main s390x bash-completion all 1:2.11-8 [180 kB] Get:109 http://ftpmaster.internal/ubuntu noble/main s390x bsdextrautils s390x 2.39.2-6ubuntu1 [75.7 kB] Get:110 http://ftpmaster.internal/ubuntu noble/main s390x libpng16-16 s390x 1.6.40-2 [197 kB] Get:111 http://ftpmaster.internal/ubuntu noble/main s390x xz-utils s390x 5.4.5-0.1 [269 kB] Get:112 http://ftpmaster.internal/ubuntu noble-proposed/main s390x g++ s390x 4:13.2.0-2ubuntu1 [1118 B] Get:113 http://ftpmaster.internal/ubuntu noble-proposed/main s390x gcc s390x 4:13.2.0-2ubuntu1 [5172 B] Get:114 http://ftpmaster.internal/ubuntu noble-proposed/main s390x cpp s390x 4:13.2.0-2ubuntu1 [29.0 kB] Get:115 http://ftpmaster.internal/ubuntu noble/main s390x dpkg-dev all 1.22.1ubuntu3 [1148 kB] Get:116 http://ftpmaster.internal/ubuntu noble/main s390x libdpkg-perl all 1.22.1ubuntu3 [286 kB] Get:117 http://ftpmaster.internal/ubuntu noble/main s390x lto-disabled-list all 44 [12.4 kB] Get:118 http://ftpmaster.internal/ubuntu noble/main s390x libfakeroot s390x 1.32.2-1 [31.5 kB] Get:119 http://ftpmaster.internal/ubuntu noble/main s390x fakeroot s390x 1.32.2-1 [67.3 kB] Get:120 http://ftpmaster.internal/ubuntu noble/main s390x optipng s390x 0.7.7-3 [87.0 kB] Get:121 http://ftpmaster.internal/ubuntu noble/main s390x pinentry-curses s390x 1.2.1-3ubuntu1 [37.1 kB] Preconfiguring packages ... Fetched 91.1 MB in 6s (15.4 MB/s) (Reading database ... 13395 files and directories currently installed.) Preparing to unpack .../00-libnsl-dev_1.3.0-3_s390x.deb ... Unpacking libnsl-dev:s390x (1.3.0-3) over (1.3.0-2build2) ... Preparing to unpack .../01-libc6-dev_2.38-3ubuntu1_s390x.deb ... Unpacking libc6-dev:s390x (2.38-3ubuntu1) over (2.38-1ubuntu6) ... Preparing to unpack .../02-libc-dev-bin_2.38-3ubuntu1_s390x.deb ... Unpacking libc-dev-bin (2.38-3ubuntu1) over (2.38-1ubuntu6) ... Preparing to unpack .../03-libtirpc-common_1.3.4+ds-1_all.deb ... Unpacking libtirpc-common (1.3.4+ds-1) over (1.3.3+ds-1) ... Preparing to unpack .../04-libtirpc-dev_1.3.4+ds-1_s390x.deb ... Unpacking libtirpc-dev:s390x (1.3.4+ds-1) over (1.3.3+ds-1) ... Preparing to unpack .../05-libgssapi-krb5-2_1.20.1-5build1_s390x.deb ... Unpacking libgssapi-krb5-2:s390x (1.20.1-5build1) over (1.20.1-3ubuntu1) ... Preparing to unpack .../06-libkrb5-3_1.20.1-5build1_s390x.deb ... Unpacking libkrb5-3:s390x (1.20.1-5build1) over (1.20.1-3ubuntu1) ... Preparing to unpack .../07-libk5crypto3_1.20.1-5build1_s390x.deb ... Unpacking libk5crypto3:s390x (1.20.1-5build1) over (1.20.1-3ubuntu1) ... Preparing to unpack .../08-libkrb5support0_1.20.1-5build1_s390x.deb ... Unpacking libkrb5support0:s390x (1.20.1-5build1) over (1.20.1-3ubuntu1) ... Preparing to unpack .../09-libssl3_3.0.10-1ubuntu3_s390x.deb ... Unpacking libssl3:s390x (3.0.10-1ubuntu3) over (3.0.10-1ubuntu2) ... Preparing to unpack .../10-libtirpc3_1.3.4+ds-1_s390x.deb ... Unpacking libtirpc3:s390x (1.3.4+ds-1) over (1.3.3+ds-1) ... Preparing to unpack .../11-libnsl2_1.3.0-3_s390x.deb ... Unpacking libnsl2:s390x (1.3.0-3) over (1.3.0-2build2) ... Preparing to unpack .../12-linux-libc-dev_6.6.0-13.13_s390x.deb ... Unpacking linux-libc-dev:s390x (6.6.0-13.13) over (6.5.0-9.9) ... Preparing to unpack .../13-libcc1-0_13.2.0-7ubuntu1_s390x.deb ... Unpacking libcc1-0:s390x (13.2.0-7ubuntu1) over (13.2.0-4ubuntu3) ... Preparing to unpack .../14-gcc-13-base_13.2.0-7ubuntu1_s390x.deb ... Unpacking gcc-13-base:s390x (13.2.0-7ubuntu1) over (13.2.0-4ubuntu3) ... Setting up gcc-13-base:s390x (13.2.0-7ubuntu1) ... (Reading database ... 13396 files and directories currently installed.) Preparing to unpack .../libgcc-s1_13.2.0-7ubuntu1_s390x.deb ... Unpacking libgcc-s1:s390x (13.2.0-7ubuntu1) over (13.2.0-4ubuntu3) ... Setting up libgcc-s1:s390x (13.2.0-7ubuntu1) ... (Reading database ... 13396 files and directories currently installed.) Preparing to unpack .../00-libgomp1_13.2.0-7ubuntu1_s390x.deb ... Unpacking libgomp1:s390x (13.2.0-7ubuntu1) over (13.2.0-4ubuntu3) ... Preparing to unpack .../01-libitm1_13.2.0-7ubuntu1_s390x.deb ... Unpacking libitm1:s390x (13.2.0-7ubuntu1) over (13.2.0-4ubuntu3) ... Preparing to unpack .../02-libatomic1_13.2.0-7ubuntu1_s390x.deb ... Unpacking libatomic1:s390x (13.2.0-7ubuntu1) over (13.2.0-4ubuntu3) ... Preparing to unpack .../03-libasan8_13.2.0-7ubuntu1_s390x.deb ... Unpacking libasan8:s390x (13.2.0-7ubuntu1) over (13.2.0-4ubuntu3) ... Preparing to unpack .../04-libubsan1_13.2.0-7ubuntu1_s390x.deb ... Unpacking libubsan1:s390x (13.2.0-7ubuntu1) over (13.2.0-4ubuntu3) ... Preparing to unpack .../05-g++-13_13.2.0-7ubuntu1_s390x.deb ... Unpacking g++-13 (13.2.0-7ubuntu1) over (13.2.0-4ubuntu3) ... Preparing to unpack .../06-libstdc++-13-dev_13.2.0-7ubuntu1_s390x.deb ... Unpacking libstdc++-13-dev:s390x (13.2.0-7ubuntu1) over (13.2.0-4ubuntu3) ... Preparing to unpack .../07-libgcc-13-dev_13.2.0-7ubuntu1_s390x.deb ... Unpacking libgcc-13-dev:s390x (13.2.0-7ubuntu1) over (13.2.0-4ubuntu3) ... Preparing to unpack .../08-gcc-13_13.2.0-7ubuntu1_s390x.deb ... Unpacking gcc-13 (13.2.0-7ubuntu1) over (13.2.0-4ubuntu3) ... Preparing to unpack .../09-cpp-13_13.2.0-7ubuntu1_s390x.deb ... Unpacking cpp-13 (13.2.0-7ubuntu1) over (13.2.0-4ubuntu3) ... Preparing to unpack .../10-libstdc++6_13.2.0-7ubuntu1_s390x.deb ... Unpacking libstdc++6:s390x (13.2.0-7ubuntu1) over (13.2.0-4ubuntu3) ... Setting up libstdc++6:s390x (13.2.0-7ubuntu1) ... (Reading database ... 13396 files and directories currently installed.) Preparing to unpack .../libzstd1_1.5.5+dfsg2-2_s390x.deb ... Unpacking libzstd1:s390x (1.5.5+dfsg2-2) over (1.5.5+dfsg2-1ubuntu2) ... Setting up libzstd1:s390x (1.5.5+dfsg2-2) ... (Reading database ... 13396 files and directories currently installed.) Preparing to unpack .../zlib1g_1%3a1.3.dfsg-3ubuntu1_s390x.deb ... Unpacking zlib1g:s390x (1:1.3.dfsg-3ubuntu1) over (1:1.2.13.dfsg-1ubuntu5) ... Setting up zlib1g:s390x (1:1.3.dfsg-3ubuntu1) ... (Reading database ... 13396 files and directories currently installed.) Preparing to unpack .../0-libctf0_2.41-7ubuntu1_s390x.deb ... Unpacking libctf0:s390x (2.41-7ubuntu1) over (2.41-5ubuntu1) ... Preparing to unpack .../1-libctf-nobfd0_2.41-7ubuntu1_s390x.deb ... Unpacking libctf-nobfd0:s390x (2.41-7ubuntu1) over (2.41-5ubuntu1) ... Preparing to unpack .../2-libsframe1_2.41-7ubuntu1_s390x.deb ... Unpacking libsframe1:s390x (2.41-7ubuntu1) over (2.41-5ubuntu1) ... Preparing to unpack .../3-libbinutils_2.41-7ubuntu1_s390x.deb ... Unpacking libbinutils:s390x (2.41-7ubuntu1) over (2.41-5ubuntu1) ... Preparing to unpack .../4-binutils-common_2.41-7ubuntu1_s390x.deb ... Unpacking binutils-common:s390x (2.41-7ubuntu1) over (2.41-5ubuntu1) ... Preparing to unpack .../5-binutils_2.41-7ubuntu1_s390x.deb ... Unpacking binutils (2.41-7ubuntu1) over (2.41-5ubuntu1) ... Preparing to unpack .../6-binutils-s390x-linux-gnu_2.41-7ubuntu1_s390x.deb ... Unpacking binutils-s390x-linux-gnu (2.41-7ubuntu1) over (2.41-5ubuntu1) ... Preparing to unpack .../7-libc6_2.38-3ubuntu1_s390x.deb ... Unpacking libc6:s390x (2.38-3ubuntu1) over (2.38-1ubuntu6) ... Setting up libc6:s390x (2.38-3ubuntu1) ... (Reading database ... 13396 files and directories currently installed.) Preparing to unpack .../base-files_13ubuntu5_s390x.deb ... Unpacking base-files (13ubuntu5) over (13ubuntu3) ... Setting up base-files (13ubuntu5) ... Installing new version of config file /etc/issue ... Installing new version of config file /etc/issue.net ... Installing new version of config file /etc/lsb-release ... (Reading database ... 13396 files and directories currently installed.) Preparing to unpack .../debianutils_5.14_s390x.deb ... Unpacking debianutils (5.14) over (5.8-1) ... Setting up debianutils (5.14) ... (Reading database ... 13395 files and directories currently installed.) Preparing to unpack .../bash_5.2.21-2ubuntu1_s390x.deb ... Unpacking bash (5.2.21-2ubuntu1) over (5.2.15-2ubuntu1) ... Setting up bash (5.2.21-2ubuntu1) ... update-alternatives: using /usr/share/man/man7/bash-builtins.7.gz to provide /usr/share/man/man7/builtins.7.gz (builtins.7.gz) in auto mode (Reading database ... 13395 files and directories currently installed.) Preparing to unpack .../bsdutils_1%3a2.39.2-6ubuntu1_s390x.deb ... Unpacking bsdutils (1:2.39.2-6ubuntu1) over (1:2.39.1-4ubuntu2) ... Setting up bsdutils (1:2.39.2-6ubuntu1) ... (Reading database ... 13395 files and directories currently installed.) Preparing to unpack .../diffutils_1%3a3.10-1_s390x.deb ... Unpacking diffutils (1:3.10-1) over (1:3.8-4) ... Setting up diffutils (1:3.10-1) ... (Reading database ... 13395 files and directories currently installed.) Preparing to unpack .../liblzma5_5.4.5-0.1_s390x.deb ... Unpacking liblzma5:s390x (5.4.5-0.1) over (5.4.1-0.2) ... Setting up liblzma5:s390x (5.4.5-0.1) ... (Reading database ... 13395 files and directories currently installed.) Preparing to unpack .../libapparmor1_4.0.0~alpha2-0ubuntu6_s390x.deb ... Unpacking libapparmor1:s390x (4.0.0~alpha2-0ubuntu6) over (4.0.0~alpha2-0ubuntu5) ... Preparing to unpack .../libaudit-common_1%3a3.1.1-1build1_all.deb ... Unpacking libaudit-common (1:3.1.1-1build1) over (1:3.1.1-1) ... Setting up libaudit-common (1:3.1.1-1build1) ... (Reading database ... 13395 files and directories currently installed.) Preparing to unpack .../libcap-ng0_0.8.3-1build3_s390x.deb ... Unpacking libcap-ng0:s390x (0.8.3-1build3) over (0.8.3-1build2) ... Setting up libcap-ng0:s390x (0.8.3-1build3) ... (Reading database ... 13395 files and directories currently installed.) Preparing to unpack .../libaudit1_1%3a3.1.1-1build1_s390x.deb ... Unpacking libaudit1:s390x (1:3.1.1-1build1) over (1:3.1.1-1) ... Setting up libaudit1:s390x (1:3.1.1-1build1) ... (Reading database ... 13395 files and directories currently installed.) Preparing to unpack .../libblkid1_2.39.2-6ubuntu1_s390x.deb ... Unpacking libblkid1:s390x (2.39.2-6ubuntu1) over (2.39.1-4ubuntu2) ... Setting up libblkid1:s390x (2.39.2-6ubuntu1) ... (Reading database ... 13395 files and directories currently installed.) Preparing to unpack .../libselinux1_3.5-1build2_s390x.deb ... Unpacking libselinux1:s390x (3.5-1build2) over (3.5-1) ... Setting up libselinux1:s390x (3.5-1build2) ... (Reading database ... 13395 files and directories currently installed.) Preparing to unpack .../libmount1_2.39.2-6ubuntu1_s390x.deb ... Unpacking libmount1:s390x (2.39.2-6ubuntu1) over (2.39.1-4ubuntu2) ... Setting up libmount1:s390x (2.39.2-6ubuntu1) ... (Reading database ... 13395 files and directories currently installed.) Preparing to unpack .../libpam0g_1.5.2-9.1ubuntu1_s390x.deb ... Unpacking libpam0g:s390x (1.5.2-9.1ubuntu1) over (1.5.2-6ubuntu1) ... Setting up libpam0g:s390x (1.5.2-9.1ubuntu1) ... (Reading database ... 13394 files and directories currently installed.) Preparing to unpack .../libseccomp2_2.5.4-2ubuntu1_s390x.deb ... Unpacking libseccomp2:s390x (2.5.4-2ubuntu1) over (2.5.4-1ubuntu3) ... Setting up libseccomp2:s390x (2.5.4-2ubuntu1) ... (Reading database ... 13394 files and directories currently installed.) Preparing to unpack .../systemd-sysv_253.5-1ubuntu7_s390x.deb ... Unpacking systemd-sysv (253.5-1ubuntu7) over (253.5-1ubuntu6) ... Preparing to unpack .../systemd-dev_253.5-1ubuntu7_all.deb ... Unpacking systemd-dev (253.5-1ubuntu7) over (253.5-1ubuntu6) ... Setting up libssl3:s390x (3.0.10-1ubuntu3) ... (Reading database ... 13394 files and directories currently installed.) Preparing to unpack .../systemd_253.5-1ubuntu7_s390x.deb ... Unpacking systemd (253.5-1ubuntu7) over (253.5-1ubuntu6) ... Preparing to unpack .../libsystemd-shared_253.5-1ubuntu7_s390x.deb ... Unpacking libsystemd-shared:s390x (253.5-1ubuntu7) over (253.5-1ubuntu6) ... Preparing to unpack .../libargon2-1_0~20190702+dfsg-4_s390x.deb ... Unpacking libargon2-1:s390x (0~20190702+dfsg-4) over (0~20190702+dfsg-3) ... Preparing to unpack .../libuuid1_2.39.2-6ubuntu1_s390x.deb ... Unpacking libuuid1:s390x (2.39.2-6ubuntu1) over (2.39.1-4ubuntu2) ... Setting up libuuid1:s390x (2.39.2-6ubuntu1) ... (Reading database ... 13394 files and directories currently installed.) Preparing to unpack .../libcryptsetup12_2%3a2.6.1-5ubuntu1_s390x.deb ... Unpacking libcryptsetup12:s390x (2:2.6.1-5ubuntu1) over (2:2.6.1-4ubuntu3) ... Preparing to unpack .../libfdisk1_2.39.2-6ubuntu1_s390x.deb ... Unpacking libfdisk1:s390x (2.39.2-6ubuntu1) over (2.39.1-4ubuntu2) ... Preparing to unpack .../mount_2.39.2-6ubuntu1_s390x.deb ... Unpacking mount (2.39.2-6ubuntu1) over (2.39.1-4ubuntu2) ... Preparing to unpack .../libsystemd0_253.5-1ubuntu7_s390x.deb ... Unpacking libsystemd0:s390x (253.5-1ubuntu7) over (253.5-1ubuntu6) ... Setting up libsystemd0:s390x (253.5-1ubuntu7) ... (Reading database ... 13394 files and directories currently installed.) Preparing to unpack .../libudev1_253.5-1ubuntu7_s390x.deb ... Unpacking libudev1:s390x (253.5-1ubuntu7) over (253.5-1ubuntu6) ... Setting up libudev1:s390x (253.5-1ubuntu7) ... (Reading database ... 13394 files and directories currently installed.) Preparing to unpack .../libxxhash0_0.8.2-2_s390x.deb ... Unpacking libxxhash0:s390x (0.8.2-2) over (0.8.1-1) ... Setting up libxxhash0:s390x (0.8.2-2) ... (Reading database ... 13394 files and directories currently installed.) Preparing to unpack .../libapt-pkg6.0_2.7.7_s390x.deb ... Unpacking libapt-pkg6.0:s390x (2.7.7) over (2.7.3) ... Setting up libapt-pkg6.0:s390x (2.7.7) ... (Reading database ... 13394 files and directories currently installed.) Preparing to unpack .../dpkg_1.22.1ubuntu3_s390x.deb ... Unpacking dpkg (1.22.1ubuntu3) over (1.22.0ubuntu1) ... Setting up dpkg (1.22.1ubuntu3) ... (Reading database ... 13392 files and directories currently installed.) Preparing to unpack .../archives/grep_3.11-3_s390x.deb ... Unpacking grep (3.11-3) over (3.11-2) ... Setting up grep (3.11-3) ... (Reading database ... 13392 files and directories currently installed.) Preparing to unpack .../ncurses-bin_6.4+20231121-1build1_s390x.deb ... Unpacking ncurses-bin (6.4+20231121-1build1) over (6.4+20230625-2) ... Setting up ncurses-bin (6.4+20231121-1build1) ... (Reading database ... 13392 files and directories currently installed.) Preparing to unpack .../libperl5.36_5.36.0-10ubuntu1_s390x.deb ... Unpacking libperl5.36:s390x (5.36.0-10ubuntu1) over (5.36.0-9ubuntu1) ... Preparing to unpack .../perl_5.36.0-10ubuntu1_s390x.deb ... Unpacking perl (5.36.0-10ubuntu1) over (5.36.0-9ubuntu1) ... Preparing to unpack .../perl-base_5.36.0-10ubuntu1_s390x.deb ... Unpacking perl-base (5.36.0-10ubuntu1) over (5.36.0-9ubuntu1) ... Setting up perl-base (5.36.0-10ubuntu1) ... (Reading database ... 13392 files and directories currently installed.) Preparing to unpack .../perl-modules-5.36_5.36.0-10ubuntu1_all.deb ... Unpacking perl-modules-5.36 (5.36.0-10ubuntu1) over (5.36.0-9ubuntu1) ... Preparing to unpack .../libdb5.3_5.3.28+dfsg2-4_s390x.deb ... Unpacking libdb5.3:s390x (5.3.28+dfsg2-4) over (5.3.28+dfsg2-2) ... Setting up libdb5.3:s390x (5.3.28+dfsg2-4) ... (Reading database ... 13392 files and directories currently installed.) Preparing to unpack .../libgdbm6_1.23-5_s390x.deb ... Unpacking libgdbm6:s390x (1.23-5) over (1.23-3) ... Preparing to unpack .../libgdbm-compat4_1.23-5_s390x.deb ... Unpacking libgdbm-compat4:s390x (1.23-5) over (1.23-3) ... Preparing to unpack .../util-linux_2.39.2-6ubuntu1_s390x.deb ... Unpacking util-linux (2.39.2-6ubuntu1) over (2.39.1-4ubuntu2) ... Setting up util-linux (2.39.2-6ubuntu1) ... (Reading database ... 13393 files and directories currently installed.) Preparing to unpack .../base-passwd_3.6.2_s390x.deb ... Unpacking base-passwd (3.6.2) over (3.6.1) ... Setting up base-passwd (3.6.2) ... (Reading database ... 13393 files and directories currently installed.) Preparing to unpack .../libc-bin_2.38-3ubuntu1_s390x.deb ... Unpacking libc-bin (2.38-3ubuntu1) over (2.38-1ubuntu6) ... Setting up libc-bin (2.38-3ubuntu1) ... (Reading database ... 13393 files and directories currently installed.) Preparing to unpack .../ncurses-base_6.4+20231121-1build1_all.deb ... Unpacking ncurses-base (6.4+20231121-1build1) over (6.4+20230625-2) ... Setting up ncurses-base (6.4+20231121-1build1) ... (Reading database ... 13393 files and directories currently installed.) Preparing to unpack .../sysvinit-utils_3.08-3ubuntu1_s390x.deb ... Unpacking sysvinit-utils (3.08-3ubuntu1) over (3.07-1ubuntu1) ... Setting up sysvinit-utils (3.08-3ubuntu1) ... (Reading database ... 13393 files and directories currently installed.) Preparing to unpack .../archives/apt_2.7.7_s390x.deb ... Unpacking apt (2.7.7) over (2.7.3) ... Setting up apt (2.7.7) ... (Reading database ... 13393 files and directories currently installed.) Preparing to unpack .../apt-utils_2.7.7_s390x.deb ... Unpacking apt-utils (2.7.7) over (2.7.3) ... Preparing to unpack .../ubuntu-keyring_2023.11.28.1_all.deb ... Unpacking ubuntu-keyring (2023.11.28.1) over (2021.03.26) ... Setting up ubuntu-keyring (2023.11.28.1) ... Selecting previously unselected package libunistring5:s390x. (Reading database ... 13393 files and directories currently installed.) Preparing to unpack .../libunistring5_1.1-2_s390x.deb ... Unpacking libunistring5:s390x (1.1-2) ... Setting up libunistring5:s390x (1.1-2) ... (Reading database ... 13398 files and directories currently installed.) Preparing to unpack .../libidn2-0_2.3.4-1build1_s390x.deb ... Unpacking libidn2-0:s390x (2.3.4-1build1) over (2.3.4-1) ... Setting up libidn2-0:s390x (2.3.4-1build1) ... (Reading database ... 13398 files and directories currently installed.) Preparing to unpack .../libgnutls30_3.8.1-4ubuntu6_s390x.deb ... Unpacking libgnutls30:s390x (3.8.1-4ubuntu6) over (3.8.1-4ubuntu1) ... Setting up libgnutls30:s390x (3.8.1-4ubuntu6) ... (Reading database ... 13399 files and directories currently installed.) Preparing to unpack .../libpam-modules-bin_1.5.2-9.1ubuntu1_s390x.deb ... Unpacking libpam-modules-bin (1.5.2-9.1ubuntu1) over (1.5.2-6ubuntu1) ... Setting up libpam-modules-bin (1.5.2-9.1ubuntu1) ... (Reading database ... 13398 files and directories currently installed.) Preparing to unpack .../libpam-modules_1.5.2-9.1ubuntu1_s390x.deb ... Unpacking libpam-modules:s390x (1.5.2-9.1ubuntu1) over (1.5.2-6ubuntu1) ... Setting up libpam-modules:s390x (1.5.2-9.1ubuntu1) ... (Reading database ... 13397 files and directories currently installed.) Preparing to unpack .../libsmartcols1_2.39.2-6ubuntu1_s390x.deb ... Unpacking libsmartcols1:s390x (2.39.2-6ubuntu1) over (2.39.1-4ubuntu2) ... Setting up libsmartcols1:s390x (2.39.2-6ubuntu1) ... (Reading database ... 13397 files and directories currently installed.) Preparing to unpack .../uuid-runtime_2.39.2-6ubuntu1_s390x.deb ... Unpacking uuid-runtime (2.39.2-6ubuntu1) over (2.39.1-4ubuntu2) ... Preparing to unpack .../libgpg-error-l10n_1.47-3_all.deb ... Unpacking libgpg-error-l10n (1.47-3) over (1.47-2) ... Preparing to unpack .../libgpg-error0_1.47-3_s390x.deb ... Unpacking libgpg-error0:s390x (1.47-3) over (1.47-2) ... Setting up libgpg-error0:s390x (1.47-3) ... (Reading database ... 13397 files and directories currently installed.) Preparing to unpack .../libpam-runtime_1.5.2-9.1ubuntu1_all.deb ... Unpacking libpam-runtime (1.5.2-9.1ubuntu1) over (1.5.2-6ubuntu1) ... Setting up libpam-runtime (1.5.2-9.1ubuntu1) ... (Reading database ... 13396 files and directories currently installed.) Preparing to unpack .../libsemanage-common_3.5-1build1_all.deb ... Unpacking libsemanage-common (3.5-1build1) over (3.5-1) ... Setting up libsemanage-common (3.5-1build1) ... (Reading database ... 13396 files and directories currently installed.) Preparing to unpack .../libsepol2_3.5-2_s390x.deb ... Unpacking libsepol2:s390x (3.5-2) over (3.5-1) ... Setting up libsepol2:s390x (3.5-2) ... (Reading database ... 13396 files and directories currently installed.) Preparing to unpack .../libsemanage2_3.5-1build1_s390x.deb ... Unpacking libsemanage2:s390x (3.5-1build1) over (3.5-1) ... Setting up libsemanage2:s390x (3.5-1build1) ... (Reading database ... 13396 files and directories currently installed.) Preparing to unpack .../libncursesw6_6.4+20231121-1build1_s390x.deb ... Unpacking libncursesw6:s390x (6.4+20231121-1build1) over (6.4+20230625-2) ... Preparing to unpack .../libtinfo6_6.4+20231121-1build1_s390x.deb ... Unpacking libtinfo6:s390x (6.4+20231121-1build1) over (6.4+20230625-2) ... Setting up libtinfo6:s390x (6.4+20231121-1build1) ... (Reading database ... 13396 files and directories currently installed.) Preparing to unpack .../libffi8_3.4.4-2_s390x.deb ... Unpacking libffi8:s390x (3.4.4-2) over (3.4.4-1) ... Setting up libffi8:s390x (3.4.4-2) ... (Reading database ... 13396 files and directories currently installed.) Preparing to unpack .../00-libproc2-0_2%3a4.0.4-2ubuntu1_s390x.deb ... Unpacking libproc2-0:s390x (2:4.0.4-2ubuntu1) over (2:4.0.3-1ubuntu1) ... Preparing to unpack .../01-mawk_1.3.4.20231102-1_s390x.deb ... Unpacking mawk (1.3.4.20231102-1) over (1.3.4.20230730-1) ... Preparing to unpack .../02-procps_2%3a4.0.4-2ubuntu1_s390x.deb ... Unpacking procps (2:4.0.4-2ubuntu1) over (2:4.0.3-1ubuntu1) ... Preparing to unpack .../03-krb5-locales_1.20.1-5build1_all.deb ... Unpacking krb5-locales (1.20.1-5build1) over (1.20.1-3ubuntu1) ... Preparing to unpack .../04-readline-common_8.2-3_all.deb ... Unpacking readline-common (8.2-3) over (8.2-1.3) ... Preparing to unpack .../05-libreadline8_8.2-3_s390x.deb ... Unpacking libreadline8:s390x (8.2-3) over (8.2-1.3) ... Preparing to unpack .../06-libsqlite3-0_3.44.2-1_s390x.deb ... Unpacking libsqlite3-0:s390x (3.44.2-1) over (3.42.0-1) ... Preparing to unpack .../07-openssl_3.0.10-1ubuntu3_s390x.deb ... Unpacking openssl (3.0.10-1ubuntu3) over (3.0.10-1ubuntu2) ... Preparing to unpack .../08-bash-completion_1%3a2.11-8_all.deb ... Unpacking bash-completion (1:2.11-8) over (1:2.11-7) ... Preparing to unpack .../09-bsdextrautils_2.39.2-6ubuntu1_s390x.deb ... Unpacking bsdextrautils (2.39.2-6ubuntu1) over (2.39.1-4ubuntu2) ... Preparing to unpack .../10-libpng16-16_1.6.40-2_s390x.deb ... Unpacking libpng16-16:s390x (1.6.40-2) over (1.6.40-1) ... Preparing to unpack .../11-xz-utils_5.4.5-0.1_s390x.deb ... Unpacking xz-utils (5.4.5-0.1) over (5.4.1-0.2) ... Preparing to unpack .../12-g++_4%3a13.2.0-2ubuntu1_s390x.deb ... Unpacking g++ (4:13.2.0-2ubuntu1) over (4:13.2.0-1ubuntu1) ... Preparing to unpack .../13-gcc_4%3a13.2.0-2ubuntu1_s390x.deb ... Unpacking gcc (4:13.2.0-2ubuntu1) over (4:13.2.0-1ubuntu1) ... Preparing to unpack .../14-cpp_4%3a13.2.0-2ubuntu1_s390x.deb ... Unpacking cpp (4:13.2.0-2ubuntu1) over (4:13.2.0-1ubuntu1) ... Preparing to unpack .../15-dpkg-dev_1.22.1ubuntu3_all.deb ... Unpacking dpkg-dev (1.22.1ubuntu3) over (1.22.0ubuntu1) ... Preparing to unpack .../16-libdpkg-perl_1.22.1ubuntu3_all.deb ... Unpacking libdpkg-perl (1.22.1ubuntu3) over (1.22.0ubuntu1) ... Preparing to unpack .../17-lto-disabled-list_44_all.deb ... Unpacking lto-disabled-list (44) over (43) ... Preparing to unpack .../18-libfakeroot_1.32.2-1_s390x.deb ... Unpacking libfakeroot:s390x (1.32.2-1) over (1.32.1-1) ... Preparing to unpack .../19-fakeroot_1.32.2-1_s390x.deb ... Unpacking fakeroot (1.32.2-1) over (1.32.1-1) ... Preparing to unpack .../20-optipng_0.7.7-3_s390x.deb ... Unpacking optipng (0.7.7-3) over (0.7.7-2build1) ... Preparing to unpack .../21-pinentry-curses_1.2.1-3ubuntu1_s390x.deb ... Unpacking pinentry-curses (1.2.1-3ubuntu1) over (1.2.1-1ubuntu1) ... Setting up lto-disabled-list (44) ... Setting up libapparmor1:s390x (4.0.0~alpha2-0ubuntu6) ... Setting up apt-utils (2.7.7) ... Setting up bsdextrautils (2.39.2-6ubuntu1) ... Setting up cpp-13 (13.2.0-7ubuntu1) ... Setting up libtirpc-common (1.3.4+ds-1) ... Setting up libargon2-1:s390x (0~20190702+dfsg-4) ... Setting up libsqlite3-0:s390x (3.44.2-1) ... Setting up binutils-common:s390x (2.41-7ubuntu1) ... Setting up linux-libc-dev:s390x (6.6.0-13.13) ... Setting up libctf-nobfd0:s390x (2.41-7ubuntu1) ... Setting up systemd-dev (253.5-1ubuntu7) ... Setting up krb5-locales (1.20.1-5build1) ... Setting up libgomp1:s390x (13.2.0-7ubuntu1) ... Setting up libsframe1:s390x (2.41-7ubuntu1) ... Setting up libfakeroot:s390x (1.32.2-1) ... Setting up libkrb5support0:s390x (1.20.1-5build1) ... Setting up fakeroot (1.32.2-1) ... Setting up perl-modules-5.36 (5.36.0-10ubuntu1) ... Setting up bash-completion (1:2.11-8) ... Setting up xz-utils (5.4.5-0.1) ... Setting up libproc2-0:s390x (2:4.0.4-2ubuntu1) ... Setting up libpng16-16:s390x (1.6.40-2) ... Setting up libatomic1:s390x (13.2.0-7ubuntu1) ... Setting up libsystemd-shared:s390x (253.5-1ubuntu7) ... Setting up libncursesw6:s390x (6.4+20231121-1build1) ... Setting up libk5crypto3:s390x (1.20.1-5build1) ... Setting up libfdisk1:s390x (2.39.2-6ubuntu1) ... Setting up libubsan1:s390x (13.2.0-7ubuntu1) ... Setting up mount (2.39.2-6ubuntu1) ... Setting up uuid-runtime (2.39.2-6ubuntu1) ... Running in chroot, ignoring request. invoke-rc.d: policy-rc.d denied execution of restart. Setting up cpp (4:13.2.0-2ubuntu1) ... Setting up libasan8:s390x (13.2.0-7ubuntu1) ... Setting up procps (2:4.0.4-2ubuntu1) ... Installing new version of config file /etc/sysctl.conf ... Setting up libcryptsetup12:s390x (2:2.6.1-5ubuntu1) ... Setting up mawk (1.3.4.20231102-1) ... Setting up libkrb5-3:s390x (1.20.1-5build1) ... Setting up libbinutils:s390x (2.41-7ubuntu1) ... Setting up libc-dev-bin (2.38-3ubuntu1) ... Setting up openssl (3.0.10-1ubuntu3) ... Setting up libgpg-error-l10n (1.47-3) ... Setting up readline-common (8.2-3) ... Setting up libcc1-0:s390x (13.2.0-7ubuntu1) ... Setting up libitm1:s390x (13.2.0-7ubuntu1) ... Setting up libgdbm6:s390x (1.23-5) ... Setting up libctf0:s390x (2.41-7ubuntu1) ... Setting up pinentry-curses (1.2.1-3ubuntu1) ... Setting up binutils-s390x-linux-gnu (2.41-7ubuntu1) ... Setting up libreadline8:s390x (8.2-3) ... Setting up systemd (253.5-1ubuntu7) ... Initializing machine ID from random generator. Setting up binutils (2.41-7ubuntu1) ... Setting up optipng (0.7.7-3) ... Setting up libgssapi-krb5-2:s390x (1.20.1-5build1) ... Setting up libgdbm-compat4:s390x (1.23-5) ... Setting up libgcc-13-dev:s390x (13.2.0-7ubuntu1) ... Setting up libperl5.36:s390x (5.36.0-10ubuntu1) ... Setting up libtirpc3:s390x (1.3.4+ds-1) ... Setting up systemd-sysv (253.5-1ubuntu7) ... Setting up perl (5.36.0-10ubuntu1) ... Setting up libtirpc-dev:s390x (1.3.4+ds-1) ... Setting up gcc-13 (13.2.0-7ubuntu1) ... Setting up libdpkg-perl (1.22.1ubuntu3) ... Setting up libnsl2:s390x (1.3.0-3) ... Setting up gcc (4:13.2.0-2ubuntu1) ... Setting up dpkg-dev (1.22.1ubuntu3) ... Setting up libnsl-dev:s390x (1.3.0-3) ... Setting up libc6-dev:s390x (2.38-3ubuntu1) ... Setting up libstdc++-13-dev:s390x (13.2.0-7ubuntu1) ... Setting up g++-13 (13.2.0-7ubuntu1) ... Setting up g++ (4:13.2.0-2ubuntu1) ... Processing triggers for libc-bin (2.38-3ubuntu1) ... Processing triggers for debianutils (5.14) ... RUN: /usr/share/launchpad-buildd/bin/sbuild-package PACKAGEBUILD-27031084 s390x noble-proposed -c chroot:build-PACKAGEBUILD-27031084 --arch=s390x --dist=noble-proposed --nolog octave-image_2.14.0-5.dsc Initiating build PACKAGEBUILD-27031084 with 4 jobs across 4 processor cores. Kernel reported to sbuild: 5.4.0-167-generic #184-Ubuntu SMP Tue Oct 31 09:21:34 UTC 2023 s390x sbuild (Debian sbuild) 0.79.0 (05 February 2020) on bos02-s390x-013.buildd +==============================================================================+ | octave-image 2.14.0-5 (s390x) Wed, 29 Nov 2023 13:38:00 +0000 | +==============================================================================+ Package: octave-image Version: 2.14.0-5 Source Version: 2.14.0-5 Distribution: noble-proposed Machine Architecture: s390x Host Architecture: s390x Build Architecture: s390x Build Type: any I: NOTICE: Log filtering will replace 'home/buildd/build-PACKAGEBUILD-27031084/chroot-autobuild' with '<>' I: NOTICE: Log filtering will replace 'build/octave-image-LtM1qz/resolver-26iNCH' with '<>' +------------------------------------------------------------------------------+ | Fetch source files | +------------------------------------------------------------------------------+ Local sources ------------- octave-image_2.14.0-5.dsc exists in .; copying to chroot I: NOTICE: Log filtering will replace 'build/octave-image-LtM1qz/octave-image-2.14.0' with '<>' I: NOTICE: Log filtering will replace 'build/octave-image-LtM1qz' with '<>' +------------------------------------------------------------------------------+ | Install package build dependencies | +------------------------------------------------------------------------------+ Setup apt archive ----------------- Merged Build-Depends: debhelper-compat (= 13), dh-octave (>= 1.2.3), dh-sequence-octave, gnuplot-nox, build-essential, fakeroot Merged Build-Conflicts: octave-nan Filtered Build-Depends: debhelper-compat (= 13), dh-octave (>= 1.2.3), dh-sequence-octave, gnuplot-nox, build-essential, fakeroot Filtered Build-Conflicts: octave-nan dpkg-deb: building package 'sbuild-build-depends-main-dummy' in '/<>/apt_archive/sbuild-build-depends-main-dummy.deb'. Ign:1 copy:/<>/apt_archive ./ InRelease Get:2 copy:/<>/apt_archive ./ Release [957 B] Ign:3 copy:/<>/apt_archive ./ Release.gpg Get:4 copy:/<>/apt_archive ./ Sources [414 B] Get:5 copy:/<>/apt_archive ./ Packages [499 B] Fetched 1870 B in 0s (101 kB/s) Reading package lists... Reading package lists... Install main build dependencies (apt-based resolver) ---------------------------------------------------- Installing build dependencies Reading package lists... Building dependency tree... Reading state information... The following packages were automatically installed and are no longer required: apt-utils bash-completion debconf-i18n krb5-locales libgpg-error-l10n libgpm2 liblocale-gettext-perl libnss-nis libnss-nisplus libtext-charwidth-perl libtext-iconv-perl libtext-wrapi18n-perl libunistring2 psmisc uuid-runtime Use 'apt autoremove' to remove them. The following additional packages will be installed: aglfn autoconf automake autopoint autotools-dev cme debhelper debugedit dh-autoreconf dh-octave dh-octave-autopkgtest dh-strip-nondeterminism diffstat dwz file fontconfig fontconfig-config fonts-freefont-otf fonts-noto-core fonts-noto-mono gettext gettext-base gfortran gfortran-13 gnuplot-data gnuplot-nox groff-base hdf5-helpers ibverbs-providers intltool-debian iso-codes libaec-dev libaec0 libalgorithm-c3-perl libaliased-perl libamd3 libapp-cmd-perl libapt-pkg-perl libarchive-zip-perl libarpack2 libarray-intspan-perl libasound2 libasound2-data libavahi-client3 libavahi-common-data libavahi-common3 libb-hooks-endofscope-perl libb-hooks-op-check-perl libberkeleydb-perl libblas-dev libblas3 libboolean-perl libbrotli1 libbsd0 libbtf2 libcairo2 libcamd3 libcapture-tiny-perl libcarp-assert-more-perl libcbor0.10 libccolamd3 libcgi-pm-perl libcholmod5 libclass-c3-perl libclass-data-inheritable-perl libclass-load-perl libclass-method-modifiers-perl libclass-xsaccessor-perl libclone-choose-perl libclone-perl libcolamd3 libcombblas2.0.0 libconfig-model-backend-yaml-perl libconfig-model-dpkg-perl libconfig-model-perl libconfig-tiny-perl libconst-fast-perl libconvert-binhex-perl libcpanel-json-xs-perl libcups2 libcurl3-gnutls libcurl4 libcurl4-openssl-dev libcxsparse4 libdata-dpath-perl libdata-messagepack-perl libdata-optlist-perl libdata-section-perl libdata-validate-domain-perl libdata-validate-ip-perl libdata-validate-uri-perl libdatrie1 libdav1d7 libdbus-1-3 libde265-0 libdebhelper-perl libdeflate0 libdevel-callchecker-perl libdevel-size-perl libdevel-stacktrace-perl libdouble-conversion3 libdrm-amdgpu1 libdrm-common libdrm-nouveau2 libdrm-radeon1 libdrm2 libdw1 libdynaloader-functions-perl libedit2 libegl-mesa0 libegl1 libelf1 libemail-address-xs-perl libencode-locale-perl liberror-perl libevdev2 libevent-core-2.1-7 libevent-pthreads-2.1-7 libexception-class-perl libexpat1 libexporter-lite-perl libexporter-tiny-perl libfabric1 libfftw3-bin libfftw3-dev libfftw3-double3 libfftw3-long3 libfftw3-mpi3 libfftw3-single3 libfido2-1 libfile-basedir-perl libfile-find-rule-perl libfile-homedir-perl libfile-listing-perl libfile-stripnondeterminism-perl libfile-which-perl libflac12 libfltk-gl1.3 libfltk1.3 libfont-ttf-perl libfontconfig1 libfreetype6 libfribidi0 libgbm1 libgd3 libgetopt-long-descriptive-perl libgfortran-13-dev libgfortran5 libgl-dev libgl1 libgl1-mesa-dri libgl2ps1.4 libglapi-mesa libglib2.0-0 libglpk40 libglu1-mesa libglvnd0 libglx-dev libglx-mesa0 libglx0 libgraphicsmagick++-q16-12 libgraphicsmagick-q16-3 libgraphite2-3 libgudev-1.0-0 libharfbuzz0b libhash-merge-perl libhdf5-103-1 libhdf5-cpp-103-1 libhdf5-dev libhdf5-fortran-102 libhdf5-hl-100 libhdf5-hl-cpp-100 libhdf5-hl-fortran-100 libhdf5-openmpi-103-1 libheif-plugin-dav1d libheif-plugin-libde265 libheif1 libhtml-form-perl libhtml-html5-entities-perl libhtml-parser-perl libhtml-tagset-perl libhtml-tokeparser-simple-perl libhtml-tree-perl libhttp-cookies-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl libhwloc-plugins libhwloc15 libhwy1 libhypre-2.28.0 libibverbs1 libice6 libicu72 libimport-into-perl libindirect-perl libinput-bin libinput10 libio-html-perl libio-interactive-perl libio-socket-ssl-perl libio-string-perl libio-stringy-perl libio-tiecombine-perl libipc-run3-perl libipc-system-simple-perl libiterator-perl libiterator-util-perl libjack-jackd2-0 libjbig0 libjpeg-dev libjpeg-turbo8 libjpeg-turbo8-dev libjpeg8 libjpeg8-dev libjson-maybexs-perl libjson-perl libjxl0.7 libklu2 liblapack-dev liblapack3 liblcms2-2 libldap2 liblist-compare-perl liblist-moreutils-perl liblist-moreutils-xs-perl liblist-someutils-perl liblist-utilsby-perl libllvm15 liblog-any-adapter-screen-perl liblog-any-perl liblog-log4perl-perl libltdl7 liblua5.4-0 liblwp-mediatypes-perl liblwp-protocol-https-perl liblzo2-2 libmagic-mgc libmagic1 libmailtools-perl libmarkdown2 libmd4c0 libmetis5 libmime-tools-perl libmldbm-perl libmodule-implementation-perl libmodule-pluggable-perl libmodule-runtime-perl libmoo-perl libmoox-aliases-perl libmouse-perl libmousex-nativetraits-perl libmousex-strictconstructor-perl libmp3lame0 libmpg123-0 libmro-compat-perl libmtdev1 libmumps-5.6 libmunge2 libnamespace-clean-perl libncurses-dev libncurses6 libnet-domain-tld-perl libnet-http-perl libnet-ipv6addr-perl libnet-netmask-perl libnet-smtp-ssl-perl libnet-ssleay-perl libnetaddr-ip-perl libnghttp2-14 libnl-3-200 libnl-route-3-200 libnumber-compare-perl libobject-pad-perl libogg0 libopengl0 libopenmpi3 libopus0 libpackage-stash-perl libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0 libparams-classify-perl libparams-util-perl libparams-validate-perl libparse-debcontrol-perl libparse-recdescent-perl libpath-iterator-rule-perl libpath-tiny-perl libpciaccess0 libpcre2-16-0 libperlio-gzip-perl libperlio-utf8-strict-perl libpetsc-real3.18 libpipeline1 libpixman-1-0 libpmix2 libpod-constants-perl libpod-parser-perl libpod-pom-perl libportaudio2 libproc-processtable-perl libpsl5 libpthread-stubs0-dev libptscotch-7.0 libqhull-r8.0 libqrupdate1 libqscintilla2-qt5-15 libqscintilla2-qt5-l10n libqt5core5a libqt5dbus5 libqt5gui5 libqt5help5 libqt5network5 libqt5printsupport5 libqt5sql5 libqt5widgets5 libqt5xml5 librdmacm1 libreadline-dev libregexp-common-perl libregexp-pattern-license-perl libregexp-pattern-perl libregexp-wildcards-perl librole-tiny-perl librtmp1 libsamplerate0 libsasl2-2 libsasl2-modules-db libscalapack-openmpi2.2 libscotch-7.0 libsensors-config libsensors5 libsereal-decoder-perl libsereal-encoder-perl libset-intspan-perl libsharpyuv0 libsm6 libsndfile1 libsoftware-copyright-perl libsoftware-license-perl libsoftware-licensemoreutils-perl libsort-versions-perl libspqr4 libssh-4 libssl-dev libstrictures-perl libstring-copyright-perl libstring-escape-perl libstring-license-perl libstring-rewriteprefix-perl libsub-exporter-perl libsub-exporter-progressive-perl libsub-identify-perl libsub-install-perl libsub-name-perl libsub-override-perl libsub-quote-perl libsub-uplevel-perl libsuitesparseconfig7 libsundials-ida6 libsundials-nvecparallel-petsc6 libsundials-sunlinsol3 libsundials-sunmatrix4 libsuperlu-dist8 libsuperlu6 libsyntax-keyword-try-perl libsz2 libterm-readkey-perl libtest-exception-perl libtext-autoformat-perl libtext-glob-perl libtext-levenshtein-damerau-perl libtext-levenshteinxs-perl libtext-markdown-discount-perl libtext-reform-perl libtext-template-perl libtext-unidecode-perl libtext-xslate-perl libthai-data libthai0 libtiff6 libtime-duration-perl libtime-moment-perl libtimedate-perl libtoml-tiny-perl libtool libtrilinos-amesos-13.2 libtrilinos-aztecoo-13.2 libtrilinos-epetra-13.2 libtrilinos-epetraext-13.2 libtrilinos-galeri-13.2 libtrilinos-ifpack-13.2 libtrilinos-kokkos-13.2 libtrilinos-ml-13.2 libtrilinos-teuchos-13.2 libtrilinos-trilinosss-13.2 libtrilinos-triutils-13.2 libtrilinos-zoltan-13.2 libtry-tiny-perl libuchardet0 libumfpack6 libunicode-utf8-perl liburi-perl libvariable-magic-perl libvorbis0a libvorbisenc2 libwacom-common libwacom9 libwayland-client0 libwayland-server0 libwebp7 libwebpmux3 libwmflite-0.2-7 libwww-mechanize-perl libwww-perl libwww-robotrules-perl libx11-6 libx11-data libx11-dev libx11-xcb1 libxau-dev libxau6 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-present0 libxcb-randr0 libxcb-render-util0 libxcb-render0 libxcb-shape0 libxcb-shm0 libxcb-sync1 libxcb-util1 libxcb-xfixes0 libxcb-xinerama0 libxcb-xinput0 libxcb-xkb1 libxcb1 libxcb1-dev libxcursor1 libxdmcp-dev libxdmcp6 libxext6 libxfixes3 libxft2 libxinerama1 libxkbcommon-x11-0 libxkbcommon0 libxml-libxml-perl libxml-namespacesupport-perl libxml-sax-base-perl libxml-sax-perl libxml2 libxnvctrl0 libxpm4 libxrender1 libxs-parse-keyword-perl libxs-parse-sublike-perl libxshmfence1 libxxf86vm1 libyaml-0-2 libyaml-libyaml-perl libyaml-pp-perl libyaml-tiny-perl licensecheck lintian lzip lzop m4 man-db mpi-default-bin netbase ocl-icd-libopencl1 octave octave-common octave-dev openmpi-bin openmpi-common openssh-client patchutils perl-openssl-defaults po-debconf sgml-base shared-mime-info t1utils tex-common texinfo texinfo-lib ucf unzip x11-common x11proto-dev xkb-data xorg-sgml-doctools xtrans-dev zlib1g-dev Suggested packages: autoconf-archive gnu-standards autoconf-doc libconfig-model-cursesui-perl libconfig-model-itself-perl dh-make gettext-doc libasprintf-dev libgettextpo-dev gfortran-multilib gfortran-doc gfortran-13-multilib gfortran-13-doc libcoarrays-dev gnuplot-doc groff isoquery libasound2-plugins alsa-utils liblapack-doc libconfig-model-openssh-perl libterm-readline-perl-perl | libterm-readline-gnu-perl cups-common libcurl4-doc libidn-dev libkrb5-dev libldap2-dev librtmp-dev libssh2-1-dev pkg-config libfftw3-doc libfftw3-mpi-dev libxml-parser-perl libgd-tools low-memory-monitor libiodbc2-dev default-libmysqlclient-dev graphicsmagick-dbg libhdf5-doc libheif-plugin-ffmpegdec libheif-plugin-jpegdec libheif-plugin-jpegenc libheif-plugin-j2kdec libheif-plugin-j2kenc libheif-plugin-rav1e libheif-plugin-svtenc libdata-dump-perl libio-compress-brotli-perl jackd2 liblcms2-utils libdbd-csv-perl liblog-dispatch-filerotate-perl librrds-perl libxml-dom-perl libcrypt-ssleay-perl ncurses-doc opus-tools libscalar-number-perl pciutils libqscintilla2-doc qgnomeplatform-qt5 qt5-image-formats-plugins readline-doc scalapack-doc lm-sensors libssl-doc libbareword-filehandles-perl libmultidimensional-perl libxstring-perl libdatetime-format-rfc3339-perl libtool-doc gcj-jdk libbusiness-isbn-perl libregexp-ipv6-perl libwacom-bin libauthen-ntlm-perl libx11-doc libxcb-doc binutils-multiarch m4-doc apparmor less www-browser opencl-icd keychain libpam-ssh monkeysphere ssh-askpass libmail-box-perl sgml-base-doc texlive-base texlive-latex-base texlive-plain-generic texlive-fonts-recommended zip Recommended packages: libconfig-model-approx-perl libconfig-model-lcdproc-perl libconfig-model-openssh-perl libconfig-model-systemd-perl libconfig-model-tkui-perl curl | wget | lynx fonts-liberation groff alsa-ucm-conf alsa-topology-conf libcgi-fast-perl libclass-c3-xs-perl fuse libfuse-perl dbus libarchive-cpio-perl libgl1-amber-dri libglib2.0-data xdg-user-dirs ghostscript fonts-urw-base35 libheif-plugin-aomenc libheif-plugin-x265 libhtml-format-perl libjson-xs-perl libldap-common liblist-someutils-xs-perl libipc-shareable-perl liblog-dispatch-perl libfreezethaw-perl libmath-base85-perl libauthen-sasl-perl libsocket6-perl libpackage-stash-xs-perl libtie-ixhash-perl publicsuffix qttranslations5-l10n libqt5svg5 qt5-gtk-platformtheme qtwayland5 libqt5sql5-sqlite | libqt5sql5-mysql | libqt5sql5-odbc | libqt5sql5-psql | libqt5sql5-tds | libqt5sql5-ibase libre-engine-re2-perl libsasl2-modules libtypes-serialiser-perl libltdl-dev libdata-dump-perl libhttp-daemon-perl libxml-sax-expat-perl libopenblas0 | libblis4 pstoedit epstool default-jre-headless octave-doc xauth libmail-sendmail-perl The following NEW packages will be installed: aglfn autoconf automake autopoint autotools-dev cme debhelper debugedit dh-autoreconf dh-octave dh-octave-autopkgtest dh-strip-nondeterminism diffstat dwz file fontconfig fontconfig-config fonts-freefont-otf fonts-noto-core fonts-noto-mono gettext gettext-base gfortran gfortran-13 gnuplot-data gnuplot-nox groff-base hdf5-helpers ibverbs-providers intltool-debian iso-codes libaec-dev libaec0 libalgorithm-c3-perl libaliased-perl libamd3 libapp-cmd-perl libapt-pkg-perl libarchive-zip-perl libarpack2 libarray-intspan-perl libasound2 libasound2-data libavahi-client3 libavahi-common-data libavahi-common3 libb-hooks-endofscope-perl libb-hooks-op-check-perl libberkeleydb-perl libblas-dev libblas3 libboolean-perl libbrotli1 libbsd0 libbtf2 libcairo2 libcamd3 libcapture-tiny-perl libcarp-assert-more-perl libcbor0.10 libccolamd3 libcgi-pm-perl libcholmod5 libclass-c3-perl libclass-data-inheritable-perl libclass-load-perl libclass-method-modifiers-perl libclass-xsaccessor-perl libclone-choose-perl libclone-perl libcolamd3 libcombblas2.0.0 libconfig-model-backend-yaml-perl libconfig-model-dpkg-perl libconfig-model-perl libconfig-tiny-perl libconst-fast-perl libconvert-binhex-perl libcpanel-json-xs-perl libcups2 libcurl3-gnutls libcurl4 libcurl4-openssl-dev libcxsparse4 libdata-dpath-perl libdata-messagepack-perl libdata-optlist-perl libdata-section-perl libdata-validate-domain-perl libdata-validate-ip-perl libdata-validate-uri-perl libdatrie1 libdav1d7 libdbus-1-3 libde265-0 libdebhelper-perl libdeflate0 libdevel-callchecker-perl libdevel-size-perl libdevel-stacktrace-perl libdouble-conversion3 libdrm-amdgpu1 libdrm-common libdrm-nouveau2 libdrm-radeon1 libdrm2 libdw1 libdynaloader-functions-perl libedit2 libegl-mesa0 libegl1 libelf1 libemail-address-xs-perl libencode-locale-perl liberror-perl libevdev2 libevent-core-2.1-7 libevent-pthreads-2.1-7 libexception-class-perl libexpat1 libexporter-lite-perl libexporter-tiny-perl libfabric1 libfftw3-bin libfftw3-dev libfftw3-double3 libfftw3-long3 libfftw3-mpi3 libfftw3-single3 libfido2-1 libfile-basedir-perl libfile-find-rule-perl libfile-homedir-perl libfile-listing-perl libfile-stripnondeterminism-perl libfile-which-perl libflac12 libfltk-gl1.3 libfltk1.3 libfont-ttf-perl libfontconfig1 libfreetype6 libfribidi0 libgbm1 libgd3 libgetopt-long-descriptive-perl libgfortran-13-dev libgfortran5 libgl-dev libgl1 libgl1-mesa-dri libgl2ps1.4 libglapi-mesa libglib2.0-0 libglpk40 libglu1-mesa libglvnd0 libglx-dev libglx-mesa0 libglx0 libgraphicsmagick++-q16-12 libgraphicsmagick-q16-3 libgraphite2-3 libgudev-1.0-0 libharfbuzz0b libhash-merge-perl libhdf5-103-1 libhdf5-cpp-103-1 libhdf5-dev libhdf5-fortran-102 libhdf5-hl-100 libhdf5-hl-cpp-100 libhdf5-hl-fortran-100 libhdf5-openmpi-103-1 libheif-plugin-dav1d libheif-plugin-libde265 libheif1 libhtml-form-perl libhtml-html5-entities-perl libhtml-parser-perl libhtml-tagset-perl libhtml-tokeparser-simple-perl libhtml-tree-perl libhttp-cookies-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl libhwloc-plugins libhwloc15 libhwy1 libhypre-2.28.0 libibverbs1 libice6 libicu72 libimport-into-perl libindirect-perl libinput-bin libinput10 libio-html-perl libio-interactive-perl libio-socket-ssl-perl libio-string-perl libio-stringy-perl libio-tiecombine-perl libipc-run3-perl libipc-system-simple-perl libiterator-perl libiterator-util-perl libjack-jackd2-0 libjbig0 libjpeg-dev libjpeg-turbo8 libjpeg-turbo8-dev libjpeg8 libjpeg8-dev libjson-maybexs-perl libjson-perl libjxl0.7 libklu2 liblapack-dev liblapack3 liblcms2-2 libldap2 liblist-compare-perl liblist-moreutils-perl liblist-moreutils-xs-perl liblist-someutils-perl liblist-utilsby-perl libllvm15 liblog-any-adapter-screen-perl liblog-any-perl liblog-log4perl-perl libltdl7 liblua5.4-0 liblwp-mediatypes-perl liblwp-protocol-https-perl liblzo2-2 libmagic-mgc libmagic1 libmailtools-perl libmarkdown2 libmd4c0 libmetis5 libmime-tools-perl libmldbm-perl libmodule-implementation-perl libmodule-pluggable-perl libmodule-runtime-perl libmoo-perl libmoox-aliases-perl libmouse-perl libmousex-nativetraits-perl libmousex-strictconstructor-perl libmp3lame0 libmpg123-0 libmro-compat-perl libmtdev1 libmumps-5.6 libmunge2 libnamespace-clean-perl libncurses-dev libncurses6 libnet-domain-tld-perl libnet-http-perl libnet-ipv6addr-perl libnet-netmask-perl libnet-smtp-ssl-perl libnet-ssleay-perl libnetaddr-ip-perl libnghttp2-14 libnl-3-200 libnl-route-3-200 libnumber-compare-perl libobject-pad-perl libogg0 libopengl0 libopenmpi3 libopus0 libpackage-stash-perl libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0 libparams-classify-perl libparams-util-perl libparams-validate-perl libparse-debcontrol-perl libparse-recdescent-perl libpath-iterator-rule-perl libpath-tiny-perl libpciaccess0 libpcre2-16-0 libperlio-gzip-perl libperlio-utf8-strict-perl libpetsc-real3.18 libpipeline1 libpixman-1-0 libpmix2 libpod-constants-perl libpod-parser-perl libpod-pom-perl libportaudio2 libproc-processtable-perl libpsl5 libpthread-stubs0-dev libptscotch-7.0 libqhull-r8.0 libqrupdate1 libqscintilla2-qt5-15 libqscintilla2-qt5-l10n libqt5core5a libqt5dbus5 libqt5gui5 libqt5help5 libqt5network5 libqt5printsupport5 libqt5sql5 libqt5widgets5 libqt5xml5 librdmacm1 libreadline-dev libregexp-common-perl libregexp-pattern-license-perl libregexp-pattern-perl libregexp-wildcards-perl librole-tiny-perl librtmp1 libsamplerate0 libsasl2-2 libsasl2-modules-db libscalapack-openmpi2.2 libscotch-7.0 libsensors-config libsensors5 libsereal-decoder-perl libsereal-encoder-perl libset-intspan-perl libsharpyuv0 libsm6 libsndfile1 libsoftware-copyright-perl libsoftware-license-perl libsoftware-licensemoreutils-perl libsort-versions-perl libspqr4 libssh-4 libssl-dev libstrictures-perl libstring-copyright-perl libstring-escape-perl libstring-license-perl libstring-rewriteprefix-perl libsub-exporter-perl libsub-exporter-progressive-perl libsub-identify-perl libsub-install-perl libsub-name-perl libsub-override-perl libsub-quote-perl libsub-uplevel-perl libsuitesparseconfig7 libsundials-ida6 libsundials-nvecparallel-petsc6 libsundials-sunlinsol3 libsundials-sunmatrix4 libsuperlu-dist8 libsuperlu6 libsyntax-keyword-try-perl libsz2 libterm-readkey-perl libtest-exception-perl libtext-autoformat-perl libtext-glob-perl libtext-levenshtein-damerau-perl libtext-levenshteinxs-perl libtext-markdown-discount-perl libtext-reform-perl libtext-template-perl libtext-unidecode-perl libtext-xslate-perl libthai-data libthai0 libtiff6 libtime-duration-perl libtime-moment-perl libtimedate-perl libtoml-tiny-perl libtool libtrilinos-amesos-13.2 libtrilinos-aztecoo-13.2 libtrilinos-epetra-13.2 libtrilinos-epetraext-13.2 libtrilinos-galeri-13.2 libtrilinos-ifpack-13.2 libtrilinos-kokkos-13.2 libtrilinos-ml-13.2 libtrilinos-teuchos-13.2 libtrilinos-trilinosss-13.2 libtrilinos-triutils-13.2 libtrilinos-zoltan-13.2 libtry-tiny-perl libuchardet0 libumfpack6 libunicode-utf8-perl liburi-perl libvariable-magic-perl libvorbis0a libvorbisenc2 libwacom-common libwacom9 libwayland-client0 libwayland-server0 libwebp7 libwebpmux3 libwmflite-0.2-7 libwww-mechanize-perl libwww-perl libwww-robotrules-perl libx11-6 libx11-data libx11-dev libx11-xcb1 libxau-dev libxau6 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-present0 libxcb-randr0 libxcb-render-util0 libxcb-render0 libxcb-shape0 libxcb-shm0 libxcb-sync1 libxcb-util1 libxcb-xfixes0 libxcb-xinerama0 libxcb-xinput0 libxcb-xkb1 libxcb1 libxcb1-dev libxcursor1 libxdmcp-dev libxdmcp6 libxext6 libxfixes3 libxft2 libxinerama1 libxkbcommon-x11-0 libxkbcommon0 libxml-libxml-perl libxml-namespacesupport-perl libxml-sax-base-perl libxml-sax-perl libxml2 libxnvctrl0 libxpm4 libxrender1 libxs-parse-keyword-perl libxs-parse-sublike-perl libxshmfence1 libxxf86vm1 libyaml-0-2 libyaml-libyaml-perl libyaml-pp-perl libyaml-tiny-perl licensecheck lintian lzip lzop m4 man-db mpi-default-bin netbase ocl-icd-libopencl1 octave octave-common octave-dev openmpi-bin openmpi-common openssh-client patchutils perl-openssl-defaults po-debconf sbuild-build-depends-main-dummy sgml-base shared-mime-info t1utils tex-common texinfo texinfo-lib ucf unzip x11-common x11proto-dev xkb-data xorg-sgml-doctools xtrans-dev zlib1g-dev 0 upgraded, 501 newly installed, 0 to remove and 0 not upgraded. Need to get 201 MB of archives. After this operation, 757 MB of additional disk space will be used. Get:1 copy:/<>/apt_archive ./ sbuild-build-depends-main-dummy 0.invalid.0 [714 B] Get:2 http://ftpmaster.internal/ubuntu noble/main s390x sgml-base all 1.31 [11.4 kB] Get:3 http://ftpmaster.internal/ubuntu noble/main s390x iso-codes all 4.15.0-1 [3458 kB] Get:4 http://ftpmaster.internal/ubuntu noble/main s390x libbsd0 s390x 0.11.7-4 [42.5 kB] Get:5 http://ftpmaster.internal/ubuntu noble/main s390x libdbus-1-3 s390x 1.14.10-1ubuntu1 [210 kB] Get:6 http://ftpmaster.internal/ubuntu noble/main s390x libelf1 s390x 0.190-1 [68.7 kB] Get:7 http://ftpmaster.internal/ubuntu noble/main s390x libexpat1 s390x 2.5.0-2 [82.5 kB] Get:8 http://ftpmaster.internal/ubuntu noble/main s390x libfribidi0 s390x 1.0.13-3 [27.2 kB] Get:9 http://ftpmaster.internal/ubuntu noble/main s390x libglib2.0-0 s390x 2.78.1-4 [1535 kB] Get:10 http://ftpmaster.internal/ubuntu noble/main s390x libicu72 s390x 72.1-3ubuntu3 [10.8 MB] Get:11 http://ftpmaster.internal/ubuntu noble/main s390x libxml2 s390x 2.9.14+dfsg-1.3build2 [811 kB] Get:12 http://ftpmaster.internal/ubuntu noble/main s390x libyaml-0-2 s390x 0.2.5-1 [48.9 kB] Get:13 http://ftpmaster.internal/ubuntu noble/main s390x netbase all 6.4 [13.1 kB] Get:14 http://ftpmaster.internal/ubuntu noble-proposed/main s390x shared-mime-info s390x 2.4-1 [466 kB] Get:15 http://ftpmaster.internal/ubuntu noble/main s390x ucf all 3.0043+nmu1 [56.5 kB] Get:16 http://ftpmaster.internal/ubuntu noble/main s390x xkb-data all 2.38-2 [392 kB] Get:17 http://ftpmaster.internal/ubuntu noble/main s390x libmagic-mgc s390x 1:5.45-2 [305 kB] Get:18 http://ftpmaster.internal/ubuntu noble/main s390x libmagic1 s390x 1:5.45-2 [91.6 kB] Get:19 http://ftpmaster.internal/ubuntu noble/main s390x file s390x 1:5.45-2 [22.2 kB] Get:20 http://ftpmaster.internal/ubuntu noble/main s390x gettext-base s390x 0.21-13build1 [39.2 kB] Get:21 http://ftpmaster.internal/ubuntu noble/main s390x libuchardet0 s390x 0.0.7-1build2 [76.4 kB] Get:22 http://ftpmaster.internal/ubuntu noble/main s390x groff-base s390x 1.23.0-3 [1047 kB] Get:23 http://ftpmaster.internal/ubuntu noble/main s390x libdrm-common all 2.4.117-1 [7586 B] Get:24 http://ftpmaster.internal/ubuntu noble/main s390x libdrm2 s390x 2.4.117-1 [42.6 kB] Get:25 http://ftpmaster.internal/ubuntu noble/main s390x libedit2 s390x 3.1-20230828-1 [106 kB] Get:26 http://ftpmaster.internal/ubuntu noble/main s390x libcbor0.10 s390x 0.10.2-1.1ubuntu1 [25.5 kB] Get:27 http://ftpmaster.internal/ubuntu noble-proposed/main s390x libfido2-1 s390x 1.14.0-1 [81.1 kB] Get:28 http://ftpmaster.internal/ubuntu noble/main s390x libncurses6 s390x 6.4+20231121-1build1 [122 kB] Get:29 http://ftpmaster.internal/ubuntu noble/main s390x libnghttp2-14 s390x 1.58.0-1 [76.2 kB] Get:30 http://ftpmaster.internal/ubuntu noble/main s390x libpipeline1 s390x 1.5.7-1 [23.4 kB] Get:31 http://ftpmaster.internal/ubuntu noble/main s390x libpsl5 s390x 0.21.2-1build1 [57.4 kB] Get:32 http://ftpmaster.internal/ubuntu noble/main s390x libxau6 s390x 1:1.0.9-1build5 [7522 B] Get:33 http://ftpmaster.internal/ubuntu noble/main s390x libxdmcp6 s390x 1:1.1.3-0ubuntu5 [10.8 kB] Get:34 http://ftpmaster.internal/ubuntu noble/main s390x libxcb1 s390x 1.15-1 [48.3 kB] Get:35 http://ftpmaster.internal/ubuntu noble/main s390x libx11-data all 2:1.8.7-1 [115 kB] Get:36 http://ftpmaster.internal/ubuntu noble/main s390x libx11-6 s390x 2:1.8.7-1 [672 kB] Get:37 http://ftpmaster.internal/ubuntu noble/main s390x libxext6 s390x 2:1.3.4-1build1 [30.5 kB] Get:38 http://ftpmaster.internal/ubuntu noble-proposed/main s390x man-db s390x 2.12.0-1 [1242 kB] Get:39 http://ftpmaster.internal/ubuntu noble/main s390x openssh-client s390x 1:9.4p1-1ubuntu1 [908 kB] Get:40 http://ftpmaster.internal/ubuntu noble/main s390x m4 s390x 1.4.19-4 [255 kB] Get:41 http://ftpmaster.internal/ubuntu noble/main s390x autoconf all 2.71-3 [339 kB] Get:42 http://ftpmaster.internal/ubuntu noble/main s390x autotools-dev all 20220109.1 [44.9 kB] Get:43 http://ftpmaster.internal/ubuntu noble/main s390x automake all 1:1.16.5-1.3 [558 kB] Get:44 http://ftpmaster.internal/ubuntu noble/main s390x autopoint all 0.21-13build1 [422 kB] Get:45 http://ftpmaster.internal/ubuntu noble/main s390x libcapture-tiny-perl all 0.48-2 [20.2 kB] Get:46 http://ftpmaster.internal/ubuntu noble/main s390x libparams-util-perl s390x 1.102-2 [21.4 kB] Get:47 http://ftpmaster.internal/ubuntu noble/main s390x libsub-install-perl all 0.929-1 [9764 B] Get:48 http://ftpmaster.internal/ubuntu noble/main s390x libdata-optlist-perl all 0.114-1 [9708 B] Get:49 http://ftpmaster.internal/ubuntu noble/main s390x libb-hooks-op-check-perl s390x 0.22-2build1 [9532 B] Get:50 http://ftpmaster.internal/ubuntu noble/main s390x libdynaloader-functions-perl all 0.003-3 [12.1 kB] Get:51 http://ftpmaster.internal/ubuntu noble/main s390x libdevel-callchecker-perl s390x 0.008-2 [13.8 kB] Get:52 http://ftpmaster.internal/ubuntu noble/main s390x libparams-classify-perl s390x 0.015-2build2 [20.7 kB] Get:53 http://ftpmaster.internal/ubuntu noble/main s390x libmodule-runtime-perl all 0.016-2 [16.4 kB] Get:54 http://ftpmaster.internal/ubuntu noble/main s390x libtry-tiny-perl all 0.31-2 [20.8 kB] Get:55 http://ftpmaster.internal/ubuntu noble/main s390x libmodule-implementation-perl all 0.09-2 [12.0 kB] Get:56 http://ftpmaster.internal/ubuntu noble/main s390x libpackage-stash-perl all 0.40-1 [19.5 kB] Get:57 http://ftpmaster.internal/ubuntu noble/universe s390x libclass-load-perl all 0.25-2 [12.7 kB] Get:58 http://ftpmaster.internal/ubuntu noble/main s390x libio-stringy-perl all 2.111-3 [55.8 kB] Get:59 http://ftpmaster.internal/ubuntu noble/universe s390x libparams-validate-perl s390x 1.31-1 [54.0 kB] Get:60 http://ftpmaster.internal/ubuntu noble/main s390x libsub-exporter-perl all 0.990-1 [49.0 kB] Get:61 http://ftpmaster.internal/ubuntu noble/universe s390x libgetopt-long-descriptive-perl all 0.111-1 [25.5 kB] Get:62 http://ftpmaster.internal/ubuntu noble/universe s390x libio-tiecombine-perl all 1.005-3 [9464 B] Get:63 http://ftpmaster.internal/ubuntu noble/universe s390x libmodule-pluggable-perl all 5.2-4 [20.0 kB] Get:64 http://ftpmaster.internal/ubuntu noble/universe s390x libstring-rewriteprefix-perl all 0.009-1 [6310 B] Get:65 http://ftpmaster.internal/ubuntu noble/universe s390x libapp-cmd-perl all 0.336-1 [62.1 kB] Get:66 http://ftpmaster.internal/ubuntu noble/universe s390x libboolean-perl all 0.46-3 [8430 B] Get:67 http://ftpmaster.internal/ubuntu noble/universe s390x libsub-uplevel-perl all 0.2800-3 [11.6 kB] Get:68 http://ftpmaster.internal/ubuntu noble/universe s390x libtest-exception-perl all 0.43-3 [13.4 kB] Get:69 http://ftpmaster.internal/ubuntu noble/universe s390x libcarp-assert-more-perl all 2.3.0-1 [17.6 kB] Get:70 http://ftpmaster.internal/ubuntu noble/main s390x libfile-which-perl all 1.27-2 [12.5 kB] Get:71 http://ftpmaster.internal/ubuntu noble/main s390x libfile-homedir-perl all 1.006-2 [37.0 kB] Get:72 http://ftpmaster.internal/ubuntu noble/universe s390x libclone-choose-perl all 0.010-2 [7738 B] Get:73 http://ftpmaster.internal/ubuntu noble/universe s390x libhash-merge-perl all 0.302-1 [13.0 kB] Get:74 http://ftpmaster.internal/ubuntu noble/main s390x libjson-perl all 4.10000-1 [81.9 kB] Get:75 http://ftpmaster.internal/ubuntu noble/main s390x libexporter-tiny-perl all 1.006002-1 [36.8 kB] Get:76 http://ftpmaster.internal/ubuntu noble/universe s390x liblist-moreutils-xs-perl s390x 0.430-3build2 [39.7 kB] Get:77 http://ftpmaster.internal/ubuntu noble/universe s390x liblist-moreutils-perl all 0.430-2 [38.2 kB] Get:78 http://ftpmaster.internal/ubuntu noble/universe s390x liblog-log4perl-perl all 1.57-1 [345 kB] Get:79 http://ftpmaster.internal/ubuntu noble/main s390x libmouse-perl s390x 2.5.10-1build5 [159 kB] Get:80 http://ftpmaster.internal/ubuntu noble/universe s390x libmousex-nativetraits-perl all 1.09-3 [53.2 kB] Get:81 http://ftpmaster.internal/ubuntu noble/universe s390x libmousex-strictconstructor-perl all 0.02-3 [4582 B] Get:82 http://ftpmaster.internal/ubuntu noble/universe s390x libparse-recdescent-perl all 1.967015+dfsg-4 [139 kB] Get:83 http://ftpmaster.internal/ubuntu noble/main s390x libpath-tiny-perl all 0.144-1 [47.7 kB] Get:84 http://ftpmaster.internal/ubuntu noble/universe s390x libpod-pom-perl all 2.01-4 [61.3 kB] Get:85 http://ftpmaster.internal/ubuntu noble/universe s390x libregexp-common-perl all 2017060201-3 [171 kB] Get:86 http://ftpmaster.internal/ubuntu noble/main s390x libyaml-tiny-perl all 1.74-1 [25.3 kB] Get:87 http://ftpmaster.internal/ubuntu noble/universe s390x libconfig-model-perl all 2.153-3 [408 kB] Get:88 http://ftpmaster.internal/ubuntu noble/universe s390x libyaml-pp-perl all 0.37.0-1 [108 kB] Get:89 http://ftpmaster.internal/ubuntu noble/universe s390x cme all 1.038-2 [80.5 kB] Get:90 http://ftpmaster.internal/ubuntu noble/main s390x libdebhelper-perl all 13.11.8ubuntu1 [85.9 kB] Get:91 http://ftpmaster.internal/ubuntu noble/main s390x libtool all 2.4.7-7 [166 kB] Get:92 http://ftpmaster.internal/ubuntu noble/main s390x dh-autoreconf all 20 [16.1 kB] Get:93 http://ftpmaster.internal/ubuntu noble/main s390x libarchive-zip-perl all 1.68-1 [90.2 kB] Get:94 http://ftpmaster.internal/ubuntu noble/main s390x libsub-override-perl all 0.09-4 [8706 B] Get:95 http://ftpmaster.internal/ubuntu noble/main s390x libfile-stripnondeterminism-perl all 1.13.1-1 [18.1 kB] Get:96 http://ftpmaster.internal/ubuntu noble/main s390x dh-strip-nondeterminism all 1.13.1-1 [5362 B] Get:97 http://ftpmaster.internal/ubuntu noble/main s390x libdw1 s390x 0.190-1 [282 kB] Get:98 http://ftpmaster.internal/ubuntu noble/main s390x debugedit s390x 1:5.0-5 [47.5 kB] Get:99 http://ftpmaster.internal/ubuntu noble/main s390x dwz s390x 0.15-1 [108 kB] Get:100 http://ftpmaster.internal/ubuntu noble/main s390x gettext s390x 0.21-13build1 [911 kB] Get:101 http://ftpmaster.internal/ubuntu noble/main s390x intltool-debian all 0.35.0+20060710.6 [23.2 kB] Get:102 http://ftpmaster.internal/ubuntu noble/main s390x po-debconf all 1.0.21+nmu1 [233 kB] Get:103 http://ftpmaster.internal/ubuntu noble/main s390x debhelper all 13.11.8ubuntu1 [940 kB] Get:104 http://ftpmaster.internal/ubuntu noble/universe s390x aglfn all 1.7+git20191031.4036a9c-2 [30.6 kB] Get:105 http://ftpmaster.internal/ubuntu noble/universe s390x gnuplot-data all 5.4.4+dfsg1-2build1 [74.6 kB] Get:106 http://ftpmaster.internal/ubuntu noble/main s390x libbrotli1 s390x 1.1.0-2 [374 kB] Get:107 http://ftpmaster.internal/ubuntu noble/main s390x libfreetype6 s390x 2.13.2+dfsg-1 [431 kB] Get:108 http://ftpmaster.internal/ubuntu noble/main s390x fonts-noto-mono all 20201225-2 [435 kB] Get:109 http://ftpmaster.internal/ubuntu noble/main s390x fonts-noto-core all 20201225-2 [13.3 MB] Get:110 http://ftpmaster.internal/ubuntu noble/universe s390x fonts-freefont-otf all 20211204+svn4273-2 [4596 kB] Get:111 http://ftpmaster.internal/ubuntu noble/main s390x fontconfig-config s390x 2.14.2-4ubuntu1 [35.8 kB] Get:112 http://ftpmaster.internal/ubuntu noble/main s390x libfontconfig1 s390x 2.14.2-4ubuntu1 [147 kB] Get:113 http://ftpmaster.internal/ubuntu noble/main s390x libpixman-1-0 s390x 0.42.2-1 [173 kB] Get:114 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-render0 s390x 1.15-1 [17.0 kB] Get:115 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-shm0 s390x 1.15-1 [5782 B] Get:116 http://ftpmaster.internal/ubuntu noble/main s390x libxrender1 s390x 1:0.9.10-1.1 [19.4 kB] Get:117 http://ftpmaster.internal/ubuntu noble/main s390x libcairo2 s390x 1.18.0-1 [578 kB] Get:118 http://ftpmaster.internal/ubuntu noble/main s390x libjpeg-turbo8 s390x 2.1.5-2ubuntu1 [128 kB] Get:119 http://ftpmaster.internal/ubuntu noble/main s390x libjpeg8 s390x 8c-2ubuntu11 [2146 B] Get:120 http://ftpmaster.internal/ubuntu noble/main s390x libdeflate0 s390x 1.18-1 [44.9 kB] Get:121 http://ftpmaster.internal/ubuntu noble/main s390x libjbig0 s390x 2.1-6.1ubuntu1 [29.8 kB] Get:122 http://ftpmaster.internal/ubuntu noble/main s390x libsharpyuv0 s390x 1.3.2-0.3 [14.4 kB] Get:123 http://ftpmaster.internal/ubuntu noble/main s390x libwebp7 s390x 1.3.2-0.3 [204 kB] Get:124 http://ftpmaster.internal/ubuntu noble/main s390x libtiff6 s390x 4.5.1+git230720-1ubuntu1 [214 kB] Get:125 http://ftpmaster.internal/ubuntu noble/main s390x libxpm4 s390x 1:3.5.12-1.1ubuntu1 [41.2 kB] Get:126 http://ftpmaster.internal/ubuntu noble/main s390x libgd3 s390x 2.3.3-9ubuntu1 [127 kB] Get:127 http://ftpmaster.internal/ubuntu noble/main s390x liblua5.4-0 s390x 5.4.6-0ubuntu2 [173 kB] Get:128 http://ftpmaster.internal/ubuntu noble/main s390x fontconfig s390x 2.14.2-4ubuntu1 [191 kB] Get:129 http://ftpmaster.internal/ubuntu noble/main s390x libgraphite2-3 s390x 1.3.14-1build2 [68.1 kB] Get:130 http://ftpmaster.internal/ubuntu noble/main s390x libharfbuzz0b s390x 8.0.1-1 [436 kB] Get:131 http://ftpmaster.internal/ubuntu noble/main s390x libthai-data all 0.1.29-1build1 [162 kB] Get:132 http://ftpmaster.internal/ubuntu noble/main s390x libdatrie1 s390x 0.2.13-2 [19.9 kB] Get:133 http://ftpmaster.internal/ubuntu noble/main s390x libthai0 s390x 0.1.29-1build1 [20.0 kB] Get:134 http://ftpmaster.internal/ubuntu noble/main s390x libpango-1.0-0 s390x 1.51.0+ds-3 [238 kB] Get:135 http://ftpmaster.internal/ubuntu noble/main s390x libpangoft2-1.0-0 s390x 1.51.0+ds-3 [43.0 kB] Get:136 http://ftpmaster.internal/ubuntu noble/main s390x libpangocairo-1.0-0 s390x 1.51.0+ds-3 [28.5 kB] Get:137 http://ftpmaster.internal/ubuntu noble/universe s390x gnuplot-nox s390x 5.4.4+dfsg1-2build1 [866 kB] Get:138 http://ftpmaster.internal/ubuntu noble/universe s390x dh-octave-autopkgtest all 1.5.1 [9788 B] Get:139 http://ftpmaster.internal/ubuntu noble/main s390x libapt-pkg-perl s390x 0.1.40build3 [69.2 kB] Get:140 http://ftpmaster.internal/ubuntu noble/main s390x libarray-intspan-perl all 2.004-2 [25.0 kB] Get:141 http://ftpmaster.internal/ubuntu noble/main s390x libyaml-libyaml-perl s390x 0.86+ds-1 [30.3 kB] Get:142 http://ftpmaster.internal/ubuntu noble/universe s390x libconfig-model-backend-yaml-perl all 2.134-2 [10.5 kB] Get:143 http://ftpmaster.internal/ubuntu noble/universe s390x libexporter-lite-perl all 0.09-2 [9748 B] Get:144 http://ftpmaster.internal/ubuntu noble/main s390x libencode-locale-perl all 1.05-3 [11.6 kB] Get:145 http://ftpmaster.internal/ubuntu noble/main s390x libtimedate-perl all 2.3300-2 [34.0 kB] Get:146 http://ftpmaster.internal/ubuntu noble/main s390x libhttp-date-perl all 6.06-1 [10.2 kB] Get:147 http://ftpmaster.internal/ubuntu noble/main s390x libfile-listing-perl all 6.16-1 [11.3 kB] Get:148 http://ftpmaster.internal/ubuntu noble/main s390x libhtml-tagset-perl all 3.20-6 [11.3 kB] Get:149 http://ftpmaster.internal/ubuntu noble/main s390x liburi-perl all 5.21-1 [85.4 kB] Get:150 http://ftpmaster.internal/ubuntu noble/main s390x libhtml-parser-perl s390x 3.81-1 [86.8 kB] Get:151 http://ftpmaster.internal/ubuntu noble/main s390x libhtml-tree-perl all 5.07-3 [200 kB] Get:152 http://ftpmaster.internal/ubuntu noble/main s390x libclone-perl s390x 0.46-1 [10.7 kB] Get:153 http://ftpmaster.internal/ubuntu noble/main s390x libio-html-perl all 1.004-3 [15.9 kB] Get:154 http://ftpmaster.internal/ubuntu noble/main s390x liblwp-mediatypes-perl all 6.04-2 [20.1 kB] Get:155 http://ftpmaster.internal/ubuntu noble/main s390x libhttp-message-perl all 6.44-2ubuntu1 [78.0 kB] Get:156 http://ftpmaster.internal/ubuntu noble/main s390x libhttp-cookies-perl all 6.10-1 [18.4 kB] Get:157 http://ftpmaster.internal/ubuntu noble/main s390x libhttp-negotiate-perl all 6.01-2 [12.4 kB] Get:158 http://ftpmaster.internal/ubuntu noble/main s390x perl-openssl-defaults s390x 7 [7536 B] Get:159 http://ftpmaster.internal/ubuntu noble/main s390x libnet-ssleay-perl s390x 1.92-2build2 [294 kB] Get:160 http://ftpmaster.internal/ubuntu noble/main s390x libio-socket-ssl-perl all 2.084-1 [193 kB] Get:161 http://ftpmaster.internal/ubuntu noble/main s390x libnet-http-perl all 6.23-1 [22.3 kB] Get:162 http://ftpmaster.internal/ubuntu noble/main s390x liblwp-protocol-https-perl all 6.11-1 [8992 B] Get:163 http://ftpmaster.internal/ubuntu noble/main s390x libwww-robotrules-perl all 6.02-1 [12.6 kB] Get:164 http://ftpmaster.internal/ubuntu noble/main s390x libwww-perl all 6.72-1 [143 kB] Get:165 http://ftpmaster.internal/ubuntu noble/main s390x liberror-perl all 0.17029-2 [25.6 kB] Get:166 http://ftpmaster.internal/ubuntu noble/universe s390x libparse-debcontrol-perl all 2.005-6 [20.4 kB] Get:167 http://ftpmaster.internal/ubuntu noble/universe s390x libsoftware-copyright-perl all 0.012-2 [17.4 kB] Get:168 http://ftpmaster.internal/ubuntu noble/universe s390x libalgorithm-c3-perl all 0.11-2 [10.2 kB] Get:169 http://ftpmaster.internal/ubuntu noble/universe s390x libclass-c3-perl all 0.35-2 [18.4 kB] Get:170 http://ftpmaster.internal/ubuntu noble/universe s390x libmro-compat-perl all 0.15-2 [10.1 kB] Get:171 http://ftpmaster.internal/ubuntu noble/universe s390x libdata-section-perl all 0.200008-1 [11.6 kB] Get:172 http://ftpmaster.internal/ubuntu noble/universe s390x libtext-template-perl all 1.61-1 [48.5 kB] Get:173 http://ftpmaster.internal/ubuntu noble/universe s390x libsoftware-license-perl all 0.104005-1 [118 kB] Get:174 http://ftpmaster.internal/ubuntu noble/universe s390x libsoftware-licensemoreutils-perl all 1.009-1 [21.5 kB] Get:175 http://ftpmaster.internal/ubuntu noble/main s390x libsort-versions-perl all 1.62-3 [7378 B] Get:176 http://ftpmaster.internal/ubuntu noble/universe s390x libtext-reform-perl all 1.20-5 [35.4 kB] Get:177 http://ftpmaster.internal/ubuntu noble/universe s390x libtext-autoformat-perl all 1.750000-2 [29.8 kB] Get:178 http://ftpmaster.internal/ubuntu noble/universe s390x libtext-levenshtein-damerau-perl all 0.41-3 [10.8 kB] Get:179 http://ftpmaster.internal/ubuntu noble/universe s390x libtoml-tiny-perl all 0.16-1 [22.0 kB] Get:180 http://ftpmaster.internal/ubuntu noble/main s390x libindirect-perl s390x 0.39-2build1 [21.4 kB] Get:181 http://ftpmaster.internal/ubuntu noble/main s390x libxs-parse-keyword-perl s390x 0.38-1 [57.8 kB] Get:182 http://ftpmaster.internal/ubuntu noble/main s390x libxs-parse-sublike-perl s390x 0.21-2 [43.4 kB] Get:183 http://ftpmaster.internal/ubuntu noble/main s390x libobject-pad-perl s390x 0.806-1 [115 kB] Get:184 http://ftpmaster.internal/ubuntu noble/main s390x libsyntax-keyword-try-perl s390x 0.29-1 [26.5 kB] Get:185 http://ftpmaster.internal/ubuntu noble/main s390x libio-interactive-perl all 1.025-1 [10.4 kB] Get:186 http://ftpmaster.internal/ubuntu noble/main s390x liblog-any-perl all 1.717-1 [73.2 kB] Get:187 http://ftpmaster.internal/ubuntu noble/main s390x liblog-any-adapter-screen-perl all 0.140-2 [12.4 kB] Get:188 http://ftpmaster.internal/ubuntu noble/main s390x libsub-exporter-progressive-perl all 0.001013-3 [6718 B] Get:189 http://ftpmaster.internal/ubuntu noble/main s390x libvariable-magic-perl s390x 0.63-1 [34.1 kB] Get:190 http://ftpmaster.internal/ubuntu noble/main s390x libb-hooks-endofscope-perl all 0.26-1 [17.8 kB] Get:191 http://ftpmaster.internal/ubuntu noble/main s390x libsub-identify-perl s390x 0.14-3 [9842 B] Get:192 http://ftpmaster.internal/ubuntu noble/main s390x libsub-name-perl s390x 0.27-1 [10.9 kB] Get:193 http://ftpmaster.internal/ubuntu noble/main s390x libnamespace-clean-perl all 0.27-2 [14.0 kB] Get:194 http://ftpmaster.internal/ubuntu noble/main s390x libnumber-compare-perl all 0.03-3 [5974 B] Get:195 http://ftpmaster.internal/ubuntu noble/main s390x libtext-glob-perl all 0.11-3 [6780 B] Get:196 http://ftpmaster.internal/ubuntu noble/main s390x libpath-iterator-rule-perl all 1.015-2 [39.9 kB] Get:197 http://ftpmaster.internal/ubuntu noble/main s390x libpod-parser-perl all 1.66-1 [82.8 kB] Get:198 http://ftpmaster.internal/ubuntu noble/main s390x libpod-constants-perl all 0.19-2 [16.3 kB] Get:199 http://ftpmaster.internal/ubuntu noble/main s390x libset-intspan-perl all 1.19-3 [24.8 kB] Get:200 http://ftpmaster.internal/ubuntu noble/main s390x libstring-copyright-perl all 0.003014-1 [20.5 kB] Get:201 http://ftpmaster.internal/ubuntu noble/main s390x libstring-escape-perl all 2010.002-3 [16.1 kB] Get:202 http://ftpmaster.internal/ubuntu noble/main s390x libregexp-pattern-license-perl all 3.11.0-1 [85.8 kB] Get:203 http://ftpmaster.internal/ubuntu noble/main s390x libregexp-pattern-perl all 0.2.14-2 [17.6 kB] Get:204 http://ftpmaster.internal/ubuntu noble/main s390x libstring-license-perl all 0.0.9-2ubuntu1 [35.0 kB] Get:205 http://ftpmaster.internal/ubuntu noble/main s390x licensecheck all 3.3.9-1ubuntu1 [37.7 kB] Get:206 http://ftpmaster.internal/ubuntu noble/main s390x diffstat s390x 1.65-1 [28.7 kB] Get:207 http://ftpmaster.internal/ubuntu noble/main s390x libberkeleydb-perl s390x 0.64-2 [111 kB] Get:208 http://ftpmaster.internal/ubuntu noble/main s390x libclass-xsaccessor-perl s390x 1.19-4build1 [33.8 kB] Get:209 http://ftpmaster.internal/ubuntu noble/main s390x libconfig-tiny-perl all 2.30-1 [14.7 kB] Get:210 http://ftpmaster.internal/ubuntu noble/main s390x libconst-fast-perl all 0.014-2 [8034 B] Get:211 http://ftpmaster.internal/ubuntu noble/main s390x libcpanel-json-xs-perl s390x 4.37-1 [119 kB] Get:212 http://ftpmaster.internal/ubuntu noble/main s390x libaliased-perl all 0.34-3 [12.8 kB] Get:213 http://ftpmaster.internal/ubuntu noble/main s390x libclass-data-inheritable-perl all 0.08-3 [8084 B] Get:214 http://ftpmaster.internal/ubuntu noble/main s390x libdevel-stacktrace-perl all 2.0400-2 [22.2 kB] Get:215 http://ftpmaster.internal/ubuntu noble/main s390x libexception-class-perl all 1.45-1 [28.6 kB] Get:216 http://ftpmaster.internal/ubuntu noble/main s390x libiterator-perl all 0.03+ds1-2 [18.8 kB] Get:217 http://ftpmaster.internal/ubuntu noble/main s390x libiterator-util-perl all 0.02+ds1-2 [14.1 kB] Get:218 http://ftpmaster.internal/ubuntu noble/main s390x libdata-dpath-perl all 0.59-1 [39.2 kB] Get:219 http://ftpmaster.internal/ubuntu noble/main s390x libnet-domain-tld-perl all 1.75-3 [29.4 kB] Get:220 http://ftpmaster.internal/ubuntu noble/main s390x libdata-validate-domain-perl all 0.10-1.1 [9992 B] Get:221 http://ftpmaster.internal/ubuntu noble/main s390x libnet-ipv6addr-perl all 1.02-1 [21.0 kB] Get:222 http://ftpmaster.internal/ubuntu noble/main s390x libnet-netmask-perl all 2.0002-2 [24.8 kB] Get:223 http://ftpmaster.internal/ubuntu noble/main s390x libnetaddr-ip-perl s390x 4.079+dfsg-2build1 [81.5 kB] Get:224 http://ftpmaster.internal/ubuntu noble/main s390x libdata-validate-ip-perl all 0.31-1 [17.2 kB] Get:225 http://ftpmaster.internal/ubuntu noble/main s390x libdata-validate-uri-perl all 0.07-2 [11.1 kB] Get:226 http://ftpmaster.internal/ubuntu noble/main s390x libdevel-size-perl s390x 0.83-2build1 [19.3 kB] Get:227 http://ftpmaster.internal/ubuntu noble/main s390x libemail-address-xs-perl s390x 1.05-1build1 [28.6 kB] Get:228 http://ftpmaster.internal/ubuntu noble/main s390x libipc-system-simple-perl all 1.30-2 [22.3 kB] Get:229 http://ftpmaster.internal/ubuntu noble/main s390x libfile-basedir-perl all 0.09-2 [14.4 kB] Get:230 http://ftpmaster.internal/ubuntu noble/main s390x libfile-find-rule-perl all 0.34-3 [24.4 kB] Get:231 http://ftpmaster.internal/ubuntu noble/main s390x libio-string-perl all 1.08-4 [11.1 kB] Get:232 http://ftpmaster.internal/ubuntu noble/main s390x libfont-ttf-perl all 1.06-2 [323 kB] Get:233 http://ftpmaster.internal/ubuntu noble/main s390x libhtml-html5-entities-perl all 0.004-3 [21.6 kB] Get:234 http://ftpmaster.internal/ubuntu noble/main s390x libhtml-tokeparser-simple-perl all 3.16-4 [38.0 kB] Get:235 http://ftpmaster.internal/ubuntu noble/main s390x libipc-run3-perl all 0.048-3 [30.3 kB] Get:236 http://ftpmaster.internal/ubuntu noble/main s390x libjson-maybexs-perl all 1.004005-1 [11.3 kB] Get:237 http://ftpmaster.internal/ubuntu noble/main s390x liblist-compare-perl all 0.55-2 [62.9 kB] Get:238 http://ftpmaster.internal/ubuntu noble/main s390x liblist-someutils-perl all 0.59-1 [30.4 kB] Get:239 http://ftpmaster.internal/ubuntu noble/main s390x liblist-utilsby-perl all 0.12-2 [14.9 kB] Get:240 http://ftpmaster.internal/ubuntu noble/main s390x libmldbm-perl all 2.05-4 [16.0 kB] Get:241 http://ftpmaster.internal/ubuntu noble/main s390x libclass-method-modifiers-perl all 2.15-1 [16.1 kB] Get:242 http://ftpmaster.internal/ubuntu noble/main s390x libimport-into-perl all 1.002005-2 [10.7 kB] Get:243 http://ftpmaster.internal/ubuntu noble/main s390x librole-tiny-perl all 2.002004-1 [16.3 kB] Get:244 http://ftpmaster.internal/ubuntu noble/main s390x libsub-quote-perl all 2.006008-1ubuntu1 [20.7 kB] Get:245 http://ftpmaster.internal/ubuntu noble/main s390x libmoo-perl all 2.005005-1 [47.4 kB] Get:246 http://ftpmaster.internal/ubuntu noble/main s390x libstrictures-perl all 2.000006-1 [16.3 kB] Get:247 http://ftpmaster.internal/ubuntu noble/main s390x libmoox-aliases-perl all 0.001006-2 [6796 B] Get:248 http://ftpmaster.internal/ubuntu noble/main s390x libperlio-gzip-perl s390x 0.20-1build1 [14.4 kB] Get:249 http://ftpmaster.internal/ubuntu noble/main s390x libperlio-utf8-strict-perl s390x 0.010-1 [11.1 kB] Get:250 http://ftpmaster.internal/ubuntu noble/main s390x libproc-processtable-perl s390x 0.636-1 [36.3 kB] Get:251 http://ftpmaster.internal/ubuntu noble/main s390x libregexp-wildcards-perl all 1.05-3 [12.9 kB] Get:252 http://ftpmaster.internal/ubuntu noble/main s390x libsereal-decoder-perl s390x 5.004+ds-1 [99.2 kB] Get:253 http://ftpmaster.internal/ubuntu noble/main s390x libsereal-encoder-perl s390x 5.004+ds-1 [101 kB] Get:254 http://ftpmaster.internal/ubuntu noble/main s390x libterm-readkey-perl s390x 2.38-2build1 [22.8 kB] Get:255 http://ftpmaster.internal/ubuntu noble/main s390x libtext-levenshteinxs-perl s390x 0.03-5build1 [8204 B] Get:256 http://ftpmaster.internal/ubuntu noble/main s390x libmarkdown2 s390x 2.2.7-2 [37.2 kB] Get:257 http://ftpmaster.internal/ubuntu noble/main s390x libtext-markdown-discount-perl s390x 0.16-1 [12.2 kB] Get:258 http://ftpmaster.internal/ubuntu noble/main s390x libdata-messagepack-perl s390x 1.02-1build1 [33.4 kB] Get:259 http://ftpmaster.internal/ubuntu noble/main s390x libtext-xslate-perl s390x 3.5.9-1build2 [185 kB] Get:260 http://ftpmaster.internal/ubuntu noble/main s390x libtime-duration-perl all 1.21-2 [12.3 kB] Get:261 http://ftpmaster.internal/ubuntu noble/main s390x libtime-moment-perl s390x 0.44-2build1 [73.3 kB] Get:262 http://ftpmaster.internal/ubuntu noble/main s390x libunicode-utf8-perl s390x 0.62-2 [17.9 kB] Get:263 http://ftpmaster.internal/ubuntu noble-proposed/main s390x libcgi-pm-perl all 4.60-1 [187 kB] Get:264 http://ftpmaster.internal/ubuntu noble/main s390x libhtml-form-perl all 6.11-1 [32.1 kB] Get:265 http://ftpmaster.internal/ubuntu noble/main s390x libwww-mechanize-perl all 2.17-1ubuntu1 [95.6 kB] Get:266 http://ftpmaster.internal/ubuntu noble/main s390x libxml-namespacesupport-perl all 1.12-2 [13.5 kB] Get:267 http://ftpmaster.internal/ubuntu noble/main s390x libxml-sax-base-perl all 1.09-3 [18.9 kB] Get:268 http://ftpmaster.internal/ubuntu noble/main s390x libxml-sax-perl all 1.02+dfsg-3 [57.0 kB] Get:269 http://ftpmaster.internal/ubuntu noble/main s390x libxml-libxml-perl s390x 2.0207+dfsg+really+2.0134-1build1 [311 kB] Get:270 http://ftpmaster.internal/ubuntu noble/main s390x lzip s390x 1.23-6 [79.7 kB] Get:271 http://ftpmaster.internal/ubuntu noble/main s390x liblzo2-2 s390x 2.10-2build3 [49.8 kB] Get:272 http://ftpmaster.internal/ubuntu noble/main s390x lzop s390x 1.04-2build2 [83.1 kB] Get:273 http://ftpmaster.internal/ubuntu noble/main s390x patchutils s390x 0.4.2-1build2 [77.3 kB] Get:274 http://ftpmaster.internal/ubuntu noble/main s390x t1utils s390x 1.41-4build2 [61.5 kB] Get:275 http://ftpmaster.internal/ubuntu noble/main s390x unzip s390x 6.0-28ubuntu1 [169 kB] Get:276 http://ftpmaster.internal/ubuntu noble/main s390x lintian all 2.116.3ubuntu4 [1152 kB] Get:277 http://ftpmaster.internal/ubuntu noble/universe s390x libconfig-model-dpkg-perl all 3.002 [209 kB] Get:278 http://ftpmaster.internal/ubuntu noble/main s390x libconvert-binhex-perl all 1.125-3 [27.1 kB] Get:279 http://ftpmaster.internal/ubuntu noble/main s390x libnet-smtp-ssl-perl all 1.04-2 [6218 B] Get:280 http://ftpmaster.internal/ubuntu noble/main s390x libmailtools-perl all 2.21-2 [80.4 kB] Get:281 http://ftpmaster.internal/ubuntu noble/main s390x libmime-tools-perl all 5.510-3 [193 kB] Get:282 http://ftpmaster.internal/ubuntu noble/main s390x libsuitesparseconfig7 s390x 1:7.3.1+dfsg-2 [11.4 kB] Get:283 http://ftpmaster.internal/ubuntu noble/universe s390x libamd3 s390x 1:7.3.1+dfsg-2 [33.7 kB] Get:284 http://ftpmaster.internal/ubuntu noble/main s390x libblas3 s390x 3.11.0-2build1 [243 kB] Get:285 http://ftpmaster.internal/ubuntu noble/main s390x libgfortran5 s390x 13.2.0-7ubuntu1 [564 kB] Get:286 http://ftpmaster.internal/ubuntu noble/main s390x liblapack3 s390x 3.11.0-2build1 [2840 kB] Get:287 http://ftpmaster.internal/ubuntu noble/universe s390x libarpack2 s390x 3.9.1-1 [111 kB] Get:288 http://ftpmaster.internal/ubuntu noble/universe s390x libccolamd3 s390x 1:7.3.1+dfsg-2 [31.9 kB] Get:289 http://ftpmaster.internal/ubuntu noble/universe s390x libcamd3 s390x 1:7.3.1+dfsg-2 [28.4 kB] Get:290 http://ftpmaster.internal/ubuntu noble/main s390x libcolamd3 s390x 1:7.3.1+dfsg-2 [22.4 kB] Get:291 http://ftpmaster.internal/ubuntu noble/universe s390x libcholmod5 s390x 1:7.3.1+dfsg-2 [673 kB] Get:292 http://ftpmaster.internal/ubuntu noble/main s390x libsasl2-modules-db s390x 2.1.28+dfsg1-4 [20.8 kB] Get:293 http://ftpmaster.internal/ubuntu noble/main s390x libsasl2-2 s390x 2.1.28+dfsg1-4 [58.7 kB] Get:294 http://ftpmaster.internal/ubuntu noble/main s390x libldap2 s390x 2.6.6+dfsg-1~exp1ubuntu1 [199 kB] Get:295 http://ftpmaster.internal/ubuntu noble/main s390x librtmp1 s390x 2.4+20151223.gitfa8646d.1-2build4 [56.4 kB] Get:296 http://ftpmaster.internal/ubuntu noble/main s390x libssh-4 s390x 0.10.5-3ubuntu1 [183 kB] Get:297 http://ftpmaster.internal/ubuntu noble/main s390x libcurl3-gnutls s390x 8.4.0-2ubuntu1 [348 kB] Get:298 http://ftpmaster.internal/ubuntu noble/universe s390x libcxsparse4 s390x 1:7.3.1+dfsg-2 [91.9 kB] Get:299 http://ftpmaster.internal/ubuntu noble/main s390x libfftw3-double3 s390x 3.3.10-1ubuntu1 [465 kB] Get:300 http://ftpmaster.internal/ubuntu noble/main s390x libfftw3-single3 s390x 3.3.10-1ubuntu1 [449 kB] Get:301 http://ftpmaster.internal/ubuntu noble/main s390x libxfixes3 s390x 1:6.0.0-2 [10.6 kB] Get:302 http://ftpmaster.internal/ubuntu noble/main s390x libxcursor1 s390x 1:1.2.1-1 [22.2 kB] Get:303 http://ftpmaster.internal/ubuntu noble/main s390x libxft2 s390x 2.3.6-1 [44.3 kB] Get:304 http://ftpmaster.internal/ubuntu noble/main s390x libxinerama1 s390x 2:1.1.4-3 [7110 B] Get:305 http://ftpmaster.internal/ubuntu noble/universe s390x libfltk1.3 s390x 1.3.8-6 [636 kB] Get:306 http://ftpmaster.internal/ubuntu noble/main s390x libglvnd0 s390x 1.7.0-1 [106 kB] Get:307 http://ftpmaster.internal/ubuntu noble/main s390x libglapi-mesa s390x 23.2.1-1ubuntu4 [65.2 kB] Get:308 http://ftpmaster.internal/ubuntu noble/main s390x libx11-xcb1 s390x 2:1.8.7-1 [7778 B] Get:309 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-dri2-0 s390x 1.15-1 [7426 B] Get:310 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-dri3-0 s390x 1.15-1 [7270 B] Get:311 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-glx0 s390x 1.15-1 [25.8 kB] Get:312 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-present0 s390x 1.15-1 [5752 B] Get:313 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-randr0 s390x 1.15-1 [19.0 kB] Get:314 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-sync1 s390x 1.15-1 [9392 B] Get:315 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-xfixes0 s390x 1.15-1 [10.5 kB] Get:316 http://ftpmaster.internal/ubuntu noble/main s390x libxshmfence1 s390x 1.3-1build4 [5334 B] Get:317 http://ftpmaster.internal/ubuntu noble/main s390x libxxf86vm1 s390x 1:1.1.4-1build3 [9900 B] Get:318 http://ftpmaster.internal/ubuntu noble/main s390x libdrm-amdgpu1 s390x 2.4.117-1 [21.0 kB] Get:319 http://ftpmaster.internal/ubuntu noble/main s390x libdrm-nouveau2 s390x 2.4.117-1 [18.2 kB] Get:320 http://ftpmaster.internal/ubuntu noble/main s390x libdrm-radeon1 s390x 2.4.117-1 [22.1 kB] Get:321 http://ftpmaster.internal/ubuntu noble/main s390x libllvm15 s390x 1:15.0.7-10build1 [29.0 MB] Get:322 http://ftpmaster.internal/ubuntu noble/main s390x libsensors-config all 1:3.6.0-7ubuntu1 [5274 B] Get:323 http://ftpmaster.internal/ubuntu noble/main s390x libsensors5 s390x 1:3.6.0-7ubuntu1 [25.3 kB] Get:324 http://ftpmaster.internal/ubuntu noble/main s390x libgl1-mesa-dri s390x 23.2.1-1ubuntu4 [7069 kB] Get:325 http://ftpmaster.internal/ubuntu noble/main s390x libglx-mesa0 s390x 23.2.1-1ubuntu4 [175 kB] Get:326 http://ftpmaster.internal/ubuntu noble/main s390x libglx0 s390x 1.7.0-1 [31.4 kB] Get:327 http://ftpmaster.internal/ubuntu noble/main s390x libgl1 s390x 1.7.0-1 [137 kB] Get:328 http://ftpmaster.internal/ubuntu noble/universe s390x libfltk-gl1.3 s390x 1.3.8-6 [42.9 kB] Get:329 http://ftpmaster.internal/ubuntu noble/universe s390x libgl2ps1.4 s390x 1.4.2+dfsg1-2 [40.2 kB] Get:330 http://ftpmaster.internal/ubuntu noble/main s390x libltdl7 s390x 2.4.7-7 [41.6 kB] Get:331 http://ftpmaster.internal/ubuntu noble/universe s390x libglpk40 s390x 5.0-1build1 [402 kB] Get:332 http://ftpmaster.internal/ubuntu noble/main s390x libopengl0 s390x 1.7.0-1 [45.9 kB] Get:333 http://ftpmaster.internal/ubuntu noble/main s390x libglu1-mesa s390x 9.0.2-1.1 [145 kB] Get:334 http://ftpmaster.internal/ubuntu noble/universe s390x libdav1d7 s390x 1.3.0-2 [315 kB] Get:335 http://ftpmaster.internal/ubuntu noble/universe s390x libheif-plugin-dav1d s390x 1.17.1-1ubuntu3 [9942 B] Get:336 http://ftpmaster.internal/ubuntu noble/universe s390x libde265-0 s390x 1.0.13-1 [171 kB] Get:337 http://ftpmaster.internal/ubuntu noble/universe s390x libheif-plugin-libde265 s390x 1.17.1-1ubuntu3 [8164 B] Get:338 http://ftpmaster.internal/ubuntu noble/universe s390x libheif1 s390x 1.17.1-1ubuntu3 [293 kB] Get:339 http://ftpmaster.internal/ubuntu noble/universe s390x libhwy1 s390x 1.0.7-8 [235 kB] Get:340 http://ftpmaster.internal/ubuntu noble/main s390x liblcms2-2 s390x 2.14-2 [155 kB] Get:341 http://ftpmaster.internal/ubuntu noble/universe s390x libjxl0.7 s390x 0.7.0-10.2ubuntu1 [779 kB] Get:342 http://ftpmaster.internal/ubuntu noble/main s390x libwebpmux3 s390x 1.3.2-0.3 [25.2 kB] Get:343 http://ftpmaster.internal/ubuntu noble/main s390x libwmflite-0.2-7 s390x 0.2.13-1.1 [71.3 kB] Get:344 http://ftpmaster.internal/ubuntu noble/universe s390x libgraphicsmagick-q16-3 s390x 1.4+really1.3.42-1 [1302 kB] Get:345 http://ftpmaster.internal/ubuntu noble/universe s390x libgraphicsmagick++-q16-12 s390x 1.4+really1.3.42-1 [114 kB] Get:346 http://ftpmaster.internal/ubuntu noble/main s390x libcurl4 s390x 8.4.0-2ubuntu1 [354 kB] Get:347 http://ftpmaster.internal/ubuntu noble/universe s390x libaec0 s390x 1.1.2-1 [25.7 kB] Get:348 http://ftpmaster.internal/ubuntu noble/universe s390x libsz2 s390x 1.1.2-1 [5346 B] Get:349 http://ftpmaster.internal/ubuntu noble/universe s390x libhdf5-103-1 s390x 1.10.8+repack1-1ubuntu1 [1213 kB] Get:350 http://ftpmaster.internal/ubuntu noble/main s390x libasound2-data all 1.2.10-1 [20.6 kB] Get:351 http://ftpmaster.internal/ubuntu noble/main s390x libasound2 s390x 1.2.10-1 [408 kB] Get:352 http://ftpmaster.internal/ubuntu noble/main s390x libopus0 s390x 1.4-1 [203 kB] Get:353 http://ftpmaster.internal/ubuntu noble/main s390x libsamplerate0 s390x 0.2.2-4 [1343 kB] Get:354 http://ftpmaster.internal/ubuntu noble/main s390x libjack-jackd2-0 s390x 1.9.21~dfsg-3 [277 kB] Get:355 http://ftpmaster.internal/ubuntu noble/universe s390x libportaudio2 s390x 19.6.0-1.2 [65.5 kB] Get:356 http://ftpmaster.internal/ubuntu noble/universe s390x libqhull-r8.0 s390x 2020.2-6 [181 kB] Get:357 http://ftpmaster.internal/ubuntu noble/universe s390x libqrupdate1 s390x 1.1.2-4 [30.8 kB] Get:358 http://ftpmaster.internal/ubuntu noble/universe s390x libqscintilla2-qt5-l10n all 2.14.1+dfsg-1 [56.3 kB] Get:359 http://ftpmaster.internal/ubuntu noble/universe s390x libdouble-conversion3 s390x 3.3.0-1 [39.6 kB] Get:360 http://ftpmaster.internal/ubuntu noble/main s390x libpcre2-16-0 s390x 10.42-4 [229 kB] Get:361 http://ftpmaster.internal/ubuntu noble/universe s390x libqt5core5a s390x 5.15.10+dfsg-5 [2224 kB] Get:362 http://ftpmaster.internal/ubuntu noble/main s390x libwayland-server0 s390x 1.22.0-2.1 [34.9 kB] Get:363 http://ftpmaster.internal/ubuntu noble/main s390x libgbm1 s390x 23.2.1-1ubuntu4 [42.0 kB] Get:364 http://ftpmaster.internal/ubuntu noble/main s390x libwayland-client0 s390x 1.22.0-2.1 [26.1 kB] Get:365 http://ftpmaster.internal/ubuntu noble/main s390x libegl-mesa0 s390x 23.2.1-1ubuntu4 [120 kB] Get:366 http://ftpmaster.internal/ubuntu noble/main s390x libegl1 s390x 1.7.0-1 [30.9 kB] Get:367 http://ftpmaster.internal/ubuntu noble/main s390x x11-common all 1:7.7+23ubuntu2 [23.4 kB] Get:368 http://ftpmaster.internal/ubuntu noble/main s390x libice6 s390x 2:1.0.10-1build2 [40.8 kB] Get:369 http://ftpmaster.internal/ubuntu noble/main s390x libevdev2 s390x 1.13.1+dfsg-1 [35.6 kB] Get:370 http://ftpmaster.internal/ubuntu noble/main s390x libmtdev1 s390x 1.1.6-1build4 [14.6 kB] Get:371 http://ftpmaster.internal/ubuntu noble/main s390x libgudev-1.0-0 s390x 1:238-3 [15.3 kB] Get:372 http://ftpmaster.internal/ubuntu noble/main s390x libwacom-common all 2.8.0-1 [61.5 kB] Get:373 http://ftpmaster.internal/ubuntu noble/main s390x libwacom9 s390x 2.8.0-1 [23.0 kB] Get:374 http://ftpmaster.internal/ubuntu noble/main s390x libinput-bin s390x 1.23.0-2 [21.1 kB] Get:375 http://ftpmaster.internal/ubuntu noble/main s390x libinput10 s390x 1.23.0-2 [124 kB] Get:376 http://ftpmaster.internal/ubuntu noble/universe s390x libmd4c0 s390x 0.4.8-1 [43.6 kB] Get:377 http://ftpmaster.internal/ubuntu noble/universe s390x libqt5dbus5 s390x 5.15.10+dfsg-5 [240 kB] Get:378 http://ftpmaster.internal/ubuntu noble/universe s390x libqt5network5 s390x 5.15.10+dfsg-5 [784 kB] Get:379 http://ftpmaster.internal/ubuntu noble/main s390x libsm6 s390x 2:1.2.3-1build2 [16.9 kB] Get:380 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-icccm4 s390x 0.4.1-1.1build2 [11.5 kB] Get:381 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-util1 s390x 0.4.0-1build2 [11.2 kB] Get:382 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-image0 s390x 0.4.0-2 [11.8 kB] Get:383 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-keysyms1 s390x 0.4.0-1build3 [8780 B] Get:384 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-render-util0 s390x 0.3.9-1build3 [10.1 kB] Get:385 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-shape0 s390x 1.15-1 [6146 B] Get:386 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-xinerama0 s390x 1.15-1 [5382 B] Get:387 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-xinput0 s390x 1.15-1 [34.6 kB] Get:388 http://ftpmaster.internal/ubuntu noble/main s390x libxcb-xkb1 s390x 1.15-1 [32.3 kB] Get:389 http://ftpmaster.internal/ubuntu noble/main s390x libxkbcommon0 s390x 1.6.0-1 [129 kB] Get:390 http://ftpmaster.internal/ubuntu noble/main s390x libxkbcommon-x11-0 s390x 1.6.0-1 [14.8 kB] Get:391 http://ftpmaster.internal/ubuntu noble/universe s390x libqt5gui5 s390x 5.15.10+dfsg-5 [4143 kB] Get:392 http://ftpmaster.internal/ubuntu noble/main s390x libavahi-common-data s390x 0.8-13ubuntu2 [29.5 kB] Get:393 http://ftpmaster.internal/ubuntu noble/main s390x libavahi-common3 s390x 0.8-13ubuntu2 [23.8 kB] Get:394 http://ftpmaster.internal/ubuntu noble/main s390x libavahi-client3 s390x 0.8-13ubuntu2 [26.7 kB] Get:395 http://ftpmaster.internal/ubuntu noble/main s390x libcups2 s390x 2.4.6-0ubuntu3 [277 kB] Get:396 http://ftpmaster.internal/ubuntu noble/universe s390x libqt5widgets5 s390x 5.15.10+dfsg-5 [2716 kB] Get:397 http://ftpmaster.internal/ubuntu noble/universe s390x libqt5printsupport5 s390x 5.15.10+dfsg-5 [217 kB] Get:398 http://ftpmaster.internal/ubuntu noble/universe s390x libqscintilla2-qt5-15 s390x 2.14.1+dfsg-1 [1341 kB] Get:399 http://ftpmaster.internal/ubuntu noble/universe s390x libqt5sql5 s390x 5.15.10+dfsg-5 [130 kB] Get:400 http://ftpmaster.internal/ubuntu noble/universe s390x libqt5help5 s390x 5.15.10-5 [172 kB] Get:401 http://ftpmaster.internal/ubuntu noble/universe s390x libqt5xml5 s390x 5.15.10+dfsg-5 [129 kB] Get:402 http://ftpmaster.internal/ubuntu noble/main s390x libogg0 s390x 1.3.5-3 [22.7 kB] Get:403 http://ftpmaster.internal/ubuntu noble/main s390x libflac12 s390x 1.4.3+ds-2ubuntu1 [160 kB] Get:404 http://ftpmaster.internal/ubuntu noble/main s390x libmp3lame0 s390x 3.100-6 [141 kB] Get:405 http://ftpmaster.internal/ubuntu noble/main s390x libmpg123-0 s390x 1.32.3-1 [175 kB] Get:406 http://ftpmaster.internal/ubuntu noble/main s390x libvorbis0a s390x 1.3.7-1build2 [102 kB] Get:407 http://ftpmaster.internal/ubuntu noble/main s390x libvorbisenc2 s390x 1.3.7-1build2 [83.1 kB] Get:408 http://ftpmaster.internal/ubuntu noble/main s390x libsndfile1 s390x 1.2.2-1ubuntu2 [236 kB] Get:409 http://ftpmaster.internal/ubuntu noble/universe s390x libspqr4 s390x 1:7.3.1+dfsg-2 [161 kB] Get:410 http://ftpmaster.internal/ubuntu noble/universe s390x libsundials-ida6 s390x 6.4.1+dfsg1-3build1 [131 kB] Get:411 http://ftpmaster.internal/ubuntu noble/universe s390x libbtf2 s390x 1:7.3.1+dfsg-2 [14.5 kB] Get:412 http://ftpmaster.internal/ubuntu noble/universe s390x libklu2 s390x 1:7.3.1+dfsg-2 [103 kB] Get:413 http://ftpmaster.internal/ubuntu noble/main s390x libfftw3-long3 s390x 3.3.10-1ubuntu1 [506 kB] Get:414 http://ftpmaster.internal/ubuntu noble/main s390x libevent-core-2.1-7 s390x 2.1.12-stable-9 [93.3 kB] Get:415 http://ftpmaster.internal/ubuntu noble/main s390x libevent-pthreads-2.1-7 s390x 2.1.12-stable-9 [7692 B] Get:416 http://ftpmaster.internal/ubuntu noble/main s390x libnl-3-200 s390x 3.7.0-0.2 [56.3 kB] Get:417 http://ftpmaster.internal/ubuntu noble/main s390x libnl-route-3-200 s390x 3.7.0-0.2 [180 kB] Get:418 http://ftpmaster.internal/ubuntu noble/main s390x libibverbs1 s390x 48.0-1 [68.8 kB] Get:419 http://ftpmaster.internal/ubuntu noble/main s390x ibverbs-providers s390x 48.0-1 [399 kB] Get:420 http://ftpmaster.internal/ubuntu noble/main s390x librdmacm1 s390x 48.0-1 [73.8 kB] Get:421 http://ftpmaster.internal/ubuntu noble/universe s390x libfabric1 s390x 1.17.0-3 [513 kB] Get:422 http://ftpmaster.internal/ubuntu noble/universe s390x libhwloc15 s390x 2.9.3-2 [168 kB] Get:423 http://ftpmaster.internal/ubuntu noble/universe s390x libmunge2 s390x 0.5.15-2 [14.4 kB] Get:424 http://ftpmaster.internal/ubuntu noble/main s390x libpciaccess0 s390x 0.17-3 [18.5 kB] Get:425 http://ftpmaster.internal/ubuntu noble/main s390x libxnvctrl0 s390x 510.47.03-0ubuntu1 [11.7 kB] Get:426 http://ftpmaster.internal/ubuntu noble/universe s390x ocl-icd-libopencl1 s390x 2.3.2-1 [39.1 kB] Get:427 http://ftpmaster.internal/ubuntu noble/universe s390x libhwloc-plugins s390x 2.9.3-2 [16.1 kB] Get:428 http://ftpmaster.internal/ubuntu noble/universe s390x libpmix2 s390x 5.0.1-3ubuntu1 [715 kB] Get:429 http://ftpmaster.internal/ubuntu noble/universe s390x libopenmpi3 s390x 4.1.6-1ubuntu1 [2415 kB] Get:430 http://ftpmaster.internal/ubuntu noble/universe s390x libfftw3-mpi3 s390x 3.3.10-1ubuntu1 [50.6 kB] Get:431 http://ftpmaster.internal/ubuntu noble/universe s390x libhdf5-openmpi-103-1 s390x 1.10.8+repack1-1ubuntu1 [1253 kB] Get:432 http://ftpmaster.internal/ubuntu noble/universe s390x libcombblas2.0.0 s390x 2.0.0-3 [269 kB] Get:433 http://ftpmaster.internal/ubuntu noble/universe s390x libmetis5 s390x 5.1.0.dfsg-7build2 [180 kB] Get:434 http://ftpmaster.internal/ubuntu noble/universe s390x libptscotch-7.0 s390x 7.0.4-1 [827 kB] Get:435 http://ftpmaster.internal/ubuntu noble/universe s390x libsuperlu-dist8 s390x 8.1.2+dfsg1-2 [784 kB] Get:436 http://ftpmaster.internal/ubuntu noble/universe s390x libhypre-2.28.0 s390x 2.28.0-7 [2150 kB] Get:437 http://ftpmaster.internal/ubuntu noble/universe s390x openmpi-common all 4.1.6-1ubuntu1 [169 kB] Get:438 http://ftpmaster.internal/ubuntu noble/universe s390x openmpi-bin s390x 4.1.6-1ubuntu1 [84.3 kB] Get:439 http://ftpmaster.internal/ubuntu noble/universe s390x mpi-default-bin s390x 1.15 [2338 B] Get:440 http://ftpmaster.internal/ubuntu noble/universe s390x libscalapack-openmpi2.2 s390x 2.2.1-3 [1945 kB] Get:441 http://ftpmaster.internal/ubuntu noble/universe s390x libmumps-5.6 s390x 5.6.1-1ubuntu1 [2289 kB] Get:442 http://ftpmaster.internal/ubuntu noble/universe s390x libsuperlu6 s390x 6.0.1+dfsg1-1 [232 kB] Get:443 http://ftpmaster.internal/ubuntu noble/universe s390x libscotch-7.0 s390x 7.0.4-1 [516 kB] Get:444 http://ftpmaster.internal/ubuntu noble/universe s390x libtrilinos-kokkos-13.2 s390x 13.2.0-5 [112 kB] Get:445 http://ftpmaster.internal/ubuntu noble/universe s390x libtrilinos-teuchos-13.2 s390x 13.2.0-5 [1184 kB] Get:446 http://ftpmaster.internal/ubuntu noble/universe s390x libtrilinos-epetra-13.2 s390x 13.2.0-5 [517 kB] Get:447 http://ftpmaster.internal/ubuntu noble/universe s390x libtrilinos-triutils-13.2 s390x 13.2.0-5 [138 kB] Get:448 http://ftpmaster.internal/ubuntu noble/universe s390x libtrilinos-epetraext-13.2 s390x 13.2.0-5 [485 kB] Get:449 http://ftpmaster.internal/ubuntu noble/universe s390x libtrilinos-trilinosss-13.2 s390x 13.2.0-5 [124 kB] Get:450 http://ftpmaster.internal/ubuntu noble/universe s390x libtrilinos-amesos-13.2 s390x 13.2.0-5 [111 kB] Get:451 http://ftpmaster.internal/ubuntu noble/universe s390x libtrilinos-aztecoo-13.2 s390x 13.2.0-5 [252 kB] Get:452 http://ftpmaster.internal/ubuntu noble/universe s390x libtrilinos-galeri-13.2 s390x 13.2.0-5 [100 kB] Get:453 http://ftpmaster.internal/ubuntu noble/universe s390x libtrilinos-ifpack-13.2 s390x 13.2.0-5 [467 kB] Get:454 http://ftpmaster.internal/ubuntu noble/universe s390x libtrilinos-zoltan-13.2 s390x 13.2.0-5 [445 kB] Get:455 http://ftpmaster.internal/ubuntu noble/universe s390x libtrilinos-ml-13.2 s390x 13.2.0-5 [1132 kB] Get:456 http://ftpmaster.internal/ubuntu noble/universe s390x libumfpack6 s390x 1:7.3.1+dfsg-2 [353 kB] Get:457 http://ftpmaster.internal/ubuntu noble/universe s390x libpetsc-real3.18 s390x 3.18.6+dfsg1-1ubuntu3 [6808 kB] Get:458 http://ftpmaster.internal/ubuntu noble/universe s390x libsundials-nvecparallel-petsc6 s390x 6.4.1+dfsg1-3build1 [37.8 kB] Get:459 http://ftpmaster.internal/ubuntu noble/universe s390x libsundials-sunmatrix4 s390x 6.4.1+dfsg1-3build1 [86.8 kB] Get:460 http://ftpmaster.internal/ubuntu noble/universe s390x libsundials-sunlinsol3 s390x 6.4.1+dfsg1-3build1 [178 kB] Get:461 http://ftpmaster.internal/ubuntu noble/universe s390x libtext-unidecode-perl all 1.30-3 [105 kB] Get:462 http://ftpmaster.internal/ubuntu noble/universe s390x texinfo-lib s390x 7.1-2 [138 kB] Get:463 http://ftpmaster.internal/ubuntu noble/universe s390x tex-common all 6.18 [32.8 kB] Get:464 http://ftpmaster.internal/ubuntu noble/universe s390x texinfo all 7.1-2 [1273 kB] Get:465 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x octave-common all 8.4.0-1build1 [5924 kB] Get:466 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x octave s390x 8.4.0-1build1 [10.1 MB] Get:467 http://ftpmaster.internal/ubuntu noble/main s390x libncurses-dev s390x 6.4+20231121-1build1 [406 kB] Get:468 http://ftpmaster.internal/ubuntu noble-proposed/main s390x libreadline-dev s390x 8.2-3 [187 kB] Get:469 http://ftpmaster.internal/ubuntu noble/universe s390x libhdf5-fortran-102 s390x 1.10.8+repack1-1ubuntu1 [86.8 kB] Get:470 http://ftpmaster.internal/ubuntu noble/universe s390x libhdf5-hl-100 s390x 1.10.8+repack1-1ubuntu1 [54.9 kB] Get:471 http://ftpmaster.internal/ubuntu noble/universe s390x libhdf5-hl-fortran-100 s390x 1.10.8+repack1-1ubuntu1 [30.5 kB] Get:472 http://ftpmaster.internal/ubuntu noble/universe s390x libhdf5-cpp-103-1 s390x 1.10.8+repack1-1ubuntu1 [117 kB] Get:473 http://ftpmaster.internal/ubuntu noble/universe s390x libhdf5-hl-cpp-100 s390x 1.10.8+repack1-1ubuntu1 [10.7 kB] Get:474 http://ftpmaster.internal/ubuntu noble-proposed/main s390x zlib1g-dev s390x 1:1.3.dfsg-3ubuntu1 [905 kB] Get:475 http://ftpmaster.internal/ubuntu noble/main s390x libjpeg-turbo8-dev s390x 2.1.5-2ubuntu1 [264 kB] Get:476 http://ftpmaster.internal/ubuntu noble/main s390x libjpeg8-dev s390x 8c-2ubuntu11 [1484 B] Get:477 http://ftpmaster.internal/ubuntu noble/main s390x libjpeg-dev s390x 8c-2ubuntu11 [1484 B] Get:478 http://ftpmaster.internal/ubuntu noble/universe s390x libaec-dev s390x 1.1.2-1 [23.1 kB] Get:479 http://ftpmaster.internal/ubuntu noble/main s390x libcurl4-openssl-dev s390x 8.4.0-2ubuntu1 [463 kB] Get:480 http://ftpmaster.internal/ubuntu noble/main s390x libssl-dev s390x 3.0.10-1ubuntu3 [2106 kB] Get:481 http://ftpmaster.internal/ubuntu noble/universe s390x hdf5-helpers s390x 1.10.8+repack1-1ubuntu1 [13.9 kB] Get:482 http://ftpmaster.internal/ubuntu noble/universe s390x libhdf5-dev s390x 1.10.8+repack1-1ubuntu1 [2677 kB] Get:483 http://ftpmaster.internal/ubuntu noble/main s390x xorg-sgml-doctools all 1:1.11-1.1 [10.9 kB] Get:484 http://ftpmaster.internal/ubuntu noble/main s390x x11proto-dev all 2023.2-1 [602 kB] Get:485 http://ftpmaster.internal/ubuntu noble/main s390x libxau-dev s390x 1:1.0.9-1build5 [9702 B] Get:486 http://ftpmaster.internal/ubuntu noble/main s390x libxdmcp-dev s390x 1:1.1.3-0ubuntu5 [26.5 kB] Get:487 http://ftpmaster.internal/ubuntu noble/main s390x xtrans-dev all 1.4.0-1 [68.9 kB] Get:488 http://ftpmaster.internal/ubuntu noble/main s390x libpthread-stubs0-dev s390x 0.4-1build2 [5508 B] Get:489 http://ftpmaster.internal/ubuntu noble/main s390x libxcb1-dev s390x 1.15-1 [86.5 kB] Get:490 http://ftpmaster.internal/ubuntu noble/main s390x libx11-dev s390x 2:1.8.7-1 [758 kB] Get:491 http://ftpmaster.internal/ubuntu noble/main s390x libglx-dev s390x 1.7.0-1 [14.2 kB] Get:492 http://ftpmaster.internal/ubuntu noble/main s390x libgl-dev s390x 1.7.0-1 [102 kB] Get:493 http://ftpmaster.internal/ubuntu noble/main s390x libblas-dev s390x 3.11.0-2build1 [237 kB] Get:494 http://ftpmaster.internal/ubuntu noble/main s390x liblapack-dev s390x 3.11.0-2build1 [5660 kB] Get:495 http://ftpmaster.internal/ubuntu noble/main s390x libfftw3-bin s390x 3.3.10-1ubuntu1 [33.3 kB] Get:496 http://ftpmaster.internal/ubuntu noble/main s390x libfftw3-dev s390x 3.3.10-1ubuntu1 [1242 kB] Get:497 http://ftpmaster.internal/ubuntu noble/main s390x libgfortran-13-dev s390x 13.2.0-7ubuntu1 [623 kB] Get:498 http://ftpmaster.internal/ubuntu noble/main s390x gfortran-13 s390x 13.2.0-7ubuntu1 [9498 kB] Get:499 http://ftpmaster.internal/ubuntu noble-proposed/main s390x gfortran s390x 4:13.2.0-2ubuntu1 [1186 B] Get:500 http://ftpmaster.internal/ubuntu noble-proposed/universe s390x octave-dev s390x 8.4.0-1build1 [472 kB] Get:501 http://ftpmaster.internal/ubuntu noble/universe s390x dh-octave all 1.5.1 [21.1 kB] Preconfiguring packages ... Fetched 201 MB in 19s (10.5 MB/s) Selecting previously unselected package sgml-base. (Reading database ... 13421 files and directories currently installed.) Preparing to unpack .../000-sgml-base_1.31_all.deb ... Unpacking sgml-base (1.31) ... Selecting previously unselected package iso-codes. Preparing to unpack .../001-iso-codes_4.15.0-1_all.deb ... Unpacking iso-codes (4.15.0-1) ... Selecting previously unselected package libbsd0:s390x. Preparing to unpack .../002-libbsd0_0.11.7-4_s390x.deb ... Unpacking libbsd0:s390x (0.11.7-4) ... Selecting previously unselected package libdbus-1-3:s390x. Preparing to unpack .../003-libdbus-1-3_1.14.10-1ubuntu1_s390x.deb ... Unpacking libdbus-1-3:s390x (1.14.10-1ubuntu1) ... Selecting previously unselected package libelf1:s390x. Preparing to unpack .../004-libelf1_0.190-1_s390x.deb ... Unpacking libelf1:s390x (0.190-1) ... Selecting previously unselected package libexpat1:s390x. Preparing to unpack .../005-libexpat1_2.5.0-2_s390x.deb ... Unpacking libexpat1:s390x (2.5.0-2) ... Selecting previously unselected package libfribidi0:s390x. Preparing to unpack .../006-libfribidi0_1.0.13-3_s390x.deb ... Unpacking libfribidi0:s390x (1.0.13-3) ... Selecting previously unselected package libglib2.0-0:s390x. Preparing to unpack .../007-libglib2.0-0_2.78.1-4_s390x.deb ... Unpacking libglib2.0-0:s390x (2.78.1-4) ... Selecting previously unselected package libicu72:s390x. Preparing to unpack .../008-libicu72_72.1-3ubuntu3_s390x.deb ... Unpacking libicu72:s390x (72.1-3ubuntu3) ... Selecting previously unselected package libxml2:s390x. Preparing to unpack .../009-libxml2_2.9.14+dfsg-1.3build2_s390x.deb ... Unpacking libxml2:s390x (2.9.14+dfsg-1.3build2) ... Selecting previously unselected package libyaml-0-2:s390x. Preparing to unpack .../010-libyaml-0-2_0.2.5-1_s390x.deb ... Unpacking libyaml-0-2:s390x (0.2.5-1) ... Selecting previously unselected package netbase. Preparing to unpack .../011-netbase_6.4_all.deb ... Unpacking netbase (6.4) ... Selecting previously unselected package shared-mime-info. Preparing to unpack .../012-shared-mime-info_2.4-1_s390x.deb ... Unpacking shared-mime-info (2.4-1) ... Selecting previously unselected package ucf. Preparing to unpack .../013-ucf_3.0043+nmu1_all.deb ... Moving old data out of the way Unpacking ucf (3.0043+nmu1) ... Selecting previously unselected package xkb-data. Preparing to unpack .../014-xkb-data_2.38-2_all.deb ... Unpacking xkb-data (2.38-2) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../015-libmagic-mgc_1%3a5.45-2_s390x.deb ... Unpacking libmagic-mgc (1:5.45-2) ... Selecting previously unselected package libmagic1:s390x. Preparing to unpack .../016-libmagic1_1%3a5.45-2_s390x.deb ... Unpacking libmagic1:s390x (1:5.45-2) ... Selecting previously unselected package file. Preparing to unpack .../017-file_1%3a5.45-2_s390x.deb ... Unpacking file (1:5.45-2) ... Selecting previously unselected package gettext-base. Preparing to unpack .../018-gettext-base_0.21-13build1_s390x.deb ... Unpacking gettext-base (0.21-13build1) ... Selecting previously unselected package libuchardet0:s390x. Preparing to unpack .../019-libuchardet0_0.0.7-1build2_s390x.deb ... Unpacking libuchardet0:s390x (0.0.7-1build2) ... Selecting previously unselected package groff-base. Preparing to unpack .../020-groff-base_1.23.0-3_s390x.deb ... Unpacking groff-base (1.23.0-3) ... Selecting previously unselected package libdrm-common. Preparing to unpack .../021-libdrm-common_2.4.117-1_all.deb ... Unpacking libdrm-common (2.4.117-1) ... Selecting previously unselected package libdrm2:s390x. Preparing to unpack .../022-libdrm2_2.4.117-1_s390x.deb ... Unpacking libdrm2:s390x (2.4.117-1) ... Selecting previously unselected package libedit2:s390x. Preparing to unpack .../023-libedit2_3.1-20230828-1_s390x.deb ... Unpacking libedit2:s390x (3.1-20230828-1) ... Selecting previously unselected package libcbor0.10:s390x. Preparing to unpack .../024-libcbor0.10_0.10.2-1.1ubuntu1_s390x.deb ... Unpacking libcbor0.10:s390x (0.10.2-1.1ubuntu1) ... Selecting previously unselected package libfido2-1:s390x. Preparing to unpack .../025-libfido2-1_1.14.0-1_s390x.deb ... Unpacking libfido2-1:s390x (1.14.0-1) ... Selecting previously unselected package libncurses6:s390x. Preparing to unpack .../026-libncurses6_6.4+20231121-1build1_s390x.deb ... Unpacking libncurses6:s390x (6.4+20231121-1build1) ... Selecting previously unselected package libnghttp2-14:s390x. Preparing to unpack .../027-libnghttp2-14_1.58.0-1_s390x.deb ... Unpacking libnghttp2-14:s390x (1.58.0-1) ... Selecting previously unselected package libpipeline1:s390x. Preparing to unpack .../028-libpipeline1_1.5.7-1_s390x.deb ... Unpacking libpipeline1:s390x (1.5.7-1) ... Selecting previously unselected package libpsl5:s390x. Preparing to unpack .../029-libpsl5_0.21.2-1build1_s390x.deb ... Unpacking libpsl5:s390x (0.21.2-1build1) ... Selecting previously unselected package libxau6:s390x. Preparing to unpack .../030-libxau6_1%3a1.0.9-1build5_s390x.deb ... Unpacking libxau6:s390x (1:1.0.9-1build5) ... Selecting previously unselected package libxdmcp6:s390x. Preparing to unpack .../031-libxdmcp6_1%3a1.1.3-0ubuntu5_s390x.deb ... Unpacking libxdmcp6:s390x (1:1.1.3-0ubuntu5) ... Selecting previously unselected package libxcb1:s390x. Preparing to unpack .../032-libxcb1_1.15-1_s390x.deb ... Unpacking libxcb1:s390x (1.15-1) ... Selecting previously unselected package libx11-data. Preparing to unpack .../033-libx11-data_2%3a1.8.7-1_all.deb ... Unpacking libx11-data (2:1.8.7-1) ... Selecting previously unselected package libx11-6:s390x. Preparing to unpack .../034-libx11-6_2%3a1.8.7-1_s390x.deb ... Unpacking libx11-6:s390x (2:1.8.7-1) ... Selecting previously unselected package libxext6:s390x. Preparing to unpack .../035-libxext6_2%3a1.3.4-1build1_s390x.deb ... Unpacking libxext6:s390x (2:1.3.4-1build1) ... Selecting previously unselected package man-db. Preparing to unpack .../036-man-db_2.12.0-1_s390x.deb ... Unpacking man-db (2.12.0-1) ... Selecting previously unselected package openssh-client. Preparing to unpack .../037-openssh-client_1%3a9.4p1-1ubuntu1_s390x.deb ... Unpacking openssh-client (1:9.4p1-1ubuntu1) ... Selecting previously unselected package m4. Preparing to unpack .../038-m4_1.4.19-4_s390x.deb ... Unpacking m4 (1.4.19-4) ... Selecting previously unselected package autoconf. Preparing to unpack .../039-autoconf_2.71-3_all.deb ... Unpacking autoconf (2.71-3) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../040-autotools-dev_20220109.1_all.deb ... Unpacking autotools-dev (20220109.1) ... Selecting previously unselected package automake. Preparing to unpack .../041-automake_1%3a1.16.5-1.3_all.deb ... Unpacking automake (1:1.16.5-1.3) ... Selecting previously unselected package autopoint. Preparing to unpack .../042-autopoint_0.21-13build1_all.deb ... Unpacking autopoint (0.21-13build1) ... Selecting previously unselected package libcapture-tiny-perl. Preparing to unpack .../043-libcapture-tiny-perl_0.48-2_all.deb ... Unpacking libcapture-tiny-perl (0.48-2) ... Selecting previously unselected package libparams-util-perl. Preparing to unpack .../044-libparams-util-perl_1.102-2_s390x.deb ... Unpacking libparams-util-perl (1.102-2) ... Selecting previously unselected package libsub-install-perl. Preparing to unpack .../045-libsub-install-perl_0.929-1_all.deb ... Unpacking libsub-install-perl (0.929-1) ... Selecting previously unselected package libdata-optlist-perl. Preparing to unpack .../046-libdata-optlist-perl_0.114-1_all.deb ... Unpacking libdata-optlist-perl (0.114-1) ... Selecting previously unselected package libb-hooks-op-check-perl:s390x. Preparing to unpack .../047-libb-hooks-op-check-perl_0.22-2build1_s390x.deb ... Unpacking libb-hooks-op-check-perl:s390x (0.22-2build1) ... Selecting previously unselected package libdynaloader-functions-perl. Preparing to unpack .../048-libdynaloader-functions-perl_0.003-3_all.deb ... Unpacking libdynaloader-functions-perl (0.003-3) ... Selecting previously unselected package libdevel-callchecker-perl:s390x. Preparing to unpack .../049-libdevel-callchecker-perl_0.008-2_s390x.deb ... Unpacking libdevel-callchecker-perl:s390x (0.008-2) ... Selecting previously unselected package libparams-classify-perl:s390x. Preparing to unpack .../050-libparams-classify-perl_0.015-2build2_s390x.deb ... Unpacking libparams-classify-perl:s390x (0.015-2build2) ... Selecting previously unselected package libmodule-runtime-perl. Preparing to unpack .../051-libmodule-runtime-perl_0.016-2_all.deb ... Unpacking libmodule-runtime-perl (0.016-2) ... Selecting previously unselected package libtry-tiny-perl. Preparing to unpack .../052-libtry-tiny-perl_0.31-2_all.deb ... Unpacking libtry-tiny-perl (0.31-2) ... Selecting previously unselected package libmodule-implementation-perl. Preparing to unpack .../053-libmodule-implementation-perl_0.09-2_all.deb ... Unpacking libmodule-implementation-perl (0.09-2) ... Selecting previously unselected package libpackage-stash-perl. Preparing to unpack .../054-libpackage-stash-perl_0.40-1_all.deb ... Unpacking libpackage-stash-perl (0.40-1) ... Selecting previously unselected package libclass-load-perl. Preparing to unpack .../055-libclass-load-perl_0.25-2_all.deb ... Unpacking libclass-load-perl (0.25-2) ... Selecting previously unselected package libio-stringy-perl. Preparing to unpack .../056-libio-stringy-perl_2.111-3_all.deb ... Unpacking libio-stringy-perl (2.111-3) ... Selecting previously unselected package libparams-validate-perl:s390x. Preparing to unpack .../057-libparams-validate-perl_1.31-1_s390x.deb ... Unpacking libparams-validate-perl:s390x (1.31-1) ... Selecting previously unselected package libsub-exporter-perl. Preparing to unpack .../058-libsub-exporter-perl_0.990-1_all.deb ... Unpacking libsub-exporter-perl (0.990-1) ... Selecting previously unselected package libgetopt-long-descriptive-perl. Preparing to unpack .../059-libgetopt-long-descriptive-perl_0.111-1_all.deb ... Unpacking libgetopt-long-descriptive-perl (0.111-1) ... Selecting previously unselected package libio-tiecombine-perl. Preparing to unpack .../060-libio-tiecombine-perl_1.005-3_all.deb ... Unpacking libio-tiecombine-perl (1.005-3) ... Selecting previously unselected package libmodule-pluggable-perl. Preparing to unpack .../061-libmodule-pluggable-perl_5.2-4_all.deb ... Unpacking libmodule-pluggable-perl (5.2-4) ... Selecting previously unselected package libstring-rewriteprefix-perl. Preparing to unpack .../062-libstring-rewriteprefix-perl_0.009-1_all.deb ... Unpacking libstring-rewriteprefix-perl (0.009-1) ... Selecting previously unselected package libapp-cmd-perl. Preparing to unpack .../063-libapp-cmd-perl_0.336-1_all.deb ... Unpacking libapp-cmd-perl (0.336-1) ... Selecting previously unselected package libboolean-perl. Preparing to unpack .../064-libboolean-perl_0.46-3_all.deb ... Unpacking libboolean-perl (0.46-3) ... Selecting previously unselected package libsub-uplevel-perl. Preparing to unpack .../065-libsub-uplevel-perl_0.2800-3_all.deb ... Unpacking libsub-uplevel-perl (0.2800-3) ... Selecting previously unselected package libtest-exception-perl. Preparing to unpack .../066-libtest-exception-perl_0.43-3_all.deb ... Unpacking libtest-exception-perl (0.43-3) ... Selecting previously unselected package libcarp-assert-more-perl. Preparing to unpack .../067-libcarp-assert-more-perl_2.3.0-1_all.deb ... Unpacking libcarp-assert-more-perl (2.3.0-1) ... Selecting previously unselected package libfile-which-perl. Preparing to unpack .../068-libfile-which-perl_1.27-2_all.deb ... Unpacking libfile-which-perl (1.27-2) ... Selecting previously unselected package libfile-homedir-perl. Preparing to unpack .../069-libfile-homedir-perl_1.006-2_all.deb ... Unpacking libfile-homedir-perl (1.006-2) ... Selecting previously unselected package libclone-choose-perl. Preparing to unpack .../070-libclone-choose-perl_0.010-2_all.deb ... Unpacking libclone-choose-perl (0.010-2) ... Selecting previously unselected package libhash-merge-perl. Preparing to unpack .../071-libhash-merge-perl_0.302-1_all.deb ... Unpacking libhash-merge-perl (0.302-1) ... Selecting previously unselected package libjson-perl. Preparing to unpack .../072-libjson-perl_4.10000-1_all.deb ... Unpacking libjson-perl (4.10000-1) ... Selecting previously unselected package libexporter-tiny-perl. Preparing to unpack .../073-libexporter-tiny-perl_1.006002-1_all.deb ... Unpacking libexporter-tiny-perl (1.006002-1) ... Selecting previously unselected package liblist-moreutils-xs-perl. Preparing to unpack .../074-liblist-moreutils-xs-perl_0.430-3build2_s390x.deb ... Unpacking liblist-moreutils-xs-perl (0.430-3build2) ... Selecting previously unselected package liblist-moreutils-perl. Preparing to unpack .../075-liblist-moreutils-perl_0.430-2_all.deb ... Unpacking liblist-moreutils-perl (0.430-2) ... Selecting previously unselected package liblog-log4perl-perl. Preparing to unpack .../076-liblog-log4perl-perl_1.57-1_all.deb ... Unpacking liblog-log4perl-perl (1.57-1) ... Selecting previously unselected package libmouse-perl. Preparing to unpack .../077-libmouse-perl_2.5.10-1build5_s390x.deb ... Unpacking libmouse-perl (2.5.10-1build5) ... Selecting previously unselected package libmousex-nativetraits-perl. Preparing to unpack .../078-libmousex-nativetraits-perl_1.09-3_all.deb ... Unpacking libmousex-nativetraits-perl (1.09-3) ... Selecting previously unselected package libmousex-strictconstructor-perl. Preparing to unpack .../079-libmousex-strictconstructor-perl_0.02-3_all.deb ... Unpacking libmousex-strictconstructor-perl (0.02-3) ... Selecting previously unselected package libparse-recdescent-perl. Preparing to unpack .../080-libparse-recdescent-perl_1.967015+dfsg-4_all.deb ... Unpacking libparse-recdescent-perl (1.967015+dfsg-4) ... Selecting previously unselected package libpath-tiny-perl. Preparing to unpack .../081-libpath-tiny-perl_0.144-1_all.deb ... Unpacking libpath-tiny-perl (0.144-1) ... Selecting previously unselected package libpod-pom-perl. Preparing to unpack .../082-libpod-pom-perl_2.01-4_all.deb ... Unpacking libpod-pom-perl (2.01-4) ... Selecting previously unselected package libregexp-common-perl. Preparing to unpack .../083-libregexp-common-perl_2017060201-3_all.deb ... Unpacking libregexp-common-perl (2017060201-3) ... Selecting previously unselected package libyaml-tiny-perl. Preparing to unpack .../084-libyaml-tiny-perl_1.74-1_all.deb ... Unpacking libyaml-tiny-perl (1.74-1) ... Selecting previously unselected package libconfig-model-perl. Preparing to unpack .../085-libconfig-model-perl_2.153-3_all.deb ... Unpacking libconfig-model-perl (2.153-3) ... Selecting previously unselected package libyaml-pp-perl. Preparing to unpack .../086-libyaml-pp-perl_0.37.0-1_all.deb ... Unpacking libyaml-pp-perl (0.37.0-1) ... Selecting previously unselected package cme. Preparing to unpack .../087-cme_1.038-2_all.deb ... Unpacking cme (1.038-2) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../088-libdebhelper-perl_13.11.8ubuntu1_all.deb ... Unpacking libdebhelper-perl (13.11.8ubuntu1) ... Selecting previously unselected package libtool. Preparing to unpack .../089-libtool_2.4.7-7_all.deb ... Unpacking libtool (2.4.7-7) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../090-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../091-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libsub-override-perl. Preparing to unpack .../092-libsub-override-perl_0.09-4_all.deb ... Unpacking libsub-override-perl (0.09-4) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../093-libfile-stripnondeterminism-perl_1.13.1-1_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.13.1-1) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../094-dh-strip-nondeterminism_1.13.1-1_all.deb ... Unpacking dh-strip-nondeterminism (1.13.1-1) ... Selecting previously unselected package libdw1:s390x. Preparing to unpack .../095-libdw1_0.190-1_s390x.deb ... Unpacking libdw1:s390x (0.190-1) ... Selecting previously unselected package debugedit. Preparing to unpack .../096-debugedit_1%3a5.0-5_s390x.deb ... Unpacking debugedit (1:5.0-5) ... Selecting previously unselected package dwz. Preparing to unpack .../097-dwz_0.15-1_s390x.deb ... Unpacking dwz (0.15-1) ... Selecting previously unselected package gettext. Preparing to unpack .../098-gettext_0.21-13build1_s390x.deb ... Unpacking gettext (0.21-13build1) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../099-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../100-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../101-debhelper_13.11.8ubuntu1_all.deb ... Unpacking debhelper (13.11.8ubuntu1) ... Selecting previously unselected package aglfn. Preparing to unpack .../102-aglfn_1.7+git20191031.4036a9c-2_all.deb ... Unpacking aglfn (1.7+git20191031.4036a9c-2) ... Selecting previously unselected package gnuplot-data. Preparing to unpack .../103-gnuplot-data_5.4.4+dfsg1-2build1_all.deb ... Unpacking gnuplot-data (5.4.4+dfsg1-2build1) ... Selecting previously unselected package libbrotli1:s390x. Preparing to unpack .../104-libbrotli1_1.1.0-2_s390x.deb ... Unpacking libbrotli1:s390x (1.1.0-2) ... Selecting previously unselected package libfreetype6:s390x. Preparing to unpack .../105-libfreetype6_2.13.2+dfsg-1_s390x.deb ... Unpacking libfreetype6:s390x (2.13.2+dfsg-1) ... Selecting previously unselected package fonts-noto-mono. Preparing to unpack .../106-fonts-noto-mono_20201225-2_all.deb ... Unpacking fonts-noto-mono (20201225-2) ... Selecting previously unselected package fonts-noto-core. Preparing to unpack .../107-fonts-noto-core_20201225-2_all.deb ... Unpacking fonts-noto-core (20201225-2) ... Selecting previously unselected package fonts-freefont-otf. Preparing to unpack .../108-fonts-freefont-otf_20211204+svn4273-2_all.deb ... Unpacking fonts-freefont-otf (20211204+svn4273-2) ... Selecting previously unselected package fontconfig-config. Preparing to unpack .../109-fontconfig-config_2.14.2-4ubuntu1_s390x.deb ... Unpacking fontconfig-config (2.14.2-4ubuntu1) ... Selecting previously unselected package libfontconfig1:s390x. Preparing to unpack .../110-libfontconfig1_2.14.2-4ubuntu1_s390x.deb ... Unpacking libfontconfig1:s390x (2.14.2-4ubuntu1) ... Selecting previously unselected package libpixman-1-0:s390x. Preparing to unpack .../111-libpixman-1-0_0.42.2-1_s390x.deb ... Unpacking libpixman-1-0:s390x (0.42.2-1) ... Selecting previously unselected package libxcb-render0:s390x. Preparing to unpack .../112-libxcb-render0_1.15-1_s390x.deb ... Unpacking libxcb-render0:s390x (1.15-1) ... Selecting previously unselected package libxcb-shm0:s390x. Preparing to unpack .../113-libxcb-shm0_1.15-1_s390x.deb ... Unpacking libxcb-shm0:s390x (1.15-1) ... Selecting previously unselected package libxrender1:s390x. Preparing to unpack .../114-libxrender1_1%3a0.9.10-1.1_s390x.deb ... Unpacking libxrender1:s390x (1:0.9.10-1.1) ... Selecting previously unselected package libcairo2:s390x. Preparing to unpack .../115-libcairo2_1.18.0-1_s390x.deb ... Unpacking libcairo2:s390x (1.18.0-1) ... Selecting previously unselected package libjpeg-turbo8:s390x. Preparing to unpack .../116-libjpeg-turbo8_2.1.5-2ubuntu1_s390x.deb ... Unpacking libjpeg-turbo8:s390x (2.1.5-2ubuntu1) ... Selecting previously unselected package libjpeg8:s390x. Preparing to unpack .../117-libjpeg8_8c-2ubuntu11_s390x.deb ... Unpacking libjpeg8:s390x (8c-2ubuntu11) ... Selecting previously unselected package libdeflate0:s390x. Preparing to unpack .../118-libdeflate0_1.18-1_s390x.deb ... Unpacking libdeflate0:s390x (1.18-1) ... Selecting previously unselected package libjbig0:s390x. Preparing to unpack .../119-libjbig0_2.1-6.1ubuntu1_s390x.deb ... Unpacking libjbig0:s390x (2.1-6.1ubuntu1) ... Selecting previously unselected package libsharpyuv0:s390x. Preparing to unpack .../120-libsharpyuv0_1.3.2-0.3_s390x.deb ... Unpacking libsharpyuv0:s390x (1.3.2-0.3) ... Selecting previously unselected package libwebp7:s390x. Preparing to unpack .../121-libwebp7_1.3.2-0.3_s390x.deb ... Unpacking libwebp7:s390x (1.3.2-0.3) ... Selecting previously unselected package libtiff6:s390x. Preparing to unpack .../122-libtiff6_4.5.1+git230720-1ubuntu1_s390x.deb ... Unpacking libtiff6:s390x (4.5.1+git230720-1ubuntu1) ... Selecting previously unselected package libxpm4:s390x. Preparing to unpack .../123-libxpm4_1%3a3.5.12-1.1ubuntu1_s390x.deb ... Unpacking libxpm4:s390x (1:3.5.12-1.1ubuntu1) ... Selecting previously unselected package libgd3:s390x. Preparing to unpack .../124-libgd3_2.3.3-9ubuntu1_s390x.deb ... Unpacking libgd3:s390x (2.3.3-9ubuntu1) ... Selecting previously unselected package liblua5.4-0:s390x. Preparing to unpack .../125-liblua5.4-0_5.4.6-0ubuntu2_s390x.deb ... Unpacking liblua5.4-0:s390x (5.4.6-0ubuntu2) ... Selecting previously unselected package fontconfig. Preparing to unpack .../126-fontconfig_2.14.2-4ubuntu1_s390x.deb ... Unpacking fontconfig (2.14.2-4ubuntu1) ... Selecting previously unselected package libgraphite2-3:s390x. Preparing to unpack .../127-libgraphite2-3_1.3.14-1build2_s390x.deb ... Unpacking libgraphite2-3:s390x (1.3.14-1build2) ... Selecting previously unselected package libharfbuzz0b:s390x. Preparing to unpack .../128-libharfbuzz0b_8.0.1-1_s390x.deb ... Unpacking libharfbuzz0b:s390x (8.0.1-1) ... Selecting previously unselected package libthai-data. Preparing to unpack .../129-libthai-data_0.1.29-1build1_all.deb ... Unpacking libthai-data (0.1.29-1build1) ... Selecting previously unselected package libdatrie1:s390x. Preparing to unpack .../130-libdatrie1_0.2.13-2_s390x.deb ... Unpacking libdatrie1:s390x (0.2.13-2) ... Selecting previously unselected package libthai0:s390x. Preparing to unpack .../131-libthai0_0.1.29-1build1_s390x.deb ... Unpacking libthai0:s390x (0.1.29-1build1) ... Selecting previously unselected package libpango-1.0-0:s390x. Preparing to unpack .../132-libpango-1.0-0_1.51.0+ds-3_s390x.deb ... Unpacking libpango-1.0-0:s390x (1.51.0+ds-3) ... Selecting previously unselected package libpangoft2-1.0-0:s390x. Preparing to unpack .../133-libpangoft2-1.0-0_1.51.0+ds-3_s390x.deb ... Unpacking libpangoft2-1.0-0:s390x (1.51.0+ds-3) ... Selecting previously unselected package libpangocairo-1.0-0:s390x. Preparing to unpack .../134-libpangocairo-1.0-0_1.51.0+ds-3_s390x.deb ... Unpacking libpangocairo-1.0-0:s390x (1.51.0+ds-3) ... Selecting previously unselected package gnuplot-nox. Preparing to unpack .../135-gnuplot-nox_5.4.4+dfsg1-2build1_s390x.deb ... Unpacking gnuplot-nox (5.4.4+dfsg1-2build1) ... Selecting previously unselected package dh-octave-autopkgtest. Preparing to unpack .../136-dh-octave-autopkgtest_1.5.1_all.deb ... Unpacking dh-octave-autopkgtest (1.5.1) ... Selecting previously unselected package libapt-pkg-perl. Preparing to unpack .../137-libapt-pkg-perl_0.1.40build3_s390x.deb ... Unpacking libapt-pkg-perl (0.1.40build3) ... Selecting previously unselected package libarray-intspan-perl. Preparing to unpack .../138-libarray-intspan-perl_2.004-2_all.deb ... Unpacking libarray-intspan-perl (2.004-2) ... Selecting previously unselected package libyaml-libyaml-perl. Preparing to unpack .../139-libyaml-libyaml-perl_0.86+ds-1_s390x.deb ... Unpacking libyaml-libyaml-perl (0.86+ds-1) ... Selecting previously unselected package libconfig-model-backend-yaml-perl. Preparing to unpack .../140-libconfig-model-backend-yaml-perl_2.134-2_all.deb ... Unpacking libconfig-model-backend-yaml-perl (2.134-2) ... Selecting previously unselected package libexporter-lite-perl. Preparing to unpack .../141-libexporter-lite-perl_0.09-2_all.deb ... Unpacking libexporter-lite-perl (0.09-2) ... Selecting previously unselected package libencode-locale-perl. Preparing to unpack .../142-libencode-locale-perl_1.05-3_all.deb ... Unpacking libencode-locale-perl (1.05-3) ... Selecting previously unselected package libtimedate-perl. Preparing to unpack .../143-libtimedate-perl_2.3300-2_all.deb ... Unpacking libtimedate-perl (2.3300-2) ... Selecting previously unselected package libhttp-date-perl. Preparing to unpack .../144-libhttp-date-perl_6.06-1_all.deb ... Unpacking libhttp-date-perl (6.06-1) ... Selecting previously unselected package libfile-listing-perl. Preparing to unpack .../145-libfile-listing-perl_6.16-1_all.deb ... Unpacking libfile-listing-perl (6.16-1) ... Selecting previously unselected package libhtml-tagset-perl. Preparing to unpack .../146-libhtml-tagset-perl_3.20-6_all.deb ... Unpacking libhtml-tagset-perl (3.20-6) ... Selecting previously unselected package liburi-perl. Preparing to unpack .../147-liburi-perl_5.21-1_all.deb ... Unpacking liburi-perl (5.21-1) ... Selecting previously unselected package libhtml-parser-perl:s390x. Preparing to unpack .../148-libhtml-parser-perl_3.81-1_s390x.deb ... Unpacking libhtml-parser-perl:s390x (3.81-1) ... Selecting previously unselected package libhtml-tree-perl. Preparing to unpack .../149-libhtml-tree-perl_5.07-3_all.deb ... Unpacking libhtml-tree-perl (5.07-3) ... Selecting previously unselected package libclone-perl:s390x. Preparing to unpack .../150-libclone-perl_0.46-1_s390x.deb ... Unpacking libclone-perl:s390x (0.46-1) ... Selecting previously unselected package libio-html-perl. Preparing to unpack .../151-libio-html-perl_1.004-3_all.deb ... Unpacking libio-html-perl (1.004-3) ... Selecting previously unselected package liblwp-mediatypes-perl. Preparing to unpack .../152-liblwp-mediatypes-perl_6.04-2_all.deb ... Unpacking liblwp-mediatypes-perl (6.04-2) ... Selecting previously unselected package libhttp-message-perl. Preparing to unpack .../153-libhttp-message-perl_6.44-2ubuntu1_all.deb ... Unpacking libhttp-message-perl (6.44-2ubuntu1) ... Selecting previously unselected package libhttp-cookies-perl. Preparing to unpack .../154-libhttp-cookies-perl_6.10-1_all.deb ... Unpacking libhttp-cookies-perl (6.10-1) ... Selecting previously unselected package libhttp-negotiate-perl. Preparing to unpack .../155-libhttp-negotiate-perl_6.01-2_all.deb ... Unpacking libhttp-negotiate-perl (6.01-2) ... Selecting previously unselected package perl-openssl-defaults:s390x. Preparing to unpack .../156-perl-openssl-defaults_7_s390x.deb ... Unpacking perl-openssl-defaults:s390x (7) ... Selecting previously unselected package libnet-ssleay-perl:s390x. Preparing to unpack .../157-libnet-ssleay-perl_1.92-2build2_s390x.deb ... Unpacking libnet-ssleay-perl:s390x (1.92-2build2) ... Selecting previously unselected package libio-socket-ssl-perl. Preparing to unpack .../158-libio-socket-ssl-perl_2.084-1_all.deb ... Unpacking libio-socket-ssl-perl (2.084-1) ... Selecting previously unselected package libnet-http-perl. Preparing to unpack .../159-libnet-http-perl_6.23-1_all.deb ... Unpacking libnet-http-perl (6.23-1) ... Selecting previously unselected package liblwp-protocol-https-perl. Preparing to unpack .../160-liblwp-protocol-https-perl_6.11-1_all.deb ... Unpacking liblwp-protocol-https-perl (6.11-1) ... Selecting previously unselected package libwww-robotrules-perl. Preparing to unpack .../161-libwww-robotrules-perl_6.02-1_all.deb ... Unpacking libwww-robotrules-perl (6.02-1) ... Selecting previously unselected package libwww-perl. Preparing to unpack .../162-libwww-perl_6.72-1_all.deb ... Unpacking libwww-perl (6.72-1) ... Selecting previously unselected package liberror-perl. Preparing to unpack .../163-liberror-perl_0.17029-2_all.deb ... Unpacking liberror-perl (0.17029-2) ... Selecting previously unselected package libparse-debcontrol-perl. Preparing to unpack .../164-libparse-debcontrol-perl_2.005-6_all.deb ... Unpacking libparse-debcontrol-perl (2.005-6) ... Selecting previously unselected package libsoftware-copyright-perl. Preparing to unpack .../165-libsoftware-copyright-perl_0.012-2_all.deb ... Unpacking libsoftware-copyright-perl (0.012-2) ... Selecting previously unselected package libalgorithm-c3-perl. Preparing to unpack .../166-libalgorithm-c3-perl_0.11-2_all.deb ... Unpacking libalgorithm-c3-perl (0.11-2) ... Selecting previously unselected package libclass-c3-perl. Preparing to unpack .../167-libclass-c3-perl_0.35-2_all.deb ... Unpacking libclass-c3-perl (0.35-2) ... Selecting previously unselected package libmro-compat-perl. Preparing to unpack .../168-libmro-compat-perl_0.15-2_all.deb ... Unpacking libmro-compat-perl (0.15-2) ... Selecting previously unselected package libdata-section-perl. Preparing to unpack .../169-libdata-section-perl_0.200008-1_all.deb ... Unpacking libdata-section-perl (0.200008-1) ... Selecting previously unselected package libtext-template-perl. Preparing to unpack .../170-libtext-template-perl_1.61-1_all.deb ... Unpacking libtext-template-perl (1.61-1) ... Selecting previously unselected package libsoftware-license-perl. Preparing to unpack .../171-libsoftware-license-perl_0.104005-1_all.deb ... Unpacking libsoftware-license-perl (0.104005-1) ... Selecting previously unselected package libsoftware-licensemoreutils-perl. Preparing to unpack .../172-libsoftware-licensemoreutils-perl_1.009-1_all.deb ... Unpacking libsoftware-licensemoreutils-perl (1.009-1) ... Selecting previously unselected package libsort-versions-perl. Preparing to unpack .../173-libsort-versions-perl_1.62-3_all.deb ... Unpacking libsort-versions-perl (1.62-3) ... Selecting previously unselected package libtext-reform-perl. Preparing to unpack .../174-libtext-reform-perl_1.20-5_all.deb ... Unpacking libtext-reform-perl (1.20-5) ... Selecting previously unselected package libtext-autoformat-perl. Preparing to unpack .../175-libtext-autoformat-perl_1.750000-2_all.deb ... Unpacking libtext-autoformat-perl (1.750000-2) ... Selecting previously unselected package libtext-levenshtein-damerau-perl. Preparing to unpack .../176-libtext-levenshtein-damerau-perl_0.41-3_all.deb ... Unpacking libtext-levenshtein-damerau-perl (0.41-3) ... Selecting previously unselected package libtoml-tiny-perl. Preparing to unpack .../177-libtoml-tiny-perl_0.16-1_all.deb ... Unpacking libtoml-tiny-perl (0.16-1) ... Selecting previously unselected package libindirect-perl. Preparing to unpack .../178-libindirect-perl_0.39-2build1_s390x.deb ... Unpacking libindirect-perl (0.39-2build1) ... Selecting previously unselected package libxs-parse-keyword-perl. Preparing to unpack .../179-libxs-parse-keyword-perl_0.38-1_s390x.deb ... Unpacking libxs-parse-keyword-perl (0.38-1) ... Selecting previously unselected package libxs-parse-sublike-perl:s390x. Preparing to unpack .../180-libxs-parse-sublike-perl_0.21-2_s390x.deb ... Unpacking libxs-parse-sublike-perl:s390x (0.21-2) ... Selecting previously unselected package libobject-pad-perl. Preparing to unpack .../181-libobject-pad-perl_0.806-1_s390x.deb ... Unpacking libobject-pad-perl (0.806-1) ... Selecting previously unselected package libsyntax-keyword-try-perl. Preparing to unpack .../182-libsyntax-keyword-try-perl_0.29-1_s390x.deb ... Unpacking libsyntax-keyword-try-perl (0.29-1) ... Selecting previously unselected package libio-interactive-perl. Preparing to unpack .../183-libio-interactive-perl_1.025-1_all.deb ... Unpacking libio-interactive-perl (1.025-1) ... Selecting previously unselected package liblog-any-perl. Preparing to unpack .../184-liblog-any-perl_1.717-1_all.deb ... Unpacking liblog-any-perl (1.717-1) ... Selecting previously unselected package liblog-any-adapter-screen-perl. Preparing to unpack .../185-liblog-any-adapter-screen-perl_0.140-2_all.deb ... Unpacking liblog-any-adapter-screen-perl (0.140-2) ... Selecting previously unselected package libsub-exporter-progressive-perl. Preparing to unpack .../186-libsub-exporter-progressive-perl_0.001013-3_all.deb ... Unpacking libsub-exporter-progressive-perl (0.001013-3) ... Selecting previously unselected package libvariable-magic-perl. Preparing to unpack .../187-libvariable-magic-perl_0.63-1_s390x.deb ... Unpacking libvariable-magic-perl (0.63-1) ... Selecting previously unselected package libb-hooks-endofscope-perl. Preparing to unpack .../188-libb-hooks-endofscope-perl_0.26-1_all.deb ... Unpacking libb-hooks-endofscope-perl (0.26-1) ... Selecting previously unselected package libsub-identify-perl. Preparing to unpack .../189-libsub-identify-perl_0.14-3_s390x.deb ... Unpacking libsub-identify-perl (0.14-3) ... Selecting previously unselected package libsub-name-perl:s390x. Preparing to unpack .../190-libsub-name-perl_0.27-1_s390x.deb ... Unpacking libsub-name-perl:s390x (0.27-1) ... Selecting previously unselected package libnamespace-clean-perl. Preparing to unpack .../191-libnamespace-clean-perl_0.27-2_all.deb ... Unpacking libnamespace-clean-perl (0.27-2) ... Selecting previously unselected package libnumber-compare-perl. Preparing to unpack .../192-libnumber-compare-perl_0.03-3_all.deb ... Unpacking libnumber-compare-perl (0.03-3) ... Selecting previously unselected package libtext-glob-perl. Preparing to unpack .../193-libtext-glob-perl_0.11-3_all.deb ... Unpacking libtext-glob-perl (0.11-3) ... Selecting previously unselected package libpath-iterator-rule-perl. Preparing to unpack .../194-libpath-iterator-rule-perl_1.015-2_all.deb ... Unpacking libpath-iterator-rule-perl (1.015-2) ... Selecting previously unselected package libpod-parser-perl. Preparing to unpack .../195-libpod-parser-perl_1.66-1_all.deb ... Adding 'diversion of /usr/bin/podselect to /usr/bin/podselect.bundled by libpod-parser-perl' Adding 'diversion of /usr/share/man/man1/podselect.1.gz to /usr/share/man/man1/podselect.bundled.1.gz by libpod-parser-perl' Unpacking libpod-parser-perl (1.66-1) ... Selecting previously unselected package libpod-constants-perl. Preparing to unpack .../196-libpod-constants-perl_0.19-2_all.deb ... Unpacking libpod-constants-perl (0.19-2) ... Selecting previously unselected package libset-intspan-perl. Preparing to unpack .../197-libset-intspan-perl_1.19-3_all.deb ... Unpacking libset-intspan-perl (1.19-3) ... Selecting previously unselected package libstring-copyright-perl. Preparing to unpack .../198-libstring-copyright-perl_0.003014-1_all.deb ... Unpacking libstring-copyright-perl (0.003014-1) ... Selecting previously unselected package libstring-escape-perl. Preparing to unpack .../199-libstring-escape-perl_2010.002-3_all.deb ... Unpacking libstring-escape-perl (2010.002-3) ... Selecting previously unselected package libregexp-pattern-license-perl. Preparing to unpack .../200-libregexp-pattern-license-perl_3.11.0-1_all.deb ... Unpacking libregexp-pattern-license-perl (3.11.0-1) ... Selecting previously unselected package libregexp-pattern-perl. Preparing to unpack .../201-libregexp-pattern-perl_0.2.14-2_all.deb ... Unpacking libregexp-pattern-perl (0.2.14-2) ... Selecting previously unselected package libstring-license-perl. Preparing to unpack .../202-libstring-license-perl_0.0.9-2ubuntu1_all.deb ... Unpacking libstring-license-perl (0.0.9-2ubuntu1) ... Selecting previously unselected package licensecheck. Preparing to unpack .../203-licensecheck_3.3.9-1ubuntu1_all.deb ... Unpacking licensecheck (3.3.9-1ubuntu1) ... Selecting previously unselected package diffstat. Preparing to unpack .../204-diffstat_1.65-1_s390x.deb ... Unpacking diffstat (1.65-1) ... Selecting previously unselected package libberkeleydb-perl:s390x. Preparing to unpack .../205-libberkeleydb-perl_0.64-2_s390x.deb ... Unpacking libberkeleydb-perl:s390x (0.64-2) ... Selecting previously unselected package libclass-xsaccessor-perl. Preparing to unpack .../206-libclass-xsaccessor-perl_1.19-4build1_s390x.deb ... Unpacking libclass-xsaccessor-perl (1.19-4build1) ... Selecting previously unselected package libconfig-tiny-perl. Preparing to unpack .../207-libconfig-tiny-perl_2.30-1_all.deb ... Unpacking libconfig-tiny-perl (2.30-1) ... Selecting previously unselected package libconst-fast-perl. Preparing to unpack .../208-libconst-fast-perl_0.014-2_all.deb ... Unpacking libconst-fast-perl (0.014-2) ... Selecting previously unselected package libcpanel-json-xs-perl:s390x. Preparing to unpack .../209-libcpanel-json-xs-perl_4.37-1_s390x.deb ... Unpacking libcpanel-json-xs-perl:s390x (4.37-1) ... Selecting previously unselected package libaliased-perl. Preparing to unpack .../210-libaliased-perl_0.34-3_all.deb ... Unpacking libaliased-perl (0.34-3) ... Selecting previously unselected package libclass-data-inheritable-perl. Preparing to unpack .../211-libclass-data-inheritable-perl_0.08-3_all.deb ... Unpacking libclass-data-inheritable-perl (0.08-3) ... Selecting previously unselected package libdevel-stacktrace-perl. Preparing to unpack .../212-libdevel-stacktrace-perl_2.0400-2_all.deb ... Unpacking libdevel-stacktrace-perl (2.0400-2) ... Selecting previously unselected package libexception-class-perl. Preparing to unpack .../213-libexception-class-perl_1.45-1_all.deb ... Unpacking libexception-class-perl (1.45-1) ... Selecting previously unselected package libiterator-perl. Preparing to unpack .../214-libiterator-perl_0.03+ds1-2_all.deb ... Unpacking libiterator-perl (0.03+ds1-2) ... Selecting previously unselected package libiterator-util-perl. Preparing to unpack .../215-libiterator-util-perl_0.02+ds1-2_all.deb ... Unpacking libiterator-util-perl (0.02+ds1-2) ... Selecting previously unselected package libdata-dpath-perl. Preparing to unpack .../216-libdata-dpath-perl_0.59-1_all.deb ... Unpacking libdata-dpath-perl (0.59-1) ... Selecting previously unselected package libnet-domain-tld-perl. Preparing to unpack .../217-libnet-domain-tld-perl_1.75-3_all.deb ... Unpacking libnet-domain-tld-perl (1.75-3) ... Selecting previously unselected package libdata-validate-domain-perl. Preparing to unpack .../218-libdata-validate-domain-perl_0.10-1.1_all.deb ... Unpacking libdata-validate-domain-perl (0.10-1.1) ... Selecting previously unselected package libnet-ipv6addr-perl. Preparing to unpack .../219-libnet-ipv6addr-perl_1.02-1_all.deb ... Unpacking libnet-ipv6addr-perl (1.02-1) ... Selecting previously unselected package libnet-netmask-perl. Preparing to unpack .../220-libnet-netmask-perl_2.0002-2_all.deb ... Unpacking libnet-netmask-perl (2.0002-2) ... Selecting previously unselected package libnetaddr-ip-perl. Preparing to unpack .../221-libnetaddr-ip-perl_4.079+dfsg-2build1_s390x.deb ... Unpacking libnetaddr-ip-perl (4.079+dfsg-2build1) ... Selecting previously unselected package libdata-validate-ip-perl. Preparing to unpack .../222-libdata-validate-ip-perl_0.31-1_all.deb ... Unpacking libdata-validate-ip-perl (0.31-1) ... Selecting previously unselected package libdata-validate-uri-perl. Preparing to unpack .../223-libdata-validate-uri-perl_0.07-2_all.deb ... Unpacking libdata-validate-uri-perl (0.07-2) ... Selecting previously unselected package libdevel-size-perl. Preparing to unpack .../224-libdevel-size-perl_0.83-2build1_s390x.deb ... Unpacking libdevel-size-perl (0.83-2build1) ... Selecting previously unselected package libemail-address-xs-perl. Preparing to unpack .../225-libemail-address-xs-perl_1.05-1build1_s390x.deb ... Unpacking libemail-address-xs-perl (1.05-1build1) ... Selecting previously unselected package libipc-system-simple-perl. Preparing to unpack .../226-libipc-system-simple-perl_1.30-2_all.deb ... Unpacking libipc-system-simple-perl (1.30-2) ... Selecting previously unselected package libfile-basedir-perl. Preparing to unpack .../227-libfile-basedir-perl_0.09-2_all.deb ... Unpacking libfile-basedir-perl (0.09-2) ... Selecting previously unselected package libfile-find-rule-perl. Preparing to unpack .../228-libfile-find-rule-perl_0.34-3_all.deb ... Unpacking libfile-find-rule-perl (0.34-3) ... Selecting previously unselected package libio-string-perl. Preparing to unpack .../229-libio-string-perl_1.08-4_all.deb ... Unpacking libio-string-perl (1.08-4) ... Selecting previously unselected package libfont-ttf-perl. Preparing to unpack .../230-libfont-ttf-perl_1.06-2_all.deb ... Unpacking libfont-ttf-perl (1.06-2) ... Selecting previously unselected package libhtml-html5-entities-perl. Preparing to unpack .../231-libhtml-html5-entities-perl_0.004-3_all.deb ... Unpacking libhtml-html5-entities-perl (0.004-3) ... Selecting previously unselected package libhtml-tokeparser-simple-perl. Preparing to unpack .../232-libhtml-tokeparser-simple-perl_3.16-4_all.deb ... Unpacking libhtml-tokeparser-simple-perl (3.16-4) ... Selecting previously unselected package libipc-run3-perl. Preparing to unpack .../233-libipc-run3-perl_0.048-3_all.deb ... Unpacking libipc-run3-perl (0.048-3) ... Selecting previously unselected package libjson-maybexs-perl. Preparing to unpack .../234-libjson-maybexs-perl_1.004005-1_all.deb ... Unpacking libjson-maybexs-perl (1.004005-1) ... Selecting previously unselected package liblist-compare-perl. Preparing to unpack .../235-liblist-compare-perl_0.55-2_all.deb ... Unpacking liblist-compare-perl (0.55-2) ... Selecting previously unselected package liblist-someutils-perl. Preparing to unpack .../236-liblist-someutils-perl_0.59-1_all.deb ... Unpacking liblist-someutils-perl (0.59-1) ... Selecting previously unselected package liblist-utilsby-perl. Preparing to unpack .../237-liblist-utilsby-perl_0.12-2_all.deb ... Unpacking liblist-utilsby-perl (0.12-2) ... Selecting previously unselected package libmldbm-perl. Preparing to unpack .../238-libmldbm-perl_2.05-4_all.deb ... Unpacking libmldbm-perl (2.05-4) ... Selecting previously unselected package libclass-method-modifiers-perl. Preparing to unpack .../239-libclass-method-modifiers-perl_2.15-1_all.deb ... Unpacking libclass-method-modifiers-perl (2.15-1) ... Selecting previously unselected package libimport-into-perl. Preparing to unpack .../240-libimport-into-perl_1.002005-2_all.deb ... Unpacking libimport-into-perl (1.002005-2) ... Selecting previously unselected package librole-tiny-perl. Preparing to unpack .../241-librole-tiny-perl_2.002004-1_all.deb ... Unpacking librole-tiny-perl (2.002004-1) ... Selecting previously unselected package libsub-quote-perl. Preparing to unpack .../242-libsub-quote-perl_2.006008-1ubuntu1_all.deb ... Unpacking libsub-quote-perl (2.006008-1ubuntu1) ... Selecting previously unselected package libmoo-perl. Preparing to unpack .../243-libmoo-perl_2.005005-1_all.deb ... Unpacking libmoo-perl (2.005005-1) ... Selecting previously unselected package libstrictures-perl. Preparing to unpack .../244-libstrictures-perl_2.000006-1_all.deb ... Unpacking libstrictures-perl (2.000006-1) ... Selecting previously unselected package libmoox-aliases-perl. Preparing to unpack .../245-libmoox-aliases-perl_0.001006-2_all.deb ... Unpacking libmoox-aliases-perl (0.001006-2) ... Selecting previously unselected package libperlio-gzip-perl. Preparing to unpack .../246-libperlio-gzip-perl_0.20-1build1_s390x.deb ... Unpacking libperlio-gzip-perl (0.20-1build1) ... Selecting previously unselected package libperlio-utf8-strict-perl. Preparing to unpack .../247-libperlio-utf8-strict-perl_0.010-1_s390x.deb ... Unpacking libperlio-utf8-strict-perl (0.010-1) ... Selecting previously unselected package libproc-processtable-perl:s390x. Preparing to unpack .../248-libproc-processtable-perl_0.636-1_s390x.deb ... Unpacking libproc-processtable-perl:s390x (0.636-1) ... Selecting previously unselected package libregexp-wildcards-perl. Preparing to unpack .../249-libregexp-wildcards-perl_1.05-3_all.deb ... Unpacking libregexp-wildcards-perl (1.05-3) ... Selecting previously unselected package libsereal-decoder-perl. Preparing to unpack .../250-libsereal-decoder-perl_5.004+ds-1_s390x.deb ... Unpacking libsereal-decoder-perl (5.004+ds-1) ... Selecting previously unselected package libsereal-encoder-perl. Preparing to unpack .../251-libsereal-encoder-perl_5.004+ds-1_s390x.deb ... Unpacking libsereal-encoder-perl (5.004+ds-1) ... Selecting previously unselected package libterm-readkey-perl. Preparing to unpack .../252-libterm-readkey-perl_2.38-2build1_s390x.deb ... Unpacking libterm-readkey-perl (2.38-2build1) ... Selecting previously unselected package libtext-levenshteinxs-perl. Preparing to unpack .../253-libtext-levenshteinxs-perl_0.03-5build1_s390x.deb ... Unpacking libtext-levenshteinxs-perl (0.03-5build1) ... Selecting previously unselected package libmarkdown2:s390x. Preparing to unpack .../254-libmarkdown2_2.2.7-2_s390x.deb ... Unpacking libmarkdown2:s390x (2.2.7-2) ... Selecting previously unselected package libtext-markdown-discount-perl. Preparing to unpack .../255-libtext-markdown-discount-perl_0.16-1_s390x.deb ... Unpacking libtext-markdown-discount-perl (0.16-1) ... Selecting previously unselected package libdata-messagepack-perl. Preparing to unpack .../256-libdata-messagepack-perl_1.02-1build1_s390x.deb ... Unpacking libdata-messagepack-perl (1.02-1build1) ... Selecting previously unselected package libtext-xslate-perl:s390x. Preparing to unpack .../257-libtext-xslate-perl_3.5.9-1build2_s390x.deb ... Unpacking libtext-xslate-perl:s390x (3.5.9-1build2) ... Selecting previously unselected package libtime-duration-perl. Preparing to unpack .../258-libtime-duration-perl_1.21-2_all.deb ... Unpacking libtime-duration-perl (1.21-2) ... Selecting previously unselected package libtime-moment-perl. Preparing to unpack .../259-libtime-moment-perl_0.44-2build1_s390x.deb ... Unpacking libtime-moment-perl (0.44-2build1) ... Selecting previously unselected package libunicode-utf8-perl. Preparing to unpack .../260-libunicode-utf8-perl_0.62-2_s390x.deb ... Unpacking libunicode-utf8-perl (0.62-2) ... Selecting previously unselected package libcgi-pm-perl. Preparing to unpack .../261-libcgi-pm-perl_4.60-1_all.deb ... Unpacking libcgi-pm-perl (4.60-1) ... Selecting previously unselected package libhtml-form-perl. Preparing to unpack .../262-libhtml-form-perl_6.11-1_all.deb ... Unpacking libhtml-form-perl (6.11-1) ... Selecting previously unselected package libwww-mechanize-perl. Preparing to unpack .../263-libwww-mechanize-perl_2.17-1ubuntu1_all.deb ... Unpacking libwww-mechanize-perl (2.17-1ubuntu1) ... Selecting previously unselected package libxml-namespacesupport-perl. Preparing to unpack .../264-libxml-namespacesupport-perl_1.12-2_all.deb ... Unpacking libxml-namespacesupport-perl (1.12-2) ... Selecting previously unselected package libxml-sax-base-perl. Preparing to unpack .../265-libxml-sax-base-perl_1.09-3_all.deb ... Unpacking libxml-sax-base-perl (1.09-3) ... Selecting previously unselected package libxml-sax-perl. Preparing to unpack .../266-libxml-sax-perl_1.02+dfsg-3_all.deb ... Unpacking libxml-sax-perl (1.02+dfsg-3) ... Selecting previously unselected package libxml-libxml-perl. Preparing to unpack .../267-libxml-libxml-perl_2.0207+dfsg+really+2.0134-1build1_s390x.deb ... Unpacking libxml-libxml-perl (2.0207+dfsg+really+2.0134-1build1) ... Selecting previously unselected package lzip. Preparing to unpack .../268-lzip_1.23-6_s390x.deb ... Unpacking lzip (1.23-6) ... Selecting previously unselected package liblzo2-2:s390x. Preparing to unpack .../269-liblzo2-2_2.10-2build3_s390x.deb ... Unpacking liblzo2-2:s390x (2.10-2build3) ... Selecting previously unselected package lzop. Preparing to unpack .../270-lzop_1.04-2build2_s390x.deb ... Unpacking lzop (1.04-2build2) ... Selecting previously unselected package patchutils. Preparing to unpack .../271-patchutils_0.4.2-1build2_s390x.deb ... Unpacking patchutils (0.4.2-1build2) ... Selecting previously unselected package t1utils. Preparing to unpack .../272-t1utils_1.41-4build2_s390x.deb ... Unpacking t1utils (1.41-4build2) ... Selecting previously unselected package unzip. Preparing to unpack .../273-unzip_6.0-28ubuntu1_s390x.deb ... Unpacking unzip (6.0-28ubuntu1) ... Selecting previously unselected package lintian. Preparing to unpack .../274-lintian_2.116.3ubuntu4_all.deb ... Unpacking lintian (2.116.3ubuntu4) ... Selecting previously unselected package libconfig-model-dpkg-perl. Preparing to unpack .../275-libconfig-model-dpkg-perl_3.002_all.deb ... Unpacking libconfig-model-dpkg-perl (3.002) ... Selecting previously unselected package libconvert-binhex-perl. Preparing to unpack .../276-libconvert-binhex-perl_1.125-3_all.deb ... Unpacking libconvert-binhex-perl (1.125-3) ... Selecting previously unselected package libnet-smtp-ssl-perl. Preparing to unpack .../277-libnet-smtp-ssl-perl_1.04-2_all.deb ... Unpacking libnet-smtp-ssl-perl (1.04-2) ... Selecting previously unselected package libmailtools-perl. Preparing to unpack .../278-libmailtools-perl_2.21-2_all.deb ... Unpacking libmailtools-perl (2.21-2) ... Selecting previously unselected package libmime-tools-perl. Preparing to unpack .../279-libmime-tools-perl_5.510-3_all.deb ... Unpacking libmime-tools-perl (5.510-3) ... Selecting previously unselected package libsuitesparseconfig7:s390x. Preparing to unpack .../280-libsuitesparseconfig7_1%3a7.3.1+dfsg-2_s390x.deb ... Unpacking libsuitesparseconfig7:s390x (1:7.3.1+dfsg-2) ... Selecting previously unselected package libamd3:s390x. Preparing to unpack .../281-libamd3_1%3a7.3.1+dfsg-2_s390x.deb ... Unpacking libamd3:s390x (1:7.3.1+dfsg-2) ... Selecting previously unselected package libblas3:s390x. Preparing to unpack .../282-libblas3_3.11.0-2build1_s390x.deb ... Unpacking libblas3:s390x (3.11.0-2build1) ... Selecting previously unselected package libgfortran5:s390x. Preparing to unpack .../283-libgfortran5_13.2.0-7ubuntu1_s390x.deb ... Unpacking libgfortran5:s390x (13.2.0-7ubuntu1) ... Selecting previously unselected package liblapack3:s390x. Preparing to unpack .../284-liblapack3_3.11.0-2build1_s390x.deb ... Unpacking liblapack3:s390x (3.11.0-2build1) ... Selecting previously unselected package libarpack2:s390x. Preparing to unpack .../285-libarpack2_3.9.1-1_s390x.deb ... Unpacking libarpack2:s390x (3.9.1-1) ... Selecting previously unselected package libccolamd3:s390x. Preparing to unpack .../286-libccolamd3_1%3a7.3.1+dfsg-2_s390x.deb ... Unpacking libccolamd3:s390x (1:7.3.1+dfsg-2) ... Selecting previously unselected package libcamd3:s390x. Preparing to unpack .../287-libcamd3_1%3a7.3.1+dfsg-2_s390x.deb ... Unpacking libcamd3:s390x (1:7.3.1+dfsg-2) ... Selecting previously unselected package libcolamd3:s390x. Preparing to unpack .../288-libcolamd3_1%3a7.3.1+dfsg-2_s390x.deb ... Unpacking libcolamd3:s390x (1:7.3.1+dfsg-2) ... Selecting previously unselected package libcholmod5:s390x. Preparing to unpack .../289-libcholmod5_1%3a7.3.1+dfsg-2_s390x.deb ... Unpacking libcholmod5:s390x (1:7.3.1+dfsg-2) ... Selecting previously unselected package libsasl2-modules-db:s390x. Preparing to unpack .../290-libsasl2-modules-db_2.1.28+dfsg1-4_s390x.deb ... Unpacking libsasl2-modules-db:s390x (2.1.28+dfsg1-4) ... Selecting previously unselected package libsasl2-2:s390x. Preparing to unpack .../291-libsasl2-2_2.1.28+dfsg1-4_s390x.deb ... Unpacking libsasl2-2:s390x (2.1.28+dfsg1-4) ... Selecting previously unselected package libldap2:s390x. Preparing to unpack .../292-libldap2_2.6.6+dfsg-1~exp1ubuntu1_s390x.deb ... Unpacking libldap2:s390x (2.6.6+dfsg-1~exp1ubuntu1) ... Selecting previously unselected package librtmp1:s390x. Preparing to unpack .../293-librtmp1_2.4+20151223.gitfa8646d.1-2build4_s390x.deb ... Unpacking librtmp1:s390x (2.4+20151223.gitfa8646d.1-2build4) ... Selecting previously unselected package libssh-4:s390x. Preparing to unpack .../294-libssh-4_0.10.5-3ubuntu1_s390x.deb ... Unpacking libssh-4:s390x (0.10.5-3ubuntu1) ... Selecting previously unselected package libcurl3-gnutls:s390x. Preparing to unpack .../295-libcurl3-gnutls_8.4.0-2ubuntu1_s390x.deb ... Unpacking libcurl3-gnutls:s390x (8.4.0-2ubuntu1) ... Selecting previously unselected package libcxsparse4:s390x. Preparing to unpack .../296-libcxsparse4_1%3a7.3.1+dfsg-2_s390x.deb ... Unpacking libcxsparse4:s390x (1:7.3.1+dfsg-2) ... Selecting previously unselected package libfftw3-double3:s390x. Preparing to unpack .../297-libfftw3-double3_3.3.10-1ubuntu1_s390x.deb ... Unpacking libfftw3-double3:s390x (3.3.10-1ubuntu1) ... Selecting previously unselected package libfftw3-single3:s390x. Preparing to unpack .../298-libfftw3-single3_3.3.10-1ubuntu1_s390x.deb ... Unpacking libfftw3-single3:s390x (3.3.10-1ubuntu1) ... Selecting previously unselected package libxfixes3:s390x. Preparing to unpack .../299-libxfixes3_1%3a6.0.0-2_s390x.deb ... Unpacking libxfixes3:s390x (1:6.0.0-2) ... Selecting previously unselected package libxcursor1:s390x. Preparing to unpack .../300-libxcursor1_1%3a1.2.1-1_s390x.deb ... Unpacking libxcursor1:s390x (1:1.2.1-1) ... Selecting previously unselected package libxft2:s390x. Preparing to unpack .../301-libxft2_2.3.6-1_s390x.deb ... Unpacking libxft2:s390x (2.3.6-1) ... Selecting previously unselected package libxinerama1:s390x. Preparing to unpack .../302-libxinerama1_2%3a1.1.4-3_s390x.deb ... Unpacking libxinerama1:s390x (2:1.1.4-3) ... Selecting previously unselected package libfltk1.3:s390x. Preparing to unpack .../303-libfltk1.3_1.3.8-6_s390x.deb ... Unpacking libfltk1.3:s390x (1.3.8-6) ... Selecting previously unselected package libglvnd0:s390x. Preparing to unpack .../304-libglvnd0_1.7.0-1_s390x.deb ... Unpacking libglvnd0:s390x (1.7.0-1) ... Selecting previously unselected package libglapi-mesa:s390x. Preparing to unpack .../305-libglapi-mesa_23.2.1-1ubuntu4_s390x.deb ... Unpacking libglapi-mesa:s390x (23.2.1-1ubuntu4) ... Selecting previously unselected package libx11-xcb1:s390x. Preparing to unpack .../306-libx11-xcb1_2%3a1.8.7-1_s390x.deb ... Unpacking libx11-xcb1:s390x (2:1.8.7-1) ... Selecting previously unselected package libxcb-dri2-0:s390x. Preparing to unpack .../307-libxcb-dri2-0_1.15-1_s390x.deb ... Unpacking libxcb-dri2-0:s390x (1.15-1) ... Selecting previously unselected package libxcb-dri3-0:s390x. Preparing to unpack .../308-libxcb-dri3-0_1.15-1_s390x.deb ... Unpacking libxcb-dri3-0:s390x (1.15-1) ... Selecting previously unselected package libxcb-glx0:s390x. Preparing to unpack .../309-libxcb-glx0_1.15-1_s390x.deb ... Unpacking libxcb-glx0:s390x (1.15-1) ... Selecting previously unselected package libxcb-present0:s390x. Preparing to unpack .../310-libxcb-present0_1.15-1_s390x.deb ... Unpacking libxcb-present0:s390x (1.15-1) ... Selecting previously unselected package libxcb-randr0:s390x. Preparing to unpack .../311-libxcb-randr0_1.15-1_s390x.deb ... Unpacking libxcb-randr0:s390x (1.15-1) ... Selecting previously unselected package libxcb-sync1:s390x. Preparing to unpack .../312-libxcb-sync1_1.15-1_s390x.deb ... Unpacking libxcb-sync1:s390x (1.15-1) ... Selecting previously unselected package libxcb-xfixes0:s390x. Preparing to unpack .../313-libxcb-xfixes0_1.15-1_s390x.deb ... Unpacking libxcb-xfixes0:s390x (1.15-1) ... Selecting previously unselected package libxshmfence1:s390x. Preparing to unpack .../314-libxshmfence1_1.3-1build4_s390x.deb ... Unpacking libxshmfence1:s390x (1.3-1build4) ... Selecting previously unselected package libxxf86vm1:s390x. Preparing to unpack .../315-libxxf86vm1_1%3a1.1.4-1build3_s390x.deb ... Unpacking libxxf86vm1:s390x (1:1.1.4-1build3) ... Selecting previously unselected package libdrm-amdgpu1:s390x. Preparing to unpack .../316-libdrm-amdgpu1_2.4.117-1_s390x.deb ... Unpacking libdrm-amdgpu1:s390x (2.4.117-1) ... Selecting previously unselected package libdrm-nouveau2:s390x. Preparing to unpack .../317-libdrm-nouveau2_2.4.117-1_s390x.deb ... Unpacking libdrm-nouveau2:s390x (2.4.117-1) ... Selecting previously unselected package libdrm-radeon1:s390x. Preparing to unpack .../318-libdrm-radeon1_2.4.117-1_s390x.deb ... Unpacking libdrm-radeon1:s390x (2.4.117-1) ... Selecting previously unselected package libllvm15:s390x. Preparing to unpack .../319-libllvm15_1%3a15.0.7-10build1_s390x.deb ... Unpacking libllvm15:s390x (1:15.0.7-10build1) ... Selecting previously unselected package libsensors-config. Preparing to unpack .../320-libsensors-config_1%3a3.6.0-7ubuntu1_all.deb ... Unpacking libsensors-config (1:3.6.0-7ubuntu1) ... Selecting previously unselected package libsensors5:s390x. Preparing to unpack .../321-libsensors5_1%3a3.6.0-7ubuntu1_s390x.deb ... Unpacking libsensors5:s390x (1:3.6.0-7ubuntu1) ... Selecting previously unselected package libgl1-mesa-dri:s390x. Preparing to unpack .../322-libgl1-mesa-dri_23.2.1-1ubuntu4_s390x.deb ... Unpacking libgl1-mesa-dri:s390x (23.2.1-1ubuntu4) ... Selecting previously unselected package libglx-mesa0:s390x. Preparing to unpack .../323-libglx-mesa0_23.2.1-1ubuntu4_s390x.deb ... Unpacking libglx-mesa0:s390x (23.2.1-1ubuntu4) ... Selecting previously unselected package libglx0:s390x. Preparing to unpack .../324-libglx0_1.7.0-1_s390x.deb ... Unpacking libglx0:s390x (1.7.0-1) ... Selecting previously unselected package libgl1:s390x. Preparing to unpack .../325-libgl1_1.7.0-1_s390x.deb ... Unpacking libgl1:s390x (1.7.0-1) ... Selecting previously unselected package libfltk-gl1.3:s390x. Preparing to unpack .../326-libfltk-gl1.3_1.3.8-6_s390x.deb ... Unpacking libfltk-gl1.3:s390x (1.3.8-6) ... Selecting previously unselected package libgl2ps1.4. Preparing to unpack .../327-libgl2ps1.4_1.4.2+dfsg1-2_s390x.deb ... Unpacking libgl2ps1.4 (1.4.2+dfsg1-2) ... Selecting previously unselected package libltdl7:s390x. Preparing to unpack .../328-libltdl7_2.4.7-7_s390x.deb ... Unpacking libltdl7:s390x (2.4.7-7) ... Selecting previously unselected package libglpk40:s390x. Preparing to unpack .../329-libglpk40_5.0-1build1_s390x.deb ... Unpacking libglpk40:s390x (5.0-1build1) ... Selecting previously unselected package libopengl0:s390x. Preparing to unpack .../330-libopengl0_1.7.0-1_s390x.deb ... Unpacking libopengl0:s390x (1.7.0-1) ... Selecting previously unselected package libglu1-mesa:s390x. Preparing to unpack .../331-libglu1-mesa_9.0.2-1.1_s390x.deb ... Unpacking libglu1-mesa:s390x (9.0.2-1.1) ... Selecting previously unselected package libdav1d7:s390x. Preparing to unpack .../332-libdav1d7_1.3.0-2_s390x.deb ... Unpacking libdav1d7:s390x (1.3.0-2) ... Selecting previously unselected package libheif-plugin-dav1d:s390x. Preparing to unpack .../333-libheif-plugin-dav1d_1.17.1-1ubuntu3_s390x.deb ... Unpacking libheif-plugin-dav1d:s390x (1.17.1-1ubuntu3) ... Selecting previously unselected package libde265-0:s390x. Preparing to unpack .../334-libde265-0_1.0.13-1_s390x.deb ... Unpacking libde265-0:s390x (1.0.13-1) ... Selecting previously unselected package libheif-plugin-libde265:s390x. Preparing to unpack .../335-libheif-plugin-libde265_1.17.1-1ubuntu3_s390x.deb ... Unpacking libheif-plugin-libde265:s390x (1.17.1-1ubuntu3) ... Selecting previously unselected package libheif1:s390x. Preparing to unpack .../336-libheif1_1.17.1-1ubuntu3_s390x.deb ... Unpacking libheif1:s390x (1.17.1-1ubuntu3) ... Selecting previously unselected package libhwy1:s390x. Preparing to unpack .../337-libhwy1_1.0.7-8_s390x.deb ... Unpacking libhwy1:s390x (1.0.7-8) ... Selecting previously unselected package liblcms2-2:s390x. Preparing to unpack .../338-liblcms2-2_2.14-2_s390x.deb ... Unpacking liblcms2-2:s390x (2.14-2) ... Selecting previously unselected package libjxl0.7:s390x. Preparing to unpack .../339-libjxl0.7_0.7.0-10.2ubuntu1_s390x.deb ... Unpacking libjxl0.7:s390x (0.7.0-10.2ubuntu1) ... Selecting previously unselected package libwebpmux3:s390x. Preparing to unpack .../340-libwebpmux3_1.3.2-0.3_s390x.deb ... Unpacking libwebpmux3:s390x (1.3.2-0.3) ... Selecting previously unselected package libwmflite-0.2-7:s390x. Preparing to unpack .../341-libwmflite-0.2-7_0.2.13-1.1_s390x.deb ... Unpacking libwmflite-0.2-7:s390x (0.2.13-1.1) ... Selecting previously unselected package libgraphicsmagick-q16-3. Preparing to unpack .../342-libgraphicsmagick-q16-3_1.4+really1.3.42-1_s390x.deb ... Unpacking libgraphicsmagick-q16-3 (1.4+really1.3.42-1) ... Selecting previously unselected package libgraphicsmagick++-q16-12. Preparing to unpack .../343-libgraphicsmagick++-q16-12_1.4+really1.3.42-1_s390x.deb ... Unpacking libgraphicsmagick++-q16-12 (1.4+really1.3.42-1) ... Selecting previously unselected package libcurl4:s390x. Preparing to unpack .../344-libcurl4_8.4.0-2ubuntu1_s390x.deb ... Unpacking libcurl4:s390x (8.4.0-2ubuntu1) ... Selecting previously unselected package libaec0:s390x. Preparing to unpack .../345-libaec0_1.1.2-1_s390x.deb ... Unpacking libaec0:s390x (1.1.2-1) ... Selecting previously unselected package libsz2:s390x. Preparing to unpack .../346-libsz2_1.1.2-1_s390x.deb ... Unpacking libsz2:s390x (1.1.2-1) ... Selecting previously unselected package libhdf5-103-1:s390x. Preparing to unpack .../347-libhdf5-103-1_1.10.8+repack1-1ubuntu1_s390x.deb ... Unpacking libhdf5-103-1:s390x (1.10.8+repack1-1ubuntu1) ... Selecting previously unselected package libasound2-data. Preparing to unpack .../348-libasound2-data_1.2.10-1_all.deb ... Unpacking libasound2-data (1.2.10-1) ... Selecting previously unselected package libasound2:s390x. Preparing to unpack .../349-libasound2_1.2.10-1_s390x.deb ... Unpacking libasound2:s390x (1.2.10-1) ... Selecting previously unselected package libopus0:s390x. Preparing to unpack .../350-libopus0_1.4-1_s390x.deb ... Unpacking libopus0:s390x (1.4-1) ... Selecting previously unselected package libsamplerate0:s390x. Preparing to unpack .../351-libsamplerate0_0.2.2-4_s390x.deb ... Unpacking libsamplerate0:s390x (0.2.2-4) ... Selecting previously unselected package libjack-jackd2-0:s390x. Preparing to unpack .../352-libjack-jackd2-0_1.9.21~dfsg-3_s390x.deb ... Unpacking libjack-jackd2-0:s390x (1.9.21~dfsg-3) ... Selecting previously unselected package libportaudio2:s390x. Preparing to unpack .../353-libportaudio2_19.6.0-1.2_s390x.deb ... Unpacking libportaudio2:s390x (19.6.0-1.2) ... Selecting previously unselected package libqhull-r8.0:s390x. Preparing to unpack .../354-libqhull-r8.0_2020.2-6_s390x.deb ... Unpacking libqhull-r8.0:s390x (2020.2-6) ... Selecting previously unselected package libqrupdate1:s390x. Preparing to unpack .../355-libqrupdate1_1.1.2-4_s390x.deb ... Unpacking libqrupdate1:s390x (1.1.2-4) ... Selecting previously unselected package libqscintilla2-qt5-l10n. Preparing to unpack .../356-libqscintilla2-qt5-l10n_2.14.1+dfsg-1_all.deb ... Unpacking libqscintilla2-qt5-l10n (2.14.1+dfsg-1) ... Selecting previously unselected package libdouble-conversion3:s390x. Preparing to unpack .../357-libdouble-conversion3_3.3.0-1_s390x.deb ... Unpacking libdouble-conversion3:s390x (3.3.0-1) ... Selecting previously unselected package libpcre2-16-0:s390x. Preparing to unpack .../358-libpcre2-16-0_10.42-4_s390x.deb ... Unpacking libpcre2-16-0:s390x (10.42-4) ... Selecting previously unselected package libqt5core5a:s390x. Preparing to unpack .../359-libqt5core5a_5.15.10+dfsg-5_s390x.deb ... Unpacking libqt5core5a:s390x (5.15.10+dfsg-5) ... Selecting previously unselected package libwayland-server0:s390x. Preparing to unpack .../360-libwayland-server0_1.22.0-2.1_s390x.deb ... Unpacking libwayland-server0:s390x (1.22.0-2.1) ... Selecting previously unselected package libgbm1:s390x. Preparing to unpack .../361-libgbm1_23.2.1-1ubuntu4_s390x.deb ... Unpacking libgbm1:s390x (23.2.1-1ubuntu4) ... Selecting previously unselected package libwayland-client0:s390x. Preparing to unpack .../362-libwayland-client0_1.22.0-2.1_s390x.deb ... Unpacking libwayland-client0:s390x (1.22.0-2.1) ... Selecting previously unselected package libegl-mesa0:s390x. Preparing to unpack .../363-libegl-mesa0_23.2.1-1ubuntu4_s390x.deb ... Unpacking libegl-mesa0:s390x (23.2.1-1ubuntu4) ... Selecting previously unselected package libegl1:s390x. Preparing to unpack .../364-libegl1_1.7.0-1_s390x.deb ... Unpacking libegl1:s390x (1.7.0-1) ... Selecting previously unselected package x11-common. Preparing to unpack .../365-x11-common_1%3a7.7+23ubuntu2_all.deb ... Unpacking x11-common (1:7.7+23ubuntu2) ... Selecting previously unselected package libice6:s390x. Preparing to unpack .../366-libice6_2%3a1.0.10-1build2_s390x.deb ... Unpacking libice6:s390x (2:1.0.10-1build2) ... Selecting previously unselected package libevdev2:s390x. Preparing to unpack .../367-libevdev2_1.13.1+dfsg-1_s390x.deb ... Unpacking libevdev2:s390x (1.13.1+dfsg-1) ... Selecting previously unselected package libmtdev1:s390x. Preparing to unpack .../368-libmtdev1_1.1.6-1build4_s390x.deb ... Unpacking libmtdev1:s390x (1.1.6-1build4) ... Selecting previously unselected package libgudev-1.0-0:s390x. Preparing to unpack .../369-libgudev-1.0-0_1%3a238-3_s390x.deb ... Unpacking libgudev-1.0-0:s390x (1:238-3) ... Selecting previously unselected package libwacom-common. Preparing to unpack .../370-libwacom-common_2.8.0-1_all.deb ... Unpacking libwacom-common (2.8.0-1) ... Selecting previously unselected package libwacom9:s390x. Preparing to unpack .../371-libwacom9_2.8.0-1_s390x.deb ... Unpacking libwacom9:s390x (2.8.0-1) ... Selecting previously unselected package libinput-bin. Preparing to unpack .../372-libinput-bin_1.23.0-2_s390x.deb ... Unpacking libinput-bin (1.23.0-2) ... Selecting previously unselected package libinput10:s390x. Preparing to unpack .../373-libinput10_1.23.0-2_s390x.deb ... Unpacking libinput10:s390x (1.23.0-2) ... Selecting previously unselected package libmd4c0:s390x. Preparing to unpack .../374-libmd4c0_0.4.8-1_s390x.deb ... Unpacking libmd4c0:s390x (0.4.8-1) ... Selecting previously unselected package libqt5dbus5:s390x. Preparing to unpack .../375-libqt5dbus5_5.15.10+dfsg-5_s390x.deb ... Unpacking libqt5dbus5:s390x (5.15.10+dfsg-5) ... Selecting previously unselected package libqt5network5:s390x. Preparing to unpack .../376-libqt5network5_5.15.10+dfsg-5_s390x.deb ... Unpacking libqt5network5:s390x (5.15.10+dfsg-5) ... Selecting previously unselected package libsm6:s390x. Preparing to unpack .../377-libsm6_2%3a1.2.3-1build2_s390x.deb ... Unpacking libsm6:s390x (2:1.2.3-1build2) ... Selecting previously unselected package libxcb-icccm4:s390x. Preparing to unpack .../378-libxcb-icccm4_0.4.1-1.1build2_s390x.deb ... Unpacking libxcb-icccm4:s390x (0.4.1-1.1build2) ... Selecting previously unselected package libxcb-util1:s390x. Preparing to unpack .../379-libxcb-util1_0.4.0-1build2_s390x.deb ... Unpacking libxcb-util1:s390x (0.4.0-1build2) ... Selecting previously unselected package libxcb-image0:s390x. Preparing to unpack .../380-libxcb-image0_0.4.0-2_s390x.deb ... Unpacking libxcb-image0:s390x (0.4.0-2) ... Selecting previously unselected package libxcb-keysyms1:s390x. Preparing to unpack .../381-libxcb-keysyms1_0.4.0-1build3_s390x.deb ... Unpacking libxcb-keysyms1:s390x (0.4.0-1build3) ... Selecting previously unselected package libxcb-render-util0:s390x. Preparing to unpack .../382-libxcb-render-util0_0.3.9-1build3_s390x.deb ... Unpacking libxcb-render-util0:s390x (0.3.9-1build3) ... Selecting previously unselected package libxcb-shape0:s390x. Preparing to unpack .../383-libxcb-shape0_1.15-1_s390x.deb ... Unpacking libxcb-shape0:s390x (1.15-1) ... Selecting previously unselected package libxcb-xinerama0:s390x. Preparing to unpack .../384-libxcb-xinerama0_1.15-1_s390x.deb ... Unpacking libxcb-xinerama0:s390x (1.15-1) ... Selecting previously unselected package libxcb-xinput0:s390x. Preparing to unpack .../385-libxcb-xinput0_1.15-1_s390x.deb ... Unpacking libxcb-xinput0:s390x (1.15-1) ... Selecting previously unselected package libxcb-xkb1:s390x. Preparing to unpack .../386-libxcb-xkb1_1.15-1_s390x.deb ... Unpacking libxcb-xkb1:s390x (1.15-1) ... Selecting previously unselected package libxkbcommon0:s390x. Preparing to unpack .../387-libxkbcommon0_1.6.0-1_s390x.deb ... Unpacking libxkbcommon0:s390x (1.6.0-1) ... Selecting previously unselected package libxkbcommon-x11-0:s390x. Preparing to unpack .../388-libxkbcommon-x11-0_1.6.0-1_s390x.deb ... Unpacking libxkbcommon-x11-0:s390x (1.6.0-1) ... Selecting previously unselected package libqt5gui5:s390x. Preparing to unpack .../389-libqt5gui5_5.15.10+dfsg-5_s390x.deb ... Unpacking libqt5gui5:s390x (5.15.10+dfsg-5) ... Selecting previously unselected package libavahi-common-data:s390x. Preparing to unpack .../390-libavahi-common-data_0.8-13ubuntu2_s390x.deb ... Unpacking libavahi-common-data:s390x (0.8-13ubuntu2) ... Selecting previously unselected package libavahi-common3:s390x. Preparing to unpack .../391-libavahi-common3_0.8-13ubuntu2_s390x.deb ... Unpacking libavahi-common3:s390x (0.8-13ubuntu2) ... Selecting previously unselected package libavahi-client3:s390x. Preparing to unpack .../392-libavahi-client3_0.8-13ubuntu2_s390x.deb ... Unpacking libavahi-client3:s390x (0.8-13ubuntu2) ... Selecting previously unselected package libcups2:s390x. Preparing to unpack .../393-libcups2_2.4.6-0ubuntu3_s390x.deb ... Unpacking libcups2:s390x (2.4.6-0ubuntu3) ... Selecting previously unselected package libqt5widgets5:s390x. Preparing to unpack .../394-libqt5widgets5_5.15.10+dfsg-5_s390x.deb ... Unpacking libqt5widgets5:s390x (5.15.10+dfsg-5) ... Selecting previously unselected package libqt5printsupport5:s390x. Preparing to unpack .../395-libqt5printsupport5_5.15.10+dfsg-5_s390x.deb ... Unpacking libqt5printsupport5:s390x (5.15.10+dfsg-5) ... Selecting previously unselected package libqscintilla2-qt5-15:s390x. Preparing to unpack .../396-libqscintilla2-qt5-15_2.14.1+dfsg-1_s390x.deb ... Unpacking libqscintilla2-qt5-15:s390x (2.14.1+dfsg-1) ... Selecting previously unselected package libqt5sql5:s390x. Preparing to unpack .../397-libqt5sql5_5.15.10+dfsg-5_s390x.deb ... Unpacking libqt5sql5:s390x (5.15.10+dfsg-5) ... Selecting previously unselected package libqt5help5:s390x. Preparing to unpack .../398-libqt5help5_5.15.10-5_s390x.deb ... Unpacking libqt5help5:s390x (5.15.10-5) ... Selecting previously unselected package libqt5xml5:s390x. Preparing to unpack .../399-libqt5xml5_5.15.10+dfsg-5_s390x.deb ... Unpacking libqt5xml5:s390x (5.15.10+dfsg-5) ... Selecting previously unselected package libogg0:s390x. Preparing to unpack .../400-libogg0_1.3.5-3_s390x.deb ... Unpacking libogg0:s390x (1.3.5-3) ... Selecting previously unselected package libflac12:s390x. Preparing to unpack .../401-libflac12_1.4.3+ds-2ubuntu1_s390x.deb ... Unpacking libflac12:s390x (1.4.3+ds-2ubuntu1) ... Selecting previously unselected package libmp3lame0:s390x. Preparing to unpack .../402-libmp3lame0_3.100-6_s390x.deb ... Unpacking libmp3lame0:s390x (3.100-6) ... Selecting previously unselected package libmpg123-0:s390x. Preparing to unpack .../403-libmpg123-0_1.32.3-1_s390x.deb ... Unpacking libmpg123-0:s390x (1.32.3-1) ... Selecting previously unselected package libvorbis0a:s390x. Preparing to unpack .../404-libvorbis0a_1.3.7-1build2_s390x.deb ... Unpacking libvorbis0a:s390x (1.3.7-1build2) ... Selecting previously unselected package libvorbisenc2:s390x. Preparing to unpack .../405-libvorbisenc2_1.3.7-1build2_s390x.deb ... Unpacking libvorbisenc2:s390x (1.3.7-1build2) ... Selecting previously unselected package libsndfile1:s390x. Preparing to unpack .../406-libsndfile1_1.2.2-1ubuntu2_s390x.deb ... Unpacking libsndfile1:s390x (1.2.2-1ubuntu2) ... Selecting previously unselected package libspqr4:s390x. Preparing to unpack .../407-libspqr4_1%3a7.3.1+dfsg-2_s390x.deb ... Unpacking libspqr4:s390x (1:7.3.1+dfsg-2) ... Selecting previously unselected package libsundials-ida6:s390x. Preparing to unpack .../408-libsundials-ida6_6.4.1+dfsg1-3build1_s390x.deb ... Unpacking libsundials-ida6:s390x (6.4.1+dfsg1-3build1) ... Selecting previously unselected package libbtf2:s390x. Preparing to unpack .../409-libbtf2_1%3a7.3.1+dfsg-2_s390x.deb ... Unpacking libbtf2:s390x (1:7.3.1+dfsg-2) ... Selecting previously unselected package libklu2:s390x. Preparing to unpack .../410-libklu2_1%3a7.3.1+dfsg-2_s390x.deb ... Unpacking libklu2:s390x (1:7.3.1+dfsg-2) ... Selecting previously unselected package libfftw3-long3:s390x. Preparing to unpack .../411-libfftw3-long3_3.3.10-1ubuntu1_s390x.deb ... Unpacking libfftw3-long3:s390x (3.3.10-1ubuntu1) ... Selecting previously unselected package libevent-core-2.1-7:s390x. Preparing to unpack .../412-libevent-core-2.1-7_2.1.12-stable-9_s390x.deb ... Unpacking libevent-core-2.1-7:s390x (2.1.12-stable-9) ... Selecting previously unselected package libevent-pthreads-2.1-7:s390x. Preparing to unpack .../413-libevent-pthreads-2.1-7_2.1.12-stable-9_s390x.deb ... Unpacking libevent-pthreads-2.1-7:s390x (2.1.12-stable-9) ... Selecting previously unselected package libnl-3-200:s390x. Preparing to unpack .../414-libnl-3-200_3.7.0-0.2_s390x.deb ... Unpacking libnl-3-200:s390x (3.7.0-0.2) ... Selecting previously unselected package libnl-route-3-200:s390x. Preparing to unpack .../415-libnl-route-3-200_3.7.0-0.2_s390x.deb ... Unpacking libnl-route-3-200:s390x (3.7.0-0.2) ... Selecting previously unselected package libibverbs1:s390x. Preparing to unpack .../416-libibverbs1_48.0-1_s390x.deb ... Unpacking libibverbs1:s390x (48.0-1) ... Selecting previously unselected package ibverbs-providers:s390x. Preparing to unpack .../417-ibverbs-providers_48.0-1_s390x.deb ... Unpacking ibverbs-providers:s390x (48.0-1) ... Selecting previously unselected package librdmacm1:s390x. Preparing to unpack .../418-librdmacm1_48.0-1_s390x.deb ... Unpacking librdmacm1:s390x (48.0-1) ... Selecting previously unselected package libfabric1:s390x. Preparing to unpack .../419-libfabric1_1.17.0-3_s390x.deb ... Unpacking libfabric1:s390x (1.17.0-3) ... Selecting previously unselected package libhwloc15:s390x. Preparing to unpack .../420-libhwloc15_2.9.3-2_s390x.deb ... Unpacking libhwloc15:s390x (2.9.3-2) ... Selecting previously unselected package libmunge2. Preparing to unpack .../421-libmunge2_0.5.15-2_s390x.deb ... Unpacking libmunge2 (0.5.15-2) ... Selecting previously unselected package libpciaccess0:s390x. Preparing to unpack .../422-libpciaccess0_0.17-3_s390x.deb ... Unpacking libpciaccess0:s390x (0.17-3) ... Selecting previously unselected package libxnvctrl0:s390x. Preparing to unpack .../423-libxnvctrl0_510.47.03-0ubuntu1_s390x.deb ... Unpacking libxnvctrl0:s390x (510.47.03-0ubuntu1) ... Selecting previously unselected package ocl-icd-libopencl1:s390x. Preparing to unpack .../424-ocl-icd-libopencl1_2.3.2-1_s390x.deb ... Unpacking ocl-icd-libopencl1:s390x (2.3.2-1) ... Selecting previously unselected package libhwloc-plugins:s390x. Preparing to unpack .../425-libhwloc-plugins_2.9.3-2_s390x.deb ... Unpacking libhwloc-plugins:s390x (2.9.3-2) ... Selecting previously unselected package libpmix2:s390x. Preparing to unpack .../426-libpmix2_5.0.1-3ubuntu1_s390x.deb ... Unpacking libpmix2:s390x (5.0.1-3ubuntu1) ... Selecting previously unselected package libopenmpi3:s390x. Preparing to unpack .../427-libopenmpi3_4.1.6-1ubuntu1_s390x.deb ... Unpacking libopenmpi3:s390x (4.1.6-1ubuntu1) ... Selecting previously unselected package libfftw3-mpi3:s390x. Preparing to unpack .../428-libfftw3-mpi3_3.3.10-1ubuntu1_s390x.deb ... Unpacking libfftw3-mpi3:s390x (3.3.10-1ubuntu1) ... Selecting previously unselected package libhdf5-openmpi-103-1:s390x. Preparing to unpack .../429-libhdf5-openmpi-103-1_1.10.8+repack1-1ubuntu1_s390x.deb ... Unpacking libhdf5-openmpi-103-1:s390x (1.10.8+repack1-1ubuntu1) ... Selecting previously unselected package libcombblas2.0.0:s390x. Preparing to unpack .../430-libcombblas2.0.0_2.0.0-3_s390x.deb ... Unpacking libcombblas2.0.0:s390x (2.0.0-3) ... Selecting previously unselected package libmetis5:s390x. Preparing to unpack .../431-libmetis5_5.1.0.dfsg-7build2_s390x.deb ... Unpacking libmetis5:s390x (5.1.0.dfsg-7build2) ... Selecting previously unselected package libptscotch-7.0:s390x. Preparing to unpack .../432-libptscotch-7.0_7.0.4-1_s390x.deb ... Unpacking libptscotch-7.0:s390x (7.0.4-1) ... Selecting previously unselected package libsuperlu-dist8:s390x. Preparing to unpack .../433-libsuperlu-dist8_8.1.2+dfsg1-2_s390x.deb ... Unpacking libsuperlu-dist8:s390x (8.1.2+dfsg1-2) ... Selecting previously unselected package libhypre-2.28.0:s390x. Preparing to unpack .../434-libhypre-2.28.0_2.28.0-7_s390x.deb ... Unpacking libhypre-2.28.0:s390x (2.28.0-7) ... Selecting previously unselected package openmpi-common. Preparing to unpack .../435-openmpi-common_4.1.6-1ubuntu1_all.deb ... Unpacking openmpi-common (4.1.6-1ubuntu1) ... Selecting previously unselected package openmpi-bin. Preparing to unpack .../436-openmpi-bin_4.1.6-1ubuntu1_s390x.deb ... Unpacking openmpi-bin (4.1.6-1ubuntu1) ... Selecting previously unselected package mpi-default-bin. Preparing to unpack .../437-mpi-default-bin_1.15_s390x.deb ... Unpacking mpi-default-bin (1.15) ... Selecting previously unselected package libscalapack-openmpi2.2:s390x. Preparing to unpack .../438-libscalapack-openmpi2.2_2.2.1-3_s390x.deb ... Unpacking libscalapack-openmpi2.2:s390x (2.2.1-3) ... Selecting previously unselected package libmumps-5.6:s390x. Preparing to unpack .../439-libmumps-5.6_5.6.1-1ubuntu1_s390x.deb ... Unpacking libmumps-5.6:s390x (5.6.1-1ubuntu1) ... Selecting previously unselected package libsuperlu6:s390x. Preparing to unpack .../440-libsuperlu6_6.0.1+dfsg1-1_s390x.deb ... Unpacking libsuperlu6:s390x (6.0.1+dfsg1-1) ... Selecting previously unselected package libscotch-7.0:s390x. Preparing to unpack .../441-libscotch-7.0_7.0.4-1_s390x.deb ... Unpacking libscotch-7.0:s390x (7.0.4-1) ... Selecting previously unselected package libtrilinos-kokkos-13.2:s390x. Preparing to unpack .../442-libtrilinos-kokkos-13.2_13.2.0-5_s390x.deb ... Unpacking libtrilinos-kokkos-13.2:s390x (13.2.0-5) ... Selecting previously unselected package libtrilinos-teuchos-13.2:s390x. Preparing to unpack .../443-libtrilinos-teuchos-13.2_13.2.0-5_s390x.deb ... Unpacking libtrilinos-teuchos-13.2:s390x (13.2.0-5) ... Selecting previously unselected package libtrilinos-epetra-13.2:s390x. Preparing to unpack .../444-libtrilinos-epetra-13.2_13.2.0-5_s390x.deb ... Unpacking libtrilinos-epetra-13.2:s390x (13.2.0-5) ... Selecting previously unselected package libtrilinos-triutils-13.2:s390x. Preparing to unpack .../445-libtrilinos-triutils-13.2_13.2.0-5_s390x.deb ... Unpacking libtrilinos-triutils-13.2:s390x (13.2.0-5) ... Selecting previously unselected package libtrilinos-epetraext-13.2:s390x. Preparing to unpack .../446-libtrilinos-epetraext-13.2_13.2.0-5_s390x.deb ... Unpacking libtrilinos-epetraext-13.2:s390x (13.2.0-5) ... Selecting previously unselected package libtrilinos-trilinosss-13.2:s390x. Preparing to unpack .../447-libtrilinos-trilinosss-13.2_13.2.0-5_s390x.deb ... Unpacking libtrilinos-trilinosss-13.2:s390x (13.2.0-5) ... Selecting previously unselected package libtrilinos-amesos-13.2:s390x. Preparing to unpack .../448-libtrilinos-amesos-13.2_13.2.0-5_s390x.deb ... Unpacking libtrilinos-amesos-13.2:s390x (13.2.0-5) ... Selecting previously unselected package libtrilinos-aztecoo-13.2:s390x. Preparing to unpack .../449-libtrilinos-aztecoo-13.2_13.2.0-5_s390x.deb ... Unpacking libtrilinos-aztecoo-13.2:s390x (13.2.0-5) ... Selecting previously unselected package libtrilinos-galeri-13.2:s390x. Preparing to unpack .../450-libtrilinos-galeri-13.2_13.2.0-5_s390x.deb ... Unpacking libtrilinos-galeri-13.2:s390x (13.2.0-5) ... Selecting previously unselected package libtrilinos-ifpack-13.2:s390x. Preparing to unpack .../451-libtrilinos-ifpack-13.2_13.2.0-5_s390x.deb ... Unpacking libtrilinos-ifpack-13.2:s390x (13.2.0-5) ... Selecting previously unselected package libtrilinos-zoltan-13.2:s390x. Preparing to unpack .../452-libtrilinos-zoltan-13.2_13.2.0-5_s390x.deb ... Unpacking libtrilinos-zoltan-13.2:s390x (13.2.0-5) ... Selecting previously unselected package libtrilinos-ml-13.2:s390x. Preparing to unpack .../453-libtrilinos-ml-13.2_13.2.0-5_s390x.deb ... Unpacking libtrilinos-ml-13.2:s390x (13.2.0-5) ... Selecting previously unselected package libumfpack6:s390x. Preparing to unpack .../454-libumfpack6_1%3a7.3.1+dfsg-2_s390x.deb ... Unpacking libumfpack6:s390x (1:7.3.1+dfsg-2) ... Selecting previously unselected package libpetsc-real3.18:s390x. Preparing to unpack .../455-libpetsc-real3.18_3.18.6+dfsg1-1ubuntu3_s390x.deb ... Unpacking libpetsc-real3.18:s390x (3.18.6+dfsg1-1ubuntu3) ... Selecting previously unselected package libsundials-nvecparallel-petsc6:s390x. Preparing to unpack .../456-libsundials-nvecparallel-petsc6_6.4.1+dfsg1-3build1_s390x.deb ... Unpacking libsundials-nvecparallel-petsc6:s390x (6.4.1+dfsg1-3build1) ... Selecting previously unselected package libsundials-sunmatrix4:s390x. Preparing to unpack .../457-libsundials-sunmatrix4_6.4.1+dfsg1-3build1_s390x.deb ... Unpacking libsundials-sunmatrix4:s390x (6.4.1+dfsg1-3build1) ... Selecting previously unselected package libsundials-sunlinsol3:s390x. Preparing to unpack .../458-libsundials-sunlinsol3_6.4.1+dfsg1-3build1_s390x.deb ... Unpacking libsundials-sunlinsol3:s390x (6.4.1+dfsg1-3build1) ... Selecting previously unselected package libtext-unidecode-perl. Preparing to unpack .../459-libtext-unidecode-perl_1.30-3_all.deb ... Unpacking libtext-unidecode-perl (1.30-3) ... Selecting previously unselected package texinfo-lib. Preparing to unpack .../460-texinfo-lib_7.1-2_s390x.deb ... Unpacking texinfo-lib (7.1-2) ... Selecting previously unselected package tex-common. Preparing to unpack .../461-tex-common_6.18_all.deb ... Unpacking tex-common (6.18) ... Selecting previously unselected package texinfo. Preparing to unpack .../462-texinfo_7.1-2_all.deb ... Unpacking texinfo (7.1-2) ... Selecting previously unselected package octave-common. Preparing to unpack .../463-octave-common_8.4.0-1build1_all.deb ... Unpacking octave-common (8.4.0-1build1) ... Selecting previously unselected package octave. Preparing to unpack .../464-octave_8.4.0-1build1_s390x.deb ... Unpacking octave (8.4.0-1build1) ... Selecting previously unselected package libncurses-dev:s390x. Preparing to unpack .../465-libncurses-dev_6.4+20231121-1build1_s390x.deb ... Unpacking libncurses-dev:s390x (6.4+20231121-1build1) ... Selecting previously unselected package libreadline-dev:s390x. Preparing to unpack .../466-libreadline-dev_8.2-3_s390x.deb ... Unpacking libreadline-dev:s390x (8.2-3) ... Selecting previously unselected package libhdf5-fortran-102:s390x. Preparing to unpack .../467-libhdf5-fortran-102_1.10.8+repack1-1ubuntu1_s390x.deb ... Unpacking libhdf5-fortran-102:s390x (1.10.8+repack1-1ubuntu1) ... Selecting previously unselected package libhdf5-hl-100:s390x. Preparing to unpack .../468-libhdf5-hl-100_1.10.8+repack1-1ubuntu1_s390x.deb ... Unpacking libhdf5-hl-100:s390x (1.10.8+repack1-1ubuntu1) ... Selecting previously unselected package libhdf5-hl-fortran-100:s390x. Preparing to unpack .../469-libhdf5-hl-fortran-100_1.10.8+repack1-1ubuntu1_s390x.deb ... Unpacking libhdf5-hl-fortran-100:s390x (1.10.8+repack1-1ubuntu1) ... Selecting previously unselected package libhdf5-cpp-103-1:s390x. Preparing to unpack .../470-libhdf5-cpp-103-1_1.10.8+repack1-1ubuntu1_s390x.deb ... Unpacking libhdf5-cpp-103-1:s390x (1.10.8+repack1-1ubuntu1) ... Selecting previously unselected package libhdf5-hl-cpp-100:s390x. Preparing to unpack .../471-libhdf5-hl-cpp-100_1.10.8+repack1-1ubuntu1_s390x.deb ... Unpacking libhdf5-hl-cpp-100:s390x (1.10.8+repack1-1ubuntu1) ... Selecting previously unselected package zlib1g-dev:s390x. Preparing to unpack .../472-zlib1g-dev_1%3a1.3.dfsg-3ubuntu1_s390x.deb ... Unpacking zlib1g-dev:s390x (1:1.3.dfsg-3ubuntu1) ... Selecting previously unselected package libjpeg-turbo8-dev:s390x. Preparing to unpack .../473-libjpeg-turbo8-dev_2.1.5-2ubuntu1_s390x.deb ... Unpacking libjpeg-turbo8-dev:s390x (2.1.5-2ubuntu1) ... Selecting previously unselected package libjpeg8-dev:s390x. Preparing to unpack .../474-libjpeg8-dev_8c-2ubuntu11_s390x.deb ... Unpacking libjpeg8-dev:s390x (8c-2ubuntu11) ... Selecting previously unselected package libjpeg-dev:s390x. Preparing to unpack .../475-libjpeg-dev_8c-2ubuntu11_s390x.deb ... Unpacking libjpeg-dev:s390x (8c-2ubuntu11) ... Selecting previously unselected package libaec-dev:s390x. Preparing to unpack .../476-libaec-dev_1.1.2-1_s390x.deb ... Unpacking libaec-dev:s390x (1.1.2-1) ... Selecting previously unselected package libcurl4-openssl-dev:s390x. Preparing to unpack .../477-libcurl4-openssl-dev_8.4.0-2ubuntu1_s390x.deb ... Unpacking libcurl4-openssl-dev:s390x (8.4.0-2ubuntu1) ... Selecting previously unselected package libssl-dev:s390x. Preparing to unpack .../478-libssl-dev_3.0.10-1ubuntu3_s390x.deb ... Unpacking libssl-dev:s390x (3.0.10-1ubuntu3) ... Selecting previously unselected package hdf5-helpers. Preparing to unpack .../479-hdf5-helpers_1.10.8+repack1-1ubuntu1_s390x.deb ... Unpacking hdf5-helpers (1.10.8+repack1-1ubuntu1) ... Selecting previously unselected package libhdf5-dev. Preparing to unpack .../480-libhdf5-dev_1.10.8+repack1-1ubuntu1_s390x.deb ... Unpacking libhdf5-dev (1.10.8+repack1-1ubuntu1) ... Selecting previously unselected package xorg-sgml-doctools. Preparing to unpack .../481-xorg-sgml-doctools_1%3a1.11-1.1_all.deb ... Unpacking xorg-sgml-doctools (1:1.11-1.1) ... Selecting previously unselected package x11proto-dev. Preparing to unpack .../482-x11proto-dev_2023.2-1_all.deb ... Unpacking x11proto-dev (2023.2-1) ... Selecting previously unselected package libxau-dev:s390x. Preparing to unpack .../483-libxau-dev_1%3a1.0.9-1build5_s390x.deb ... Unpacking libxau-dev:s390x (1:1.0.9-1build5) ... Selecting previously unselected package libxdmcp-dev:s390x. Preparing to unpack .../484-libxdmcp-dev_1%3a1.1.3-0ubuntu5_s390x.deb ... Unpacking libxdmcp-dev:s390x (1:1.1.3-0ubuntu5) ... Selecting previously unselected package xtrans-dev. Preparing to unpack .../485-xtrans-dev_1.4.0-1_all.deb ... Unpacking xtrans-dev (1.4.0-1) ... Selecting previously unselected package libpthread-stubs0-dev:s390x. Preparing to unpack .../486-libpthread-stubs0-dev_0.4-1build2_s390x.deb ... Unpacking libpthread-stubs0-dev:s390x (0.4-1build2) ... Selecting previously unselected package libxcb1-dev:s390x. Preparing to unpack .../487-libxcb1-dev_1.15-1_s390x.deb ... Unpacking libxcb1-dev:s390x (1.15-1) ... Selecting previously unselected package libx11-dev:s390x. Preparing to unpack .../488-libx11-dev_2%3a1.8.7-1_s390x.deb ... Unpacking libx11-dev:s390x (2:1.8.7-1) ... Selecting previously unselected package libglx-dev:s390x. Preparing to unpack .../489-libglx-dev_1.7.0-1_s390x.deb ... Unpacking libglx-dev:s390x (1.7.0-1) ... Selecting previously unselected package libgl-dev:s390x. Preparing to unpack .../490-libgl-dev_1.7.0-1_s390x.deb ... Unpacking libgl-dev:s390x (1.7.0-1) ... Selecting previously unselected package libblas-dev:s390x. Preparing to unpack .../491-libblas-dev_3.11.0-2build1_s390x.deb ... Unpacking libblas-dev:s390x (3.11.0-2build1) ... Selecting previously unselected package liblapack-dev:s390x. Preparing to unpack .../492-liblapack-dev_3.11.0-2build1_s390x.deb ... Unpacking liblapack-dev:s390x (3.11.0-2build1) ... Selecting previously unselected package libfftw3-bin. Preparing to unpack .../493-libfftw3-bin_3.3.10-1ubuntu1_s390x.deb ... Unpacking libfftw3-bin (3.3.10-1ubuntu1) ... Selecting previously unselected package libfftw3-dev:s390x. Preparing to unpack .../494-libfftw3-dev_3.3.10-1ubuntu1_s390x.deb ... Unpacking libfftw3-dev:s390x (3.3.10-1ubuntu1) ... Selecting previously unselected package libgfortran-13-dev:s390x. Preparing to unpack .../495-libgfortran-13-dev_13.2.0-7ubuntu1_s390x.deb ... Unpacking libgfortran-13-dev:s390x (13.2.0-7ubuntu1) ... Selecting previously unselected package gfortran-13. Preparing to unpack .../496-gfortran-13_13.2.0-7ubuntu1_s390x.deb ... Unpacking gfortran-13 (13.2.0-7ubuntu1) ... Selecting previously unselected package gfortran. Preparing to unpack .../497-gfortran_4%3a13.2.0-2ubuntu1_s390x.deb ... Unpacking gfortran (4:13.2.0-2ubuntu1) ... Selecting previously unselected package octave-dev. Preparing to unpack .../498-octave-dev_8.4.0-1build1_s390x.deb ... Unpacking octave-dev (8.4.0-1build1) ... Selecting previously unselected package dh-octave. Preparing to unpack .../499-dh-octave_1.5.1_all.deb ... Unpacking dh-octave (1.5.1) ... Selecting previously unselected package sbuild-build-depends-main-dummy. Preparing to unpack .../500-sbuild-build-depends-main-dummy_0.invalid.0_s390x.deb ... Unpacking sbuild-build-depends-main-dummy (0.invalid.0) ... Setting up libapt-pkg-perl (0.1.40build3) ... Setting up libexpat1:s390x (2.5.0-2) ... Setting up libmodule-pluggable-perl (5.2-4) ... Setting up libpipeline1:s390x (1.5.7-1) ... Setting up libgraphite2-3:s390x (1.3.14-1build2) ... Setting up libstring-escape-perl (2010.002-3) ... Setting up liblcms2-2:s390x (2.14-2) ... Setting up libberkeleydb-perl:s390x (0.64-2) ... Setting up libpixman-1-0:s390x (0.42.2-1) ... Setting up libsharpyuv0:s390x (1.3.2-0.3) ... Setting up libwayland-server0:s390x (1.22.0-2.1) ... Setting up libpciaccess0:s390x (0.17-3) ... Setting up libfile-which-perl (1.27-2) ... Setting up libxau6:s390x (1:1.0.9-1build5) ... Setting up libdouble-conversion3:s390x (3.3.0-1) ... Setting up libpsl5:s390x (0.21.2-1build1) ... Setting up libunicode-utf8-perl (0.62-2) ... Setting up libfftw3-single3:s390x (3.3.10-1ubuntu1) ... Setting up libset-intspan-perl (1.19-3) ... Setting up libicu72:s390x (72.1-3ubuntu3) ... Setting up libmpg123-0:s390x (1.32.3-1) ... Setting up libogg0:s390x (1.3.5-3) ... Setting up libmouse-perl (2.5.10-1build5) ... Setting up fonts-noto-mono (20201225-2) ... Setting up libpod-pom-perl (2.01-4) ... Setting up hdf5-helpers (1.10.8+repack1-1ubuntu1) ... Setting up libwmflite-0.2-7:s390x (0.2.13-1.1) ... Setting up libregexp-pattern-perl (0.2.14-2) ... Setting up libdata-messagepack-perl (1.02-1build1) ... Setting up libdynaloader-functions-perl (0.003-3) ... Setting up libdatrie1:s390x (0.2.13-2) ... Setting up libtext-glob-perl (0.11-3) ... Setting up libclass-method-modifiers-perl (2.15-1) ... Setting up liblist-compare-perl (0.55-2) ... Setting up libmagic-mgc (1:5.45-2) ... Setting up libcbor0.10:s390x (0.10.2-1.1ubuntu1) ... Setting up libclone-perl:s390x (0.46-1) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libyaml-0-2:s390x (0.2.5-1) ... Setting up libsub-identify-perl (0.14-3) ... Setting up libglib2.0-0:s390x (2.78.1-4) ... No schema files found: doing nothing. Setting up libcpanel-json-xs-perl:s390x (4.37-1) ... Setting up libglvnd0:s390x (1.7.0-1) ... Setting up libio-stringy-perl (2.111-3) ... Setting up libscotch-7.0:s390x (7.0.4-1) ... Setting up libhtml-tagset-perl (3.20-6) ... Setting up liblog-any-perl (1.717-1) ... Setting up libqscintilla2-qt5-l10n (2.14.1+dfsg-1) ... Setting up libyaml-pp-perl (0.37.0-1) ... Setting up libdevel-size-perl (0.83-2build1) ... Setting up unzip (6.0-28ubuntu1) ... Setting up libdebhelper-perl (13.11.8ubuntu1) ... Setting up libbrotli1:s390x (1.1.0-2) ... Setting up libregexp-pattern-license-perl (3.11.0-1) ... Setting up libconvert-binhex-perl (1.125-3) ... Setting up liblwp-mediatypes-perl (6.04-2) ... Setting up libyaml-libyaml-perl (0.86+ds-1) ... Setting up fonts-freefont-otf (20211204+svn4273-2) ... Setting up libio-interactive-perl (1.025-1) ... Setting up x11-common (1:7.7+23ubuntu2) ... Running in chroot, ignoring request. invoke-rc.d: policy-rc.d denied execution of start. Setting up libtry-tiny-perl (0.31-2) ... Setting up libsensors-config (1:3.6.0-7ubuntu1) ... Setting up libcxsparse4:s390x (1:7.3.1+dfsg-2) ... Setting up libnghttp2-14:s390x (1.58.0-1) ... Setting up libmagic1:s390x (1:5.45-2) ... Setting up libdeflate0:s390x (1.18-1) ... Setting up perl-openssl-defaults:s390x (7) ... Setting up libmldbm-perl (2.05-4) ... Setting up libxml-namespacesupport-perl (1.12-2) ... Setting up libfftw3-long3:s390x (3.3.10-1ubuntu1) ... Setting up gettext-base (0.21-13build1) ... Setting up m4 (1.4.19-4) ... Setting up libclone-choose-perl (0.010-2) ... Setting up libqhull-r8.0:s390x (2020.2-6) ... Setting up xkb-data (2.38-2) ... Setting up liblzo2-2:s390x (2.10-2build3) ... Setting up libtime-moment-perl (0.44-2build1) ... Setting up libencode-locale-perl (1.05-3) ... Setting up libhwy1:s390x (1.0.7-8) ... Setting up libtrilinos-kokkos-13.2:s390x (13.2.0-5) ... Setting up libmetis5:s390x (5.1.0.dfsg-7build2) ... Setting up file (1:5.45-2) ... Setting up texinfo-lib (7.1-2) ... Setting up libconfig-tiny-perl (2.30-1) ... Setting up libsereal-encoder-perl (5.004+ds-1) ... Setting up liblist-utilsby-perl (0.12-2) ... Setting up libyaml-tiny-perl (1.74-1) ... Setting up libpthread-stubs0-dev:s390x (0.4-1build2) ... Setting up libjbig0:s390x (2.1-6.1ubuntu1) ... Setting up octave-common (8.4.0-1build1) ... Setting up libregexp-common-perl (2017060201-3) ... Setting up libpcre2-16-0:s390x (10.42-4) ... Setting up libaec0:s390x (1.1.2-1) ... Setting up libnet-netmask-perl (2.0002-2) ... Setting up libopengl0:s390x (1.7.0-1) ... Setting up libsub-install-perl (0.929-1) ... Setting up libindirect-perl (0.39-2build1) ... Setting up libxs-parse-sublike-perl:s390x (0.21-2) ... Setting up libnumber-compare-perl (0.03-3) ... Setting up libsasl2-modules-db:s390x (2.1.28+dfsg1-4) ... Setting up liberror-perl (0.17029-2) ... Setting up libtrilinos-trilinosss-13.2:s390x (13.2.0-5) ... Setting up libasound2-data (1.2.10-1) ... Setting up patchutils (0.4.2-1build2) ... Setting up libbtf2:s390x (1:7.3.1+dfsg-2) ... Setting up libjson-maybexs-perl (1.004005-1) ... Setting up libxml-sax-base-perl (1.09-3) ... Setting up libio-string-perl (1.08-4) ... Setting up libboolean-perl (0.46-3) ... Setting up libnetaddr-ip-perl (4.079+dfsg-2build1) ... Setting up xtrans-dev (1.4.0-1) ... Setting up autotools-dev (20220109.1) ... Setting up libblas3:s390x (3.11.0-2build1) ... update-alternatives: using /usr/lib/s390x-linux-gnu/blas/libblas.so.3 to provide /usr/lib/s390x-linux-gnu/libblas.so.3 (libblas.so.3-s390x-linux-gnu) in auto mode Setting up libclass-data-inheritable-perl (0.08-3) ... Setting up libxs-parse-keyword-perl (0.38-1) ... Setting up libflac12:s390x (1.4.3+ds-2ubuntu1) ... Setting up libalgorithm-c3-perl (0.11-2) ... Setting up libmunge2 (0.5.15-2) ... Setting up liblog-log4perl-perl (1.57-1) ... Setting up libtext-reform-perl (1.20-5) ... Setting up libfreetype6:s390x (2.13.2+dfsg-1) ... Setting up libx11-data (2:1.8.7-1) ... Setting up libfile-find-rule-perl (0.34-3) ... Setting up librtmp1:s390x (2.4+20151223.gitfa8646d.1-2build4) ... Setting up libipc-system-simple-perl (1.30-2) ... Setting up libio-tiecombine-perl (1.005-3) ... Setting up libnet-domain-tld-perl (1.75-3) ... Setting up libperlio-utf8-strict-perl (0.010-1) ... Setting up aglfn (1.7+git20191031.4036a9c-2) ... Setting up lzip (1.23-6) ... update-alternatives: using /usr/bin/lzip.lzip to provide /usr/bin/lzip (lzip) in auto mode update-alternatives: using /usr/bin/lzip.lzip to provide /usr/bin/lzip-compressor (lzip-compressor) in auto mode update-alternatives: using /usr/bin/lzip.lzip to provide /usr/bin/lzip-decompressor (lzip-decompressor) in auto mode Setting up libavahi-common-data:s390x (0.8-13ubuntu2) ... Setting up libncurses6:s390x (6.4+20231121-1build1) ... Setting up libdbus-1-3:s390x (1.14.10-1ubuntu1) ... Setting up libfribidi0:s390x (1.0.13-3) ... Setting up libopus0:s390x (1.4-1) ... Setting up t1utils (1.41-4build2) ... Setting up diffstat (1.65-1) ... Setting up libssl-dev:s390x (3.0.10-1ubuntu3) ... Setting up libhwloc15:s390x (2.9.3-2) ... Setting up libevent-core-2.1-7:s390x (2.1.12-stable-9) ... Setting up libvorbis0a:s390x (1.3.7-1build2) ... Setting up libvariable-magic-perl (0.63-1) ... Setting up libio-html-perl (1.004-3) ... Setting up libtext-template-perl (1.61-1) ... Setting up libpod-parser-perl (1.66-1) ... Setting up autopoint (0.21-13build1) ... Setting up libb-hooks-op-check-perl:s390x (0.22-2build1) ... Setting up liblist-moreutils-xs-perl (0.430-3build2) ... Setting up ucf (3.0043+nmu1) ... Setting up libsensors5:s390x (1:3.6.0-7ubuntu1) ... Setting up libjxl0.7:s390x (0.7.0-10.2ubuntu1) ... Setting up libjpeg-turbo8:s390x (2.1.5-2ubuntu1) ... Setting up libltdl7:s390x (2.4.7-7) ... Setting up libfftw3-double3:s390x (3.3.10-1ubuntu1) ... Setting up libglapi-mesa:s390x (23.2.1-1ubuntu4) ... Setting up libparams-util-perl (1.102-2) ... Setting up libsasl2-2:s390x (2.1.28+dfsg1-4) ... Setting up libssh-4:s390x (0.10.5-3ubuntu1) ... Setting up libgfortran5:s390x (13.2.0-7ubuntu1) ... Setting up libmtdev1:s390x (1.1.6-1build4) ... Setting up libtime-duration-perl (1.21-2) ... Setting up autoconf (2.71-3) ... Setting up libtext-xslate-perl:s390x (3.5.9-1build2) ... Setting up libsub-exporter-progressive-perl (0.001013-3) ... Setting up libwebp7:s390x (1.3.2-0.3) ... Setting up libarray-intspan-perl (2.004-2) ... Setting up libcapture-tiny-perl (0.48-2) ... Setting up libtimedate-perl (2.3300-2) ... Setting up libexporter-lite-perl (0.09-2) ... Setting up libsub-name-perl:s390x (0.27-1) ... Setting up zlib1g-dev:s390x (1:1.3.dfsg-3ubuntu1) ... Setting up libsyntax-keyword-try-perl (0.29-1) ... Setting up libdata-validate-domain-perl (0.10-1.1) ... Setting up libproc-processtable-perl:s390x (0.636-1) ... Setting up libparse-recdescent-perl (1.967015+dfsg-4) ... Setting up libdav1d7:s390x (1.3.0-2) ... Setting up ocl-icd-libopencl1:s390x (2.3.2-1) ... Setting up libxshmfence1:s390x (1.3-1build4) ... Setting up libpath-tiny-perl (0.144-1) ... Setting up libuchardet0:s390x (0.0.7-1build2) ... Setting up lzop (1.04-2build2) ... Setting up libjson-perl (4.10000-1) ... Setting up libasound2:s390x (1.2.10-1) ... Setting up liblog-any-adapter-screen-perl (0.140-2) ... Setting up librole-tiny-perl (2.002004-1) ... Setting up openmpi-common (4.1.6-1ubuntu1) ... Setting up libipc-run3-perl (0.048-3) ... Setting up libmd4c0:s390x (0.4.8-1) ... Setting up libregexp-wildcards-perl (1.05-3) ... Setting up libmousex-strictconstructor-perl (0.02-3) ... Setting up libsub-uplevel-perl (0.2800-3) ... Setting up libsuitesparseconfig7:s390x (1:7.3.1+dfsg-2) ... Setting up liblua5.4-0:s390x (5.4.6-0ubuntu2) ... Setting up libsub-override-perl (0.09-4) ... Setting up libaliased-perl (0.34-3) ... Setting up libharfbuzz0b:s390x (8.0.1-1) ... Setting up libthai-data (0.1.29-1build1) ... Setting up xorg-sgml-doctools (1:1.11-1.1) ... Setting up netbase (6.4) ... Setting up sgml-base (1.31) ... Setting up libstrictures-perl (2.000006-1) ... Setting up libsub-quote-perl (2.006008-1ubuntu1) ... Setting up libdevel-stacktrace-perl (2.0400-2) ... Setting up libclass-xsaccessor-perl (1.19-4build1) ... Setting up libtext-autoformat-perl (1.750000-2) ... Setting up libglu1-mesa:s390x (9.0.2-1.1) ... Setting up libtoml-tiny-perl (0.16-1) ... Setting up libsort-versions-perl (1.62-3) ... Setting up libexporter-tiny-perl (1.006002-1) ... Setting up libterm-readkey-perl (2.38-2build1) ... Setting up libfido2-1:s390x (1.14.0-1) ... Setting up libtext-unidecode-perl (1.30-3) ... Setting up libde265-0:s390x (1.0.13-1) ... Setting up libfont-ttf-perl (1.06-2) ... Setting up libfile-homedir-perl (1.006-2) ... Setting up libgfortran-13-dev:s390x (13.2.0-7ubuntu1) ... Setting up libsamplerate0:s390x (0.2.2-4) ... Setting up libwebpmux3:s390x (1.3.2-0.3) ... Setting up libbsd0:s390x (0.11.7-4) ... Setting up libtext-levenshteinxs-perl (0.03-5build1) ... Setting up libperlio-gzip-perl (0.20-1build1) ... Setting up libdrm-common (2.4.117-1) ... Setting up libelf1:s390x (0.190-1) ... Setting up libevdev2:s390x (1.13.1+dfsg-1) ... Setting up libxml2:s390x (2.9.14+dfsg-1.3build2) ... Setting up fonts-noto-core (20201225-2) ... Setting up libhtml-html5-entities-perl (0.004-3) ... Setting up libtext-levenshtein-damerau-perl (0.41-3) ... Setting up libsereal-decoder-perl (5.004+ds-1) ... Setting up libmarkdown2:s390x (2.2.7-2) ... Setting up libldap2:s390x (2.6.6+dfsg-1~exp1ubuntu1) ... Setting up liburi-perl (5.21-1) ... Setting up iso-codes (4.15.0-1) ... Setting up libnet-ipv6addr-perl (1.02-1) ... Setting up libgudev-1.0-0:s390x (1:238-3) ... Setting up libmp3lame0:s390x (3.100-6) ... Setting up libblas-dev:s390x (3.11.0-2build1) ... update-alternatives: using /usr/lib/s390x-linux-gnu/blas/libblas.so to provide /usr/lib/s390x-linux-gnu/libblas.so (libblas.so-s390x-linux-gnu) in auto mode Setting up libsz2:s390x (1.1.2-1) ... Setting up libvorbisenc2:s390x (1.3.7-1build2) ... Setting up libevent-pthreads-2.1-7:s390x (2.1.12-stable-9) ... Setting up libdata-validate-ip-perl (0.31-1) ... Setting up libwacom-common (2.8.0-1) ... Setting up libmousex-nativetraits-perl (1.09-3) ... Setting up libemail-address-xs-perl (1.05-1build1) ... Setting up libxkbcommon0:s390x (1.6.0-1) ... Setting up libwayland-client0:s390x (1.22.0-2.1) ... Setting up libnet-ssleay-perl:s390x (1.92-2build2) ... Setting up libjpeg8:s390x (8c-2ubuntu11) ... Setting up automake (1:1.16.5-1.3) ... update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode Setting up x11proto-dev (2023.2-1) ... Setting up libfile-stripnondeterminism-perl (1.13.1-1) ... Setting up gnuplot-data (5.4.4+dfsg1-2build1) ... Setting up libice6:s390x (2:1.0.10-1build2) ... Setting up libhttp-date-perl (6.06-1) ... Setting up libdw1:s390x (0.190-1) ... Setting up libjpeg-turbo8-dev:s390x (2.1.5-2ubuntu1) ... Setting up libxdmcp6:s390x (1:1.1.3-0ubuntu5) ... Setting up liblapack3:s390x (3.11.0-2build1) ... update-alternatives: using /usr/lib/s390x-linux-gnu/lapack/liblapack.so.3 to provide /usr/lib/s390x-linux-gnu/liblapack.so.3 (liblapack.so.3-s390x-linux-gnu) in auto mode Setting up libncurses-dev:s390x (6.4+20231121-1build1) ... Setting up libxcb1:s390x (1.15-1) ... Setting up libfile-basedir-perl (0.09-2) ... Setting up gettext (0.21-13build1) ... Setting up libxcb-xfixes0:s390x (1.15-1) ... Setting up libamd3:s390x (1:7.3.1+dfsg-2) ... Setting up libfile-listing-perl (6.16-1) ... Setting up libxau-dev:s390x (1:1.0.9-1build5) ... Setting up libxcb-xinput0:s390x (1.15-1) ... Setting up libtool (2.4.7-7) ... Setting up libcolamd3:s390x (1:7.3.1+dfsg-2) ... Setting up libxcb-render0:s390x (1.15-1) ... Setting up libfftw3-bin (3.3.10-1ubuntu1) ... Setting up libwacom9:s390x (2.8.0-1) ... Setting up fontconfig-config (2.14.2-4ubuntu1) ... Setting up liblist-moreutils-perl (0.430-2) ... Setting up libxcb-glx0:s390x (1.15-1) ... Setting up libpod-constants-perl (0.19-2) ... Setting up libedit2:s390x (3.1-20230828-1) ... Setting up libhash-merge-perl (0.302-1) ... Setting up libxcb-keysyms1:s390x (0.4.0-1build3) ... Setting up libsoftware-copyright-perl (0.012-2) ... Setting up libaec-dev:s390x (1.1.2-1) ... Setting up libarpack2:s390x (3.9.1-1) ... Setting up libxcb-shape0:s390x (1.15-1) ... Setting up libavahi-common3:s390x (0.8-13ubuntu2) ... Setting up libnet-http-perl (6.23-1) ... Setting up libpath-iterator-rule-perl (1.015-2) ... Setting up libtext-markdown-discount-perl (0.16-1) ... Setting up libxcb-render-util0:s390x (0.3.9-1build3) ... Setting up libcurl3-gnutls:s390x (8.4.0-2ubuntu1) ... Setting up libxcb-shm0:s390x (1.15-1) ... Setting up libexception-class-perl (1.45-1) ... Setting up libxcb-icccm4:s390x (0.4.1-1.1build2) ... Setting up libsundials-sunmatrix4:s390x (6.4.1+dfsg1-3build1) ... Setting up libclass-c3-perl (0.35-2) ... Setting up libsuperlu6:s390x (6.0.1+dfsg1-1) ... Setting up libreadline-dev:s390x (8.2-3) ... Setting up libqrupdate1:s390x (1.1.2-4) ... Setting up libdevel-callchecker-perl:s390x (0.008-2) ... Setting up libxml-sax-perl (1.02+dfsg-3) ... update-perl-sax-parsers: Registering Perl SAX parser XML::SAX::PurePerl with priority 10... update-perl-sax-parsers: Updating overall Perl SAX parser modules info file... Creating config file /etc/perl/XML/SAX/ParserDetails.ini with new version Setting up libsundials-ida6:s390x (6.4.1+dfsg1-3build1) ... Setting up libcamd3:s390x (1:7.3.1+dfsg-2) ... Setting up libxcb-util1:s390x (0.4.0-1build2) ... Setting up libinput-bin (1.23.0-2) ... Setting up libxcb-xkb1:s390x (1.15-1) ... Setting up libxcb-image0:s390x (0.4.0-2) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up libobject-pad-perl (0.806-1) ... Setting up libxcb-present0:s390x (1.15-1) ... Setting up dh-autoreconf (20) ... Setting up tex-common (6.18) ... update-language: texlive-base not installed and configured, doing nothing! Setting up libthai0:s390x (0.1.29-1build1) ... Setting up libxdmcp-dev:s390x (1:1.1.3-0ubuntu5) ... Setting up libdata-validate-uri-perl (0.07-2) ... Setting up libxcb-xinerama0:s390x (1.15-1) ... Setting up libtest-exception-perl (0.43-3) ... Setting up libglpk40:s390x (5.0-1build1) ... Setting up libstring-copyright-perl (0.003014-1) ... Setting up libxcb-sync1:s390x (1.15-1) ... Setting up gfortran-13 (13.2.0-7ubuntu1) ... Setting up shared-mime-info (2.4-1) ... Setting up libxkbcommon-x11-0:s390x (1.6.0-1) ... Setting up liblapack-dev:s390x (3.11.0-2build1) ... update-alternatives: using /usr/lib/s390x-linux-gnu/lapack/liblapack.so to provide /usr/lib/s390x-linux-gnu/liblapack.so (liblapack.so-s390x-linux-gnu) in auto mode Setting up libdata-optlist-perl (0.114-1) ... Setting up libqt5core5a:s390x (5.15.10+dfsg-5) ... Setting up libccolamd3:s390x (1:7.3.1+dfsg-2) ... Setting up libxml-libxml-perl (2.0207+dfsg+really+2.0134-1build1) ... update-perl-sax-parsers: Registering Perl SAX parser XML::LibXML::SAX::Parser with priority 50... update-perl-sax-parsers: Registering Perl SAX parser XML::LibXML::SAX with priority 50... update-perl-sax-parsers: Updating overall Perl SAX parser modules info file... Replacing config file /etc/perl/XML/SAX/ParserDetails.ini with new version Setting up libxcb-dri2-0:s390x (1.15-1) ... Setting up dh-strip-nondeterminism (1.13.1-1) ... Setting up libwww-robotrules-perl (6.02-1) ... Setting up libjack-jackd2-0:s390x (1.9.21~dfsg-3) ... Setting up libdrm2:s390x (2.4.117-1) ... Setting up dwz (0.15-1) ... Setting up groff-base (1.23.0-3) ... Setting up libqt5dbus5:s390x (5.15.10+dfsg-5) ... Setting up libtiff6:s390x (4.5.1+git230720-1ubuntu1) ... Setting up libxcb-randr0:s390x (1.15-1) ... Setting up libhtml-parser-perl:s390x (3.81-1) ... Setting up libllvm15:s390x (1:15.0.7-10build1) ... Setting up libnl-3-200:s390x (3.7.0-0.2) ... Setting up debugedit (1:5.0-5) ... Setting up libcurl4:s390x (8.4.0-2ubuntu1) ... Setting up libx11-6:s390x (2:1.8.7-1) ... Setting up libfontconfig1:s390x (2.14.2-4ubuntu1) ... Setting up libsndfile1:s390x (1.2.2-1ubuntu2) ... Setting up libmro-compat-perl (0.15-2) ... Setting up libjpeg8-dev:s390x (8c-2ubuntu11) ... Setting up libsm6:s390x (2:1.2.3-1build2) ... Setting up libfftw3-dev:s390x (3.3.10-1ubuntu1) ... Setting up libavahi-client3:s390x (0.8-13ubuntu2) ... Setting up libio-socket-ssl-perl (2.084-1) ... Setting up libsub-exporter-perl (0.990-1) ... Setting up libhttp-message-perl (6.44-2ubuntu1) ... Setting up libdrm-amdgpu1:s390x (2.4.117-1) ... Setting up libhtml-form-perl (6.11-1) ... Setting up libiterator-perl (0.03+ds1-2) ... Setting up libxcb-dri3-0:s390x (1.15-1) ... Setting up libinput10:s390x (1.23.0-2) ... Setting up libportaudio2:s390x (19.6.0-1.2) ... Setting up libx11-xcb1:s390x (2:1.8.7-1) ... Setting up libhttp-negotiate-perl (6.01-2) ... Setting up fontconfig (2.14.2-4ubuntu1) ... Regenerating fonts cache... done. Setting up libcarp-assert-more-perl (2.3.0-1) ... Setting up libcholmod5:s390x (1:7.3.1+dfsg-2) ... Setting up libdrm-nouveau2:s390x (2.4.117-1) ... Setting up libxcb1-dev:s390x (1.15-1) ... Setting up libxpm4:s390x (1:3.5.12-1.1ubuntu1) ... Setting up libiterator-util-perl (0.02+ds1-2) ... Setting up libxrender1:s390x (1:0.9.10-1.1) ... Setting up libgbm1:s390x (23.2.1-1ubuntu4) ... Setting up libhttp-cookies-perl (6.10-1) ... Setting up libspqr4:s390x (1:7.3.1+dfsg-2) ... Setting up libdrm-radeon1:s390x (2.4.117-1) ... Setting up openssh-client (1:9.4p1-1ubuntu1) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up libhtml-tree-perl (5.07-3) ... Setting up libparams-classify-perl:s390x (0.015-2build2) ... Setting up libpango-1.0-0:s390x (1.51.0+ds-3) ... Setting up libcgi-pm-perl (4.60-1) ... Setting up libgl1-mesa-dri:s390x (23.2.1-1ubuntu4) ... Setting up libjpeg-dev:s390x (8c-2ubuntu11) ... Setting up libx11-dev:s390x (2:1.8.7-1) ... Setting up libxext6:s390x (2:1.3.4-1build1) ... Setting up man-db (2.12.0-1) ... Not building database; man-db/auto-update is not 'true'. Created symlink /etc/systemd/system/timers.target.wants/man-db.timer → /lib/systemd/system/man-db.timer. Setting up gfortran (4:13.2.0-2ubuntu1) ... update-alternatives: using /usr/bin/gfortran to provide /usr/bin/f95 (f95) in auto mode update-alternatives: using /usr/bin/gfortran to provide /usr/bin/f77 (f77) in auto mode Setting up libcairo2:s390x (1.18.0-1) ... Setting up libqt5network5:s390x (5.15.10+dfsg-5) ... Setting up libxxf86vm1:s390x (1:1.1.4-1build3) ... Setting up libnl-route-3-200:s390x (3.7.0-0.2) ... Setting up libxnvctrl0:s390x (510.47.03-0ubuntu1) ... Setting up libqt5sql5:s390x (5.15.10+dfsg-5) ... Setting up libqt5xml5:s390x (5.15.10+dfsg-5) ... Setting up libegl-mesa0:s390x (23.2.1-1ubuntu4) ... Setting up libnet-smtp-ssl-perl (1.04-2) ... Setting up libmodule-runtime-perl (0.016-2) ... Setting up libmailtools-perl (2.21-2) ... Setting up libxfixes3:s390x (1:6.0.0-2) ... Setting up libcurl4-openssl-dev:s390x (8.4.0-2ubuntu1) ... Setting up libklu2:s390x (1:7.3.1+dfsg-2) ... Setting up libconfig-model-perl (2.153-3) ... Setting up libxinerama1:s390x (2:1.1.4-3) ... Setting up libgd3:s390x (2.3.3-9ubuntu1) ... Setting up texinfo (7.1-2) ... Setting up libcups2:s390x (2.4.6-0ubuntu3) ... Setting up libumfpack6:s390x (1:7.3.1+dfsg-2) ... Setting up libconst-fast-perl (0.014-2) ... Setting up libhdf5-103-1:s390x (1.10.8+repack1-1ubuntu1) ... Setting up libdata-section-perl (0.200008-1) ... Setting up libhdf5-cpp-103-1:s390x (1.10.8+repack1-1ubuntu1) ... Setting up libegl1:s390x (1.7.0-1) ... Setting up libpangoft2-1.0-0:s390x (1.51.0+ds-3) ... Setting up libdata-dpath-perl (0.59-1) ... Setting up libstring-rewriteprefix-perl (0.009-1) ... Setting up libpangocairo-1.0-0:s390x (1.51.0+ds-3) ... Setting up libhdf5-hl-100:s390x (1.10.8+repack1-1ubuntu1) ... Setting up libconfig-model-backend-yaml-perl (2.134-2) ... Setting up libibverbs1:s390x (48.0-1) ... Setting up libxft2:s390x (2.3.6-1) ... Setting up libglx-mesa0:s390x (23.2.1-1ubuntu4) ... Setting up libglx0:s390x (1.7.0-1) ... Setting up ibverbs-providers:s390x (48.0-1) ... Setting up libmodule-implementation-perl (0.09-2) ... Setting up libpackage-stash-perl (0.40-1) ... Setting up libimport-into-perl (1.002005-2) ... Setting up libmoo-perl (2.005005-1) ... Setting up libxcursor1:s390x (1:1.2.1-1) ... Setting up liblist-someutils-perl (0.59-1) ... Setting up debhelper (13.11.8ubuntu1) ... Setting up libhwloc-plugins:s390x (2.9.3-2) ... Setting up libmime-tools-perl (5.510-3) ... Setting up libsoftware-license-perl (0.104005-1) ... Setting up libclass-load-perl (0.25-2) ... Setting up libhdf5-hl-cpp-100:s390x (1.10.8+repack1-1ubuntu1) ... Setting up libgl1:s390x (1.7.0-1) ... Setting up libhdf5-fortran-102:s390x (1.10.8+repack1-1ubuntu1) ... Setting up libhdf5-hl-fortran-100:s390x (1.10.8+repack1-1ubuntu1) ... Setting up libglx-dev:s390x (1.7.0-1) ... Setting up gnuplot-nox (5.4.4+dfsg1-2build1) ... update-alternatives: using /usr/bin/gnuplot-nox to provide /usr/bin/gnuplot (gnuplot) in auto mode Setting up libmoox-aliases-perl (0.001006-2) ... Setting up libparams-validate-perl:s390x (1.31-1) ... Setting up libb-hooks-endofscope-perl (0.26-1) ... Setting up libgl-dev:s390x (1.7.0-1) ... Setting up librdmacm1:s390x (48.0-1) ... Setting up libpmix2:s390x (5.0.1-3ubuntu1) ... Setting up libsoftware-licensemoreutils-perl (1.009-1) ... Setting up libfltk1.3:s390x (1.3.8-6) ... Setting up libfltk-gl1.3:s390x (1.3.8-6) ... Setting up libqt5gui5:s390x (5.15.10+dfsg-5) ... Setting up libqt5widgets5:s390x (5.15.10+dfsg-5) ... Setting up libqt5help5:s390x (5.15.10-5) ... Setting up libgl2ps1.4 (1.4.2+dfsg1-2) ... Setting up libqt5printsupport5:s390x (5.15.10+dfsg-5) ... Setting up dh-octave-autopkgtest (1.5.1) ... Setting up libhdf5-dev (1.10.8+repack1-1ubuntu1) ... update-alternatives: using /usr/lib/s390x-linux-gnu/pkgconfig/hdf5-serial.pc to provide /usr/lib/s390x-linux-gnu/pkgconfig/hdf5.pc (hdf5.pc) in auto mode Setting up libnamespace-clean-perl (0.27-2) ... Setting up libstring-license-perl (0.0.9-2ubuntu1) ... Setting up libgetopt-long-descriptive-perl (0.111-1) ... Setting up licensecheck (3.3.9-1ubuntu1) ... Setting up libfabric1:s390x (1.17.0-3) ... Setting up libapp-cmd-perl (0.336-1) ... Setting up libopenmpi3:s390x (4.1.6-1ubuntu1) ... Setting up libfftw3-mpi3:s390x (3.3.10-1ubuntu1) ... Setting up libqscintilla2-qt5-15:s390x (2.14.1+dfsg-1) ... Setting up libtrilinos-teuchos-13.2:s390x (13.2.0-5) ... Setting up libcombblas2.0.0:s390x (2.0.0-3) ... Setting up libtrilinos-epetra-13.2:s390x (13.2.0-5) ... Setting up cme (1.038-2) ... Setting up libtrilinos-aztecoo-13.2:s390x (13.2.0-5) ... Setting up libtrilinos-triutils-13.2:s390x (13.2.0-5) ... Setting up openmpi-bin (4.1.6-1ubuntu1) ... update-alternatives: using /usr/bin/mpirun.openmpi to provide /usr/bin/mpirun (mpirun) in auto mode update-alternatives: using /usr/bin/mpicc.openmpi to provide /usr/bin/mpicc (mpi) in auto mode Setting up libhdf5-openmpi-103-1:s390x (1.10.8+repack1-1ubuntu1) ... Setting up libptscotch-7.0:s390x (7.0.4-1) ... Setting up libsuperlu-dist8:s390x (8.1.2+dfsg1-2) ... Setting up mpi-default-bin (1.15) ... Setting up libtrilinos-zoltan-13.2:s390x (13.2.0-5) ... Setting up libhypre-2.28.0:s390x (2.28.0-7) ... Setting up libtrilinos-epetraext-13.2:s390x (13.2.0-5) ... Setting up libtrilinos-galeri-13.2:s390x (13.2.0-5) ... Setting up libscalapack-openmpi2.2:s390x (2.2.1-3) ... Setting up libmumps-5.6:s390x (5.6.1-1ubuntu1) ... Setting up libtrilinos-amesos-13.2:s390x (13.2.0-5) ... Setting up libtrilinos-ifpack-13.2:s390x (13.2.0-5) ... Setting up libtrilinos-ml-13.2:s390x (13.2.0-5) ... Setting up libpetsc-real3.18:s390x (3.18.6+dfsg1-1ubuntu3) ... update-alternatives: using /usr/lib/s390x-linux-gnu/libpetsc_real.so.3.18.6 to provide /usr/lib/s390x-linux-gnu/libpetsc.so.3.18 (libpetsc.so.3.18) in auto mode Setting up libsundials-nvecparallel-petsc6:s390x (6.4.1+dfsg1-3build1) ... Setting up libsundials-sunlinsol3:s390x (6.4.1+dfsg1-3build1) ... Setting up libheif-plugin-dav1d:s390x (1.17.1-1ubuntu3) ... Setting up liblwp-protocol-https-perl (6.11-1) ... Setting up libheif-plugin-libde265:s390x (1.17.1-1ubuntu3) ... Setting up libwww-perl (6.72-1) ... Setting up libheif1:s390x (1.17.1-1ubuntu3) ... Setting up libparse-debcontrol-perl (2.005-6) ... Setting up libhtml-tokeparser-simple-perl (3.16-4) ... Setting up libwww-mechanize-perl (2.17-1ubuntu1) ... Setting up libgraphicsmagick-q16-3 (1.4+really1.3.42-1) ... Setting up libgraphicsmagick++-q16-12 (1.4+really1.3.42-1) ... Setting up lintian (2.116.3ubuntu4) ... Setting up libconfig-model-dpkg-perl (3.002) ... Setting up octave (8.4.0-1build1) ... Setting up octave-dev (8.4.0-1build1) ... Setting up dh-octave (1.5.1) ... Setting up sbuild-build-depends-main-dummy (0.invalid.0) ... Processing triggers for libc-bin (2.38-3ubuntu1) ... +------------------------------------------------------------------------------+ | Check architectures | +------------------------------------------------------------------------------+ Arch check ok (s390x included in any) +------------------------------------------------------------------------------+ | Build environment | +------------------------------------------------------------------------------+ Kernel: Linux 5.4.0-167-generic #184-Ubuntu SMP Tue Oct 31 09:21:34 UTC 2023 s390x (s390x) Toolchain package versions: binutils_2.41-7ubuntu1 dpkg-dev_1.22.1ubuntu3 g++-13_13.2.0-7ubuntu1 gcc-13_13.2.0-7ubuntu1 libc6-dev_2.38-3ubuntu1 libstdc++-13-dev_13.2.0-7ubuntu1 libstdc++6_13.2.0-7ubuntu1 linux-libc-dev_6.6.0-13.13 Package versions: adduser_3.137ubuntu1 advancecomp_2.5-1 aglfn_1.7+git20191031.4036a9c-2 apt_2.7.7 apt-utils_2.7.7 autoconf_2.71-3 automake_1:1.16.5-1.3 autopoint_0.21-13build1 autotools-dev_20220109.1 base-files_13ubuntu5 base-passwd_3.6.2 bash_5.2.21-2ubuntu1 bash-completion_1:2.11-8 binutils_2.41-7ubuntu1 binutils-common_2.41-7ubuntu1 binutils-s390x-linux-gnu_2.41-7ubuntu1 bsdextrautils_2.39.2-6ubuntu1 bsdutils_1:2.39.2-6ubuntu1 build-essential_12.10ubuntu1 bzip2_1.0.8-5build1 ca-certificates_20230311ubuntu1 cme_1.038-2 coreutils_9.1-1ubuntu2 cpp_4:13.2.0-2ubuntu1 cpp-13_13.2.0-7ubuntu1 dash_0.5.12-6ubuntu1 debconf_1.5.82 debconf-i18n_1.5.82 debhelper_13.11.8ubuntu1 debianutils_5.14 debugedit_1:5.0-5 dh-autoreconf_20 dh-octave_1.5.1 dh-octave-autopkgtest_1.5.1 dh-strip-nondeterminism_1.13.1-1 diffstat_1.65-1 diffutils_1:3.10-1 dpkg_1.22.1ubuntu3 dpkg-dev_1.22.1ubuntu3 dwz_0.15-1 e2fsprogs_1.47.0-2ubuntu1 fakeroot_1.32.2-1 file_1:5.45-2 findutils_4.9.0-5 fontconfig_2.14.2-4ubuntu1 fontconfig-config_2.14.2-4ubuntu1 fonts-freefont-otf_20211204+svn4273-2 fonts-noto-core_20201225-2 fonts-noto-mono_20201225-2 g++_4:13.2.0-2ubuntu1 g++-13_13.2.0-7ubuntu1 gcc_4:13.2.0-2ubuntu1 gcc-13_13.2.0-7ubuntu1 gcc-13-base_13.2.0-7ubuntu1 gettext_0.21-13build1 gettext-base_0.21-13build1 gfortran_4:13.2.0-2ubuntu1 gfortran-13_13.2.0-7ubuntu1 gnuplot-data_5.4.4+dfsg1-2build1 gnuplot-nox_5.4.4+dfsg1-2build1 gpg_2.2.40-1.1ubuntu1 gpg-agent_2.2.40-1.1ubuntu1 gpgconf_2.2.40-1.1ubuntu1 gpgv_2.2.40-1.1ubuntu1 grep_3.11-3 groff-base_1.23.0-3 gzip_1.12-1ubuntu1 hdf5-helpers_1.10.8+repack1-1ubuntu1 hostname_3.23+nmu1ubuntu1 ibverbs-providers_48.0-1 init_1.65.2ubuntu1 init-system-helpers_1.65.2ubuntu1 intltool-debian_0.35.0+20060710.6 iso-codes_4.15.0-1 krb5-locales_1.20.1-5build1 libacl1_2.3.1-3 libaec-dev_1.1.2-1 libaec0_1.1.2-1 libalgorithm-c3-perl_0.11-2 libaliased-perl_0.34-3 libamd3_1:7.3.1+dfsg-2 libapp-cmd-perl_0.336-1 libapparmor1_4.0.0~alpha2-0ubuntu6 libapt-pkg-perl_0.1.40build3 libapt-pkg6.0_2.7.7 libarchive-zip-perl_1.68-1 libargon2-1_0~20190702+dfsg-4 libarpack2_3.9.1-1 libarray-intspan-perl_2.004-2 libasan8_13.2.0-7ubuntu1 libasound2_1.2.10-1 libasound2-data_1.2.10-1 libassuan0_2.5.6-1 libatomic1_13.2.0-7ubuntu1 libattr1_1:2.5.1-4 libaudit-common_1:3.1.1-1build1 libaudit1_1:3.1.1-1build1 libavahi-client3_0.8-13ubuntu2 libavahi-common-data_0.8-13ubuntu2 libavahi-common3_0.8-13ubuntu2 libb-hooks-endofscope-perl_0.26-1 libb-hooks-op-check-perl_0.22-2build1 libberkeleydb-perl_0.64-2 libbinutils_2.41-7ubuntu1 libblas-dev_3.11.0-2build1 libblas3_3.11.0-2build1 libblkid1_2.39.2-6ubuntu1 libboolean-perl_0.46-3 libbrotli1_1.1.0-2 libbsd0_0.11.7-4 libbtf2_1:7.3.1+dfsg-2 libbz2-1.0_1.0.8-5build1 libc-bin_2.38-3ubuntu1 libc-dev-bin_2.38-3ubuntu1 libc6_2.38-3ubuntu1 libc6-dev_2.38-3ubuntu1 libcairo2_1.18.0-1 libcamd3_1:7.3.1+dfsg-2 libcap-ng0_0.8.3-1build3 libcap2_1:2.66-4ubuntu1 libcapture-tiny-perl_0.48-2 libcarp-assert-more-perl_2.3.0-1 libcbor0.10_0.10.2-1.1ubuntu1 libcc1-0_13.2.0-7ubuntu1 libccolamd3_1:7.3.1+dfsg-2 libcgi-pm-perl_4.60-1 libcholmod5_1:7.3.1+dfsg-2 libclass-c3-perl_0.35-2 libclass-data-inheritable-perl_0.08-3 libclass-load-perl_0.25-2 libclass-method-modifiers-perl_2.15-1 libclass-xsaccessor-perl_1.19-4build1 libclone-choose-perl_0.010-2 libclone-perl_0.46-1 libcolamd3_1:7.3.1+dfsg-2 libcom-err2_1.47.0-2ubuntu1 libcombblas2.0.0_2.0.0-3 libconfig-model-backend-yaml-perl_2.134-2 libconfig-model-dpkg-perl_3.002 libconfig-model-perl_2.153-3 libconfig-tiny-perl_2.30-1 libconst-fast-perl_0.014-2 libconvert-binhex-perl_1.125-3 libcpanel-json-xs-perl_4.37-1 libcrypt-dev_1:4.4.36-2 libcrypt1_1:4.4.36-2 libcryptsetup12_2:2.6.1-5ubuntu1 libctf-nobfd0_2.41-7ubuntu1 libctf0_2.41-7ubuntu1 libcups2_2.4.6-0ubuntu3 libcurl3-gnutls_8.4.0-2ubuntu1 libcurl4_8.4.0-2ubuntu1 libcurl4-openssl-dev_8.4.0-2ubuntu1 libcxsparse4_1:7.3.1+dfsg-2 libdata-dpath-perl_0.59-1 libdata-messagepack-perl_1.02-1build1 libdata-optlist-perl_0.114-1 libdata-section-perl_0.200008-1 libdata-validate-domain-perl_0.10-1.1 libdata-validate-ip-perl_0.31-1 libdata-validate-uri-perl_0.07-2 libdatrie1_0.2.13-2 libdav1d7_1.3.0-2 libdb5.3_5.3.28+dfsg2-4 libdbus-1-3_1.14.10-1ubuntu1 libde265-0_1.0.13-1 libdebconfclient0_0.270ubuntu1 libdebhelper-perl_13.11.8ubuntu1 libdeflate0_1.18-1 libdevel-callchecker-perl_0.008-2 libdevel-size-perl_0.83-2build1 libdevel-stacktrace-perl_2.0400-2 libdevmapper1.02.1_2:1.02.185-2ubuntu1 libdouble-conversion3_3.3.0-1 libdpkg-perl_1.22.1ubuntu3 libdrm-amdgpu1_2.4.117-1 libdrm-common_2.4.117-1 libdrm-nouveau2_2.4.117-1 libdrm-radeon1_2.4.117-1 libdrm2_2.4.117-1 libdw1_0.190-1 libdynaloader-functions-perl_0.003-3 libedit2_3.1-20230828-1 libegl-mesa0_23.2.1-1ubuntu4 libegl1_1.7.0-1 libelf1_0.190-1 libemail-address-xs-perl_1.05-1build1 libencode-locale-perl_1.05-3 liberror-perl_0.17029-2 libevdev2_1.13.1+dfsg-1 libevent-core-2.1-7_2.1.12-stable-9 libevent-pthreads-2.1-7_2.1.12-stable-9 libexception-class-perl_1.45-1 libexpat1_2.5.0-2 libexporter-lite-perl_0.09-2 libexporter-tiny-perl_1.006002-1 libext2fs2_1.47.0-2ubuntu1 libfabric1_1.17.0-3 libfakeroot_1.32.2-1 libfdisk1_2.39.2-6ubuntu1 libffi8_3.4.4-2 libfftw3-bin_3.3.10-1ubuntu1 libfftw3-dev_3.3.10-1ubuntu1 libfftw3-double3_3.3.10-1ubuntu1 libfftw3-long3_3.3.10-1ubuntu1 libfftw3-mpi3_3.3.10-1ubuntu1 libfftw3-single3_3.3.10-1ubuntu1 libfido2-1_1.14.0-1 libfile-basedir-perl_0.09-2 libfile-find-rule-perl_0.34-3 libfile-homedir-perl_1.006-2 libfile-listing-perl_6.16-1 libfile-stripnondeterminism-perl_1.13.1-1 libfile-which-perl_1.27-2 libflac12_1.4.3+ds-2ubuntu1 libfltk-gl1.3_1.3.8-6 libfltk1.3_1.3.8-6 libfont-ttf-perl_1.06-2 libfontconfig1_2.14.2-4ubuntu1 libfreetype6_2.13.2+dfsg-1 libfribidi0_1.0.13-3 libgbm1_23.2.1-1ubuntu4 libgcc-13-dev_13.2.0-7ubuntu1 libgcc-s1_13.2.0-7ubuntu1 libgcrypt20_1.10.2-3ubuntu1 libgd3_2.3.3-9ubuntu1 libgdbm-compat4_1.23-5 libgdbm6_1.23-5 libgetopt-long-descriptive-perl_0.111-1 libgfortran-13-dev_13.2.0-7ubuntu1 libgfortran5_13.2.0-7ubuntu1 libgl-dev_1.7.0-1 libgl1_1.7.0-1 libgl1-mesa-dri_23.2.1-1ubuntu4 libgl2ps1.4_1.4.2+dfsg1-2 libglapi-mesa_23.2.1-1ubuntu4 libglib2.0-0_2.78.1-4 libglpk40_5.0-1build1 libglu1-mesa_9.0.2-1.1 libglvnd0_1.7.0-1 libglx-dev_1.7.0-1 libglx-mesa0_23.2.1-1ubuntu4 libglx0_1.7.0-1 libgmp10_2:6.3.0+dfsg-2ubuntu4 libgnutls30_3.8.1-4ubuntu6 libgomp1_13.2.0-7ubuntu1 libgpg-error-l10n_1.47-3 libgpg-error0_1.47-3 libgpm2_1.20.7-10build1 libgraphicsmagick++-q16-12_1.4+really1.3.42-1 libgraphicsmagick-q16-3_1.4+really1.3.42-1 libgraphite2-3_1.3.14-1build2 libgssapi-krb5-2_1.20.1-5build1 libgudev-1.0-0_1:238-3 libharfbuzz0b_8.0.1-1 libhash-merge-perl_0.302-1 libhdf5-103-1_1.10.8+repack1-1ubuntu1 libhdf5-cpp-103-1_1.10.8+repack1-1ubuntu1 libhdf5-dev_1.10.8+repack1-1ubuntu1 libhdf5-fortran-102_1.10.8+repack1-1ubuntu1 libhdf5-hl-100_1.10.8+repack1-1ubuntu1 libhdf5-hl-cpp-100_1.10.8+repack1-1ubuntu1 libhdf5-hl-fortran-100_1.10.8+repack1-1ubuntu1 libhdf5-openmpi-103-1_1.10.8+repack1-1ubuntu1 libheif-plugin-dav1d_1.17.1-1ubuntu3 libheif-plugin-libde265_1.17.1-1ubuntu3 libheif1_1.17.1-1ubuntu3 libhogweed6_3.9.1-2 libhtml-form-perl_6.11-1 libhtml-html5-entities-perl_0.004-3 libhtml-parser-perl_3.81-1 libhtml-tagset-perl_3.20-6 libhtml-tokeparser-simple-perl_3.16-4 libhtml-tree-perl_5.07-3 libhttp-cookies-perl_6.10-1 libhttp-date-perl_6.06-1 libhttp-message-perl_6.44-2ubuntu1 libhttp-negotiate-perl_6.01-2 libhwloc-plugins_2.9.3-2 libhwloc15_2.9.3-2 libhwy1_1.0.7-8 libhypre-2.28.0_2.28.0-7 libibverbs1_48.0-1 libice6_2:1.0.10-1build2 libicu72_72.1-3ubuntu3 libidn2-0_2.3.4-1build1 libimport-into-perl_1.002005-2 libindirect-perl_0.39-2build1 libinput-bin_1.23.0-2 libinput10_1.23.0-2 libio-html-perl_1.004-3 libio-interactive-perl_1.025-1 libio-socket-ssl-perl_2.084-1 libio-string-perl_1.08-4 libio-stringy-perl_2.111-3 libio-tiecombine-perl_1.005-3 libip4tc2_1.8.9-2ubuntu2 libipc-run3-perl_0.048-3 libipc-system-simple-perl_1.30-2 libisl23_0.26-3 libiterator-perl_0.03+ds1-2 libiterator-util-perl_0.02+ds1-2 libitm1_13.2.0-7ubuntu1 libjack-jackd2-0_1.9.21~dfsg-3 libjansson4_2.14-2 libjbig0_2.1-6.1ubuntu1 libjpeg-dev_8c-2ubuntu11 libjpeg-turbo8_2.1.5-2ubuntu1 libjpeg-turbo8-dev_2.1.5-2ubuntu1 libjpeg8_8c-2ubuntu11 libjpeg8-dev_8c-2ubuntu11 libjson-c5_0.17-1 libjson-maybexs-perl_1.004005-1 libjson-perl_4.10000-1 libjxl0.7_0.7.0-10.2ubuntu1 libk5crypto3_1.20.1-5build1 libkeyutils1_1.6.3-2 libklu2_1:7.3.1+dfsg-2 libkmod2_30+20230519-1ubuntu3 libkrb5-3_1.20.1-5build1 libkrb5support0_1.20.1-5build1 liblapack-dev_3.11.0-2build1 liblapack3_3.11.0-2build1 liblcms2-2_2.14-2 libldap2_2.6.6+dfsg-1~exp1ubuntu1 liblist-compare-perl_0.55-2 liblist-moreutils-perl_0.430-2 liblist-moreutils-xs-perl_0.430-3build2 liblist-someutils-perl_0.59-1 liblist-utilsby-perl_0.12-2 libllvm15_1:15.0.7-10build1 liblocale-gettext-perl_1.07-6 liblockfile-bin_1.17-1build2 liblockfile1_1.17-1build2 liblog-any-adapter-screen-perl_0.140-2 liblog-any-perl_1.717-1 liblog-log4perl-perl_1.57-1 libltdl7_2.4.7-7 liblua5.4-0_5.4.6-0ubuntu2 liblwp-mediatypes-perl_6.04-2 liblwp-protocol-https-perl_6.11-1 liblz4-1_1.9.4-1 liblzma5_5.4.5-0.1 liblzo2-2_2.10-2build3 libmagic-mgc_1:5.45-2 libmagic1_1:5.45-2 libmailtools-perl_2.21-2 libmarkdown2_2.2.7-2 libmd0_1.1.0-1 libmd4c0_0.4.8-1 libmetis5_5.1.0.dfsg-7build2 libmime-tools-perl_5.510-3 libmldbm-perl_2.05-4 libmodule-implementation-perl_0.09-2 libmodule-pluggable-perl_5.2-4 libmodule-runtime-perl_0.016-2 libmoo-perl_2.005005-1 libmoox-aliases-perl_0.001006-2 libmount1_2.39.2-6ubuntu1 libmouse-perl_2.5.10-1build5 libmousex-nativetraits-perl_1.09-3 libmousex-strictconstructor-perl_0.02-3 libmp3lame0_3.100-6 libmpc3_1.3.1-1 libmpfr6_4.2.1-1 libmpg123-0_1.32.3-1 libmro-compat-perl_0.15-2 libmtdev1_1.1.6-1build4 libmumps-5.6_5.6.1-1ubuntu1 libmunge2_0.5.15-2 libnamespace-clean-perl_0.27-2 libncurses-dev_6.4+20231121-1build1 libncurses6_6.4+20231121-1build1 libncursesw6_6.4+20231121-1build1 libnet-domain-tld-perl_1.75-3 libnet-http-perl_6.23-1 libnet-ipv6addr-perl_1.02-1 libnet-netmask-perl_2.0002-2 libnet-smtp-ssl-perl_1.04-2 libnet-ssleay-perl_1.92-2build2 libnetaddr-ip-perl_4.079+dfsg-2build1 libnettle8_3.9.1-2 libnghttp2-14_1.58.0-1 libnl-3-200_3.7.0-0.2 libnl-route-3-200_3.7.0-0.2 libnpth0_1.6-3build2 libnsl-dev_1.3.0-3 libnsl2_1.3.0-3 libnss-nis_3.1-0ubuntu6 libnss-nisplus_1.3-0ubuntu6 libnumber-compare-perl_0.03-3 libobject-pad-perl_0.806-1 libogg0_1.3.5-3 libopengl0_1.7.0-1 libopenmpi3_4.1.6-1ubuntu1 libopus0_1.4-1 libp11-kit0_0.25.0-4ubuntu1 libpackage-stash-perl_0.40-1 libpam-modules_1.5.2-9.1ubuntu1 libpam-modules-bin_1.5.2-9.1ubuntu1 libpam-runtime_1.5.2-9.1ubuntu1 libpam0g_1.5.2-9.1ubuntu1 libpango-1.0-0_1.51.0+ds-3 libpangocairo-1.0-0_1.51.0+ds-3 libpangoft2-1.0-0_1.51.0+ds-3 libparams-classify-perl_0.015-2build2 libparams-util-perl_1.102-2 libparams-validate-perl_1.31-1 libparse-debcontrol-perl_2.005-6 libparse-recdescent-perl_1.967015+dfsg-4 libpath-iterator-rule-perl_1.015-2 libpath-tiny-perl_0.144-1 libpciaccess0_0.17-3 libpcre2-16-0_10.42-4 libpcre2-8-0_10.42-4 libperl5.36_5.36.0-10ubuntu1 libperlio-gzip-perl_0.20-1build1 libperlio-utf8-strict-perl_0.010-1 libpetsc-real3.18_3.18.6+dfsg1-1ubuntu3 libpipeline1_1.5.7-1 libpixman-1-0_0.42.2-1 libpmix2_5.0.1-3ubuntu1 libpng16-16_1.6.40-2 libpod-constants-perl_0.19-2 libpod-parser-perl_1.66-1 libpod-pom-perl_2.01-4 libportaudio2_19.6.0-1.2 libproc-processtable-perl_0.636-1 libproc2-0_2:4.0.4-2ubuntu1 libpsl5_0.21.2-1build1 libpthread-stubs0-dev_0.4-1build2 libptscotch-7.0_7.0.4-1 libqhull-r8.0_2020.2-6 libqrupdate1_1.1.2-4 libqscintilla2-qt5-15_2.14.1+dfsg-1 libqscintilla2-qt5-l10n_2.14.1+dfsg-1 libqt5core5a_5.15.10+dfsg-5 libqt5dbus5_5.15.10+dfsg-5 libqt5gui5_5.15.10+dfsg-5 libqt5help5_5.15.10-5 libqt5network5_5.15.10+dfsg-5 libqt5printsupport5_5.15.10+dfsg-5 libqt5sql5_5.15.10+dfsg-5 libqt5widgets5_5.15.10+dfsg-5 libqt5xml5_5.15.10+dfsg-5 librdmacm1_48.0-1 libreadline-dev_8.2-3 libreadline8_8.2-3 libregexp-common-perl_2017060201-3 libregexp-pattern-license-perl_3.11.0-1 libregexp-pattern-perl_0.2.14-2 libregexp-wildcards-perl_1.05-3 librole-tiny-perl_2.002004-1 librtmp1_2.4+20151223.gitfa8646d.1-2build4 libsamplerate0_0.2.2-4 libsasl2-2_2.1.28+dfsg1-4 libsasl2-modules-db_2.1.28+dfsg1-4 libscalapack-openmpi2.2_2.2.1-3 libscotch-7.0_7.0.4-1 libseccomp2_2.5.4-2ubuntu1 libselinux1_3.5-1build2 libsemanage-common_3.5-1build1 libsemanage2_3.5-1build1 libsensors-config_1:3.6.0-7ubuntu1 libsensors5_1:3.6.0-7ubuntu1 libsepol2_3.5-2 libsereal-decoder-perl_5.004+ds-1 libsereal-encoder-perl_5.004+ds-1 libset-intspan-perl_1.19-3 libsframe1_2.41-7ubuntu1 libsharpyuv0_1.3.2-0.3 libsm6_2:1.2.3-1build2 libsmartcols1_2.39.2-6ubuntu1 libsndfile1_1.2.2-1ubuntu2 libsoftware-copyright-perl_0.012-2 libsoftware-license-perl_0.104005-1 libsoftware-licensemoreutils-perl_1.009-1 libsort-versions-perl_1.62-3 libspqr4_1:7.3.1+dfsg-2 libsqlite3-0_3.44.2-1 libss2_1.47.0-2ubuntu1 libssh-4_0.10.5-3ubuntu1 libssl-dev_3.0.10-1ubuntu3 libssl3_3.0.10-1ubuntu3 libstdc++-13-dev_13.2.0-7ubuntu1 libstdc++6_13.2.0-7ubuntu1 libstrictures-perl_2.000006-1 libstring-copyright-perl_0.003014-1 libstring-escape-perl_2010.002-3 libstring-license-perl_0.0.9-2ubuntu1 libstring-rewriteprefix-perl_0.009-1 libsub-exporter-perl_0.990-1 libsub-exporter-progressive-perl_0.001013-3 libsub-identify-perl_0.14-3 libsub-install-perl_0.929-1 libsub-name-perl_0.27-1 libsub-override-perl_0.09-4 libsub-quote-perl_2.006008-1ubuntu1 libsub-uplevel-perl_0.2800-3 libsuitesparseconfig7_1:7.3.1+dfsg-2 libsundials-ida6_6.4.1+dfsg1-3build1 libsundials-nvecparallel-petsc6_6.4.1+dfsg1-3build1 libsundials-sunlinsol3_6.4.1+dfsg1-3build1 libsundials-sunmatrix4_6.4.1+dfsg1-3build1 libsuperlu-dist8_8.1.2+dfsg1-2 libsuperlu6_6.0.1+dfsg1-1 libsyntax-keyword-try-perl_0.29-1 libsystemd-shared_253.5-1ubuntu7 libsystemd0_253.5-1ubuntu7 libsz2_1.1.2-1 libtasn1-6_4.19.0-3 libterm-readkey-perl_2.38-2build1 libtest-exception-perl_0.43-3 libtext-autoformat-perl_1.750000-2 libtext-charwidth-perl_0.04-11 libtext-glob-perl_0.11-3 libtext-iconv-perl_1.7-8 libtext-levenshtein-damerau-perl_0.41-3 libtext-levenshteinxs-perl_0.03-5build1 libtext-markdown-discount-perl_0.16-1 libtext-reform-perl_1.20-5 libtext-template-perl_1.61-1 libtext-unidecode-perl_1.30-3 libtext-wrapi18n-perl_0.06-10 libtext-xslate-perl_3.5.9-1build2 libthai-data_0.1.29-1build1 libthai0_0.1.29-1build1 libtiff6_4.5.1+git230720-1ubuntu1 libtime-duration-perl_1.21-2 libtime-moment-perl_0.44-2build1 libtimedate-perl_2.3300-2 libtinfo6_6.4+20231121-1build1 libtirpc-common_1.3.4+ds-1 libtirpc-dev_1.3.4+ds-1 libtirpc3_1.3.4+ds-1 libtoml-tiny-perl_0.16-1 libtool_2.4.7-7 libtrilinos-amesos-13.2_13.2.0-5 libtrilinos-aztecoo-13.2_13.2.0-5 libtrilinos-epetra-13.2_13.2.0-5 libtrilinos-epetraext-13.2_13.2.0-5 libtrilinos-galeri-13.2_13.2.0-5 libtrilinos-ifpack-13.2_13.2.0-5 libtrilinos-kokkos-13.2_13.2.0-5 libtrilinos-ml-13.2_13.2.0-5 libtrilinos-teuchos-13.2_13.2.0-5 libtrilinos-trilinosss-13.2_13.2.0-5 libtrilinos-triutils-13.2_13.2.0-5 libtrilinos-zoltan-13.2_13.2.0-5 libtry-tiny-perl_0.31-2 libubsan1_13.2.0-7ubuntu1 libuchardet0_0.0.7-1build2 libudev1_253.5-1ubuntu7 libumfpack6_1:7.3.1+dfsg-2 libunicode-utf8-perl_0.62-2 libunistring2_1.0-2 libunistring5_1.1-2 liburi-perl_5.21-1 libuuid1_2.39.2-6ubuntu1 libvariable-magic-perl_0.63-1 libvorbis0a_1.3.7-1build2 libvorbisenc2_1.3.7-1build2 libwacom-common_2.8.0-1 libwacom9_2.8.0-1 libwayland-client0_1.22.0-2.1 libwayland-server0_1.22.0-2.1 libwebp7_1.3.2-0.3 libwebpmux3_1.3.2-0.3 libwmflite-0.2-7_0.2.13-1.1 libwww-mechanize-perl_2.17-1ubuntu1 libwww-perl_6.72-1 libwww-robotrules-perl_6.02-1 libx11-6_2:1.8.7-1 libx11-data_2:1.8.7-1 libx11-dev_2:1.8.7-1 libx11-xcb1_2:1.8.7-1 libxau-dev_1:1.0.9-1build5 libxau6_1:1.0.9-1build5 libxcb-dri2-0_1.15-1 libxcb-dri3-0_1.15-1 libxcb-glx0_1.15-1 libxcb-icccm4_0.4.1-1.1build2 libxcb-image0_0.4.0-2 libxcb-keysyms1_0.4.0-1build3 libxcb-present0_1.15-1 libxcb-randr0_1.15-1 libxcb-render-util0_0.3.9-1build3 libxcb-render0_1.15-1 libxcb-shape0_1.15-1 libxcb-shm0_1.15-1 libxcb-sync1_1.15-1 libxcb-util1_0.4.0-1build2 libxcb-xfixes0_1.15-1 libxcb-xinerama0_1.15-1 libxcb-xinput0_1.15-1 libxcb-xkb1_1.15-1 libxcb1_1.15-1 libxcb1-dev_1.15-1 libxcursor1_1:1.2.1-1 libxdmcp-dev_1:1.1.3-0ubuntu5 libxdmcp6_1:1.1.3-0ubuntu5 libxext6_2:1.3.4-1build1 libxfixes3_1:6.0.0-2 libxft2_2.3.6-1 libxinerama1_2:1.1.4-3 libxkbcommon-x11-0_1.6.0-1 libxkbcommon0_1.6.0-1 libxml-libxml-perl_2.0207+dfsg+really+2.0134-1build1 libxml-namespacesupport-perl_1.12-2 libxml-sax-base-perl_1.09-3 libxml-sax-perl_1.02+dfsg-3 libxml2_2.9.14+dfsg-1.3build2 libxnvctrl0_510.47.03-0ubuntu1 libxpm4_1:3.5.12-1.1ubuntu1 libxrender1_1:0.9.10-1.1 libxs-parse-keyword-perl_0.38-1 libxs-parse-sublike-perl_0.21-2 libxshmfence1_1.3-1build4 libxxf86vm1_1:1.1.4-1build3 libxxhash0_0.8.2-2 libyaml-0-2_0.2.5-1 libyaml-libyaml-perl_0.86+ds-1 libyaml-pp-perl_0.37.0-1 libyaml-tiny-perl_1.74-1 libzstd1_1.5.5+dfsg2-2 licensecheck_3.3.9-1ubuntu1 lintian_2.116.3ubuntu4 linux-libc-dev_6.6.0-13.13 lockfile-progs_0.1.19build1 login_1:4.13+dfsg1-1ubuntu1 logsave_1.47.0-2ubuntu1 lto-disabled-list_44 lzip_1.23-6 lzop_1.04-2build2 m4_1.4.19-4 make_4.3-4.1build1 man-db_2.12.0-1 mawk_1.3.4.20231102-1 mount_2.39.2-6ubuntu1 mpi-default-bin_1.15 ncurses-base_6.4+20231121-1build1 ncurses-bin_6.4+20231121-1build1 netbase_6.4 ocl-icd-libopencl1_2.3.2-1 octave_8.4.0-1build1 octave-common_8.4.0-1build1 octave-dev_8.4.0-1build1 openmpi-bin_4.1.6-1ubuntu1 openmpi-common_4.1.6-1ubuntu1 openssh-client_1:9.4p1-1ubuntu1 openssl_3.0.10-1ubuntu3 optipng_0.7.7-3 passwd_1:4.13+dfsg1-1ubuntu1 patch_2.7.6-7build2 patchutils_0.4.2-1build2 perl_5.36.0-10ubuntu1 perl-base_5.36.0-10ubuntu1 perl-modules-5.36_5.36.0-10ubuntu1 perl-openssl-defaults_7 pinentry-curses_1.2.1-3ubuntu1 pkgbinarymangler_154 po-debconf_1.0.21+nmu1 policyrcd-script-zg2_0.1-3.1 procps_2:4.0.4-2ubuntu1 psmisc_23.6-1 readline-common_8.2-3 rpcsvc-proto_1.4.2-0ubuntu6 sbuild-build-depends-main-dummy_0.invalid.0 sed_4.9-1 sensible-utils_0.0.20 sgml-base_1.31 shared-mime-info_2.4-1 systemd_253.5-1ubuntu7 systemd-dev_253.5-1ubuntu7 systemd-sysv_253.5-1ubuntu7 sysvinit-utils_3.08-3ubuntu1 t1utils_1.41-4build2 tar_1.34+dfsg-1.2ubuntu1 tex-common_6.18 texinfo_7.1-2 texinfo-lib_7.1-2 tzdata_2023c-9ubuntu1 ubuntu-keyring_2023.11.28.1 ucf_3.0043+nmu1 unzip_6.0-28ubuntu1 usrmerge_35ubuntu1 util-linux_2.39.2-6ubuntu1 uuid-runtime_2.39.2-6ubuntu1 x11-common_1:7.7+23ubuntu2 x11proto-dev_2023.2-1 xkb-data_2.38-2 xorg-sgml-doctools_1:1.11-1.1 xtrans-dev_1.4.0-1 xz-utils_5.4.5-0.1 zlib1g_1:1.3.dfsg-3ubuntu1 zlib1g-dev_1:1.3.dfsg-3ubuntu1 +------------------------------------------------------------------------------+ | Build | +------------------------------------------------------------------------------+ Unpack source ------------- -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Format: 3.0 (quilt) Source: octave-image Binary: octave-image Architecture: any Version: 2.14.0-5 Maintainer: Debian Octave Group Uploaders: Rafael Laboissière Homepage: https://gnu-octave.github.io/packages/image/ Standards-Version: 4.6.2 Vcs-Browser: https://salsa.debian.org/pkg-octave-team/octave-image Vcs-Git: https://salsa.debian.org/pkg-octave-team/octave-image.git Testsuite: autopkgtest-pkg-octave Build-Depends: debhelper-compat (= 13), dh-octave (>= 1.2.3), dh-sequence-octave, gnuplot-nox Build-Conflicts: octave-nan Package-List: octave-image deb math optional arch=any Checksums-Sha1: 55cc6479498efcad58e4245af2fb2ffdf69ebfdc 467778 octave-image_2.14.0.orig.tar.gz da2d63c7ace46a57889e8cb465353c60ebe1e8ee 11712 octave-image_2.14.0-5.debian.tar.xz Checksums-Sha256: 7515ea211a8cb8ef5d9d3bab85a36e9df5475e8b05a919a078e0d52746077133 467778 octave-image_2.14.0.orig.tar.gz 8354bcced575100f63b9731a7ff4b5750b202773512212de9de1a508ef825f8e 11712 octave-image_2.14.0-5.debian.tar.xz Files: b4fd0e389a82df6f31d491495769d9ba 467778 octave-image_2.14.0.orig.tar.gz 2d3dc1d9ca71899830eddcf72964481c 11712 octave-image_2.14.0-5.debian.tar.xz Dgit: 308692583d4c4c16027a7fb94a9cb23ef67bf5c7 debian archive/debian/2.14.0-5 https://git.dgit.debian.org/octave-image -----BEGIN PGP SIGNATURE----- iQJGBAEBCAAwFiEEP0ZDkUmP6HS9tdmPISSqGYN4XJAFAmUi220SHHJhZmFlbEBk ZWJpYW4ub3JnAAoJECEkqhmDeFyQj4UP/j4s5xRuzu/ELNuSKtfiRLAmaMSgOhHP JN7nDfxp+m98+oGGxCnx1ZfwtO1xJPurLMWXfEmwbscq0oED21rSo/X12wg5UQXJ G1DRjTWXDKXTlIyktAoH5D0ISyEfzODhga+9LfKuoKlmxMUyTRAYKFZq4kX2D7oe yo2pvQKWU9xJTwx8bSrnXu0Qqevw2Olf/SKBD9qXGAvL5hB+jdHvMdtOM72qsvTz n6100BtZ9oxGusYWgRqIFlNq5eIsPFs510ucvjAEvHyARF02Mp+1SCWevoZNEhLq n7FgpwuX0zopNSNm4vE4cO1yG+7GlDaSUStx3Um0TBczzSr/GpdGcYvUo5tHe4Ce 3UZewdS4x2Urrh8dr/BtY2OXDeM8sbvdtxKp/MKzp56o/3MVHp33Hi79Bp47rk3z 50DHH/EpW3lm5Au9pTJh4UWJEA91u1qZ/IukeKCbdMZaZvG/K2br+oxOymSOVbOa HxKularJ0T5CHtqICi/ti16ZFMsRcq1E3scD0nUN67QVfgJB8+euAiEiDFEBzPmy 6Pr5vBDtyuAvTsKSvxyA+L1fWzj/adlaKq2BDhD52jpceVFs51DZzNHTy9ul4nez RTqBxUgK3+JokjogytkncwST5cp0ngaoPYmOAr6cp1F8sbHnR1mHhOvSf7Aqk5dh MQFvBVZSOUBY =g4xI -----END PGP SIGNATURE----- gpgv: Signature made Sun Oct 8 16:40:13 2023 UTC gpgv: using RSA key 3F464391498FE874BDB5D98F2124AA1983785C90 gpgv: issuer "rafael@debian.org" gpgv: Can't check signature: No public key dpkg-source: warning: cannot verify inline signature for ./octave-image_2.14.0-5.dsc: no acceptable signature found dpkg-source: info: extracting octave-image in /<> dpkg-source: info: unpacking octave-image_2.14.0.orig.tar.gz dpkg-source: info: unpacking octave-image_2.14.0-5.debian.tar.xz dpkg-source: info: using patch list from debian/patches/series dpkg-source: info: applying skip-unit-test-otf2psf.patch dpkg-source: info: applying skip-unit-test-fftconv2.patch dpkg-source: info: applying skip-unit-test-imrode.patch dpkg-source: info: applying relax-unit-test-otf2psf-psf2otf.patch dpkg-source: info: applying skip-unit-test-imadjust.patch dpkg-source: info: applying xtest-in-normxcorr2.patch dpkg-source: info: applying stretchlim-xtest.patch dpkg-source: info: applying cp2tform-xtest.patch dpkg-source: info: applying relax-unit-test-affine2d.patch dpkg-source: info: applying add-distclean-target.patch Check disk space ---------------- Sufficient free space for build User Environment ---------------- APT_CONFIG=/var/lib/sbuild/apt.conf DEB_BUILD_OPTIONS=parallel=4 HOME=/sbuild-nonexistent LANG=C.UTF-8 LC_ALL=C.UTF-8 LOGNAME=buildd PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games SCHROOT_ALIAS_NAME=build-PACKAGEBUILD-27031084 SCHROOT_CHROOT_NAME=build-PACKAGEBUILD-27031084 SCHROOT_COMMAND=env SCHROOT_GID=2501 SCHROOT_GROUP=buildd SCHROOT_SESSION_ID=build-PACKAGEBUILD-27031084 SCHROOT_UID=2001 SCHROOT_USER=buildd SHELL=/bin/sh TERM=unknown USER=buildd V=1 dpkg-buildpackage ----------------- Command: dpkg-buildpackage -us -uc -mLaunchpad Build Daemon -B -rfakeroot dpkg-buildpackage: info: source package octave-image dpkg-buildpackage: info: source version 2.14.0-5 dpkg-buildpackage: info: source distribution unstable dpkg-source --before-build . dpkg-buildpackage: info: host architecture s390x debian/rules clean dh clean --buildsystem=octave dh_auto_clean -O--buildsystem=octave dh_octave_clean make[1]: Entering directory '/<>/src' make[1]: *** No rule to make target 'clean'. make[1]: *** No rule to make target 'distclean'. make[1]: Leaving directory '/<>/src' dh_autoreconf_clean -O--buildsystem=octave dh_clean -O--buildsystem=octave debian/rules binary-arch dh binary-arch --buildsystem=octave dh_update_autotools_config -a -O--buildsystem=octave dh_autoreconf -a -O--buildsystem=octave dh_octave_version -a -O--buildsystem=octave Checking the Octave version... ok dh_auto_configure -a -O--buildsystem=octave dh_auto_build -a -O--buildsystem=octave dh_auto_test -a -O--buildsystem=octave create-stamp debian/debhelper-build-stamp dh_testroot -a -O--buildsystem=octave dh_prep -a -O--buildsystem=octave dh_auto_install --destdir=debian/octave-image/ -a -O--buildsystem=octave octave --no-gui --no-history --silent --no-init-file --no-window-system /usr/share/dh-octave/install-pkg.m /<>/debian/octave-image/usr/share/octave/packages /<>/debian/octave-image/usr/lib/s390x-linux-gnu/octave/packages checking for a sed that does not truncate output... /usr/bin/sed checking for octave... /usr/bin/octave checking for mkoctfile... /usr/bin/mkoctfile --verbose 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 g++ accepts -g... yes checking for g++ option to enable C++11 features... none needed checking whether feval is in the octave namespace... yes checking whether octave value has Octave style is* methods... yes checking whether octave::execution_exception has message member... yes checking whether dim_vector has xelem method... yes checking whether range is in the octave namespace... yes checking whether templated lambda functions accept '&const int'... yes checking Octave core for function im2double... yes checking Octave core for function ntsc2rgb... no checking Octave core for function rgb2gray... yes checking Octave core for function rgb2ntsc... no configure: creating ./config.status config.status: creating Makefile config.status: creating config.h make[1]: Entering directory '/<>/src' /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 __spatial_filtering__.cc /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 __bilateral__.cc g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 __spatial_filtering__.cc -o /tmp/oct-woj394.o g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 __bilateral__.cc -o /tmp/oct-L1ApEz.o /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 __eps__.cc /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 __custom_gaussian_smoothing__.cc g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 __eps__.cc -o /tmp/oct-0OzSax.o g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 __custom_gaussian_smoothing__.cc -o /tmp/oct-Zo78Pc.o g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o __eps__.oct /tmp/oct-0OzSax.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 __boundary__.cc g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 __boundary__.cc -o /tmp/oct-pSTQnM.o g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o __custom_gaussian_smoothing__.oct /tmp/oct-Zo78Pc.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o __boundary__.oct /tmp/oct-pSTQnM.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 bwfill.cc g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 bwfill.cc -o /tmp/oct-BANQbN.o g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o __bilateral__.oct /tmp/oct-L1ApEz.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 rotate_scale.cc g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 rotate_scale.cc -o /tmp/oct-PglgyV.o g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o __spatial_filtering__.oct /tmp/oct-woj394.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 hough_line.cc g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 hough_line.cc -o /tmp/oct-myCa89.o g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o bwfill.oct /tmp/oct-BANQbN.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o rotate_scale.oct /tmp/oct-PglgyV.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 graycomatrix.cc g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 graycomatrix.cc -o /tmp/oct-retXAP.o /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 bwdist.cc g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 bwdist.cc -o /tmp/oct-XtI3aJ.o g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o hough_line.oct /tmp/oct-myCa89.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 intlut.cc g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 intlut.cc -o /tmp/oct-R0A17v.o /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 nonmax_suppress.cc g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 nonmax_suppress.cc -o /tmp/oct-khwqqO.o g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o graycomatrix.oct /tmp/oct-retXAP.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -c strel.cc g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 strel.cc -o strel.o g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o bwdist.oct /tmp/oct-XtI3aJ.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o intlut.oct /tmp/oct-R0A17v.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o nonmax_suppress.oct /tmp/oct-khwqqO.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -c connectivity.cc g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 connectivity.cc -o connectivity.o cp ntsc2rgb.m.in ntsc2rgb.m cp rgb2ntsc.m.in rgb2ntsc.m /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 conndef.cc connectivity.o /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 bwlabeln.cc connectivity.o /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 imreconstruct.cc connectivity.o g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 imreconstruct.cc -o /tmp/oct-9I0har.o g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 conndef.cc -o /tmp/oct-hy8gea.o g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 bwlabeln.cc -o /tmp/oct-GAcc57.o /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 bwconncomp.cc connectivity.o g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 bwconncomp.cc -o /tmp/oct-cc5WUZ.o g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o conndef.oct connectivity.o /tmp/oct-hy8gea.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o bwlabeln.oct connectivity.o /tmp/oct-GAcc57.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 watershed.cc connectivity.o g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 watershed.cc -o /tmp/oct-zwmsu0.o g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o bwconncomp.oct connectivity.o /tmp/oct-cc5WUZ.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro /usr/bin/mkoctfile --verbose -Wall -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 imerode.cc strel.o g++ -c -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 imerode.cc -o /tmp/oct-Rh1W6P.o g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o imreconstruct.oct connectivity.o /tmp/oct-9I0har.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o watershed.oct connectivity.o /tmp/oct-zwmsu0.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro g++ -I/usr/include/octave-8.4.0/octave/.. -I/usr/include/octave-8.4.0/octave -pthread -fopenmp -g -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -g -Wall -O2 -ffile-prefix-map=/<>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fdebug-prefix-map=/<>=/usr/src/octave-image-2.14.0-5 -o imerode.oct strel.o /tmp/oct-Rh1W6P.o -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro -L/usr/lib/s390x-linux-gnu -shared -Wl,-Bsymbolic -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -Wl,-z,relro make[1]: Leaving directory '/<>/src' copyfile /<>/./src/ntsc2rgb.m /<>/./src/rgb2ntsc.m /<>/./inst copyfile /<>/./src/__bilateral__.oct /<>/./src/__boundary__.oct /<>/./src/__custom_gaussian_smoothing__.oct /<>/./src/__eps__.oct /<>/./src/__spatial_filtering__.oct /<>/./src/bwconncomp.oct /<>/./src/bwdist.oct /<>/./src/bwfill.oct /<>/./src/bwlabeln.oct /<>/./src/conndef.oct /<>/./src/graycomatrix.oct /<>/./src/hough_line.oct /<>/./src/imerode.oct /<>/./src/imreconstruct.oct /<>/./src/intlut.oct /<>/./src/nonmax_suppress.oct /<>/./src/rotate_scale.oct /<>/./src/watershed.oct /<>/./src/__spatial_filtering__.cc-tst /<>/./src/bwconncomp.cc-tst /<>/./src/bwdist.cc-tst /<>/./src/bwfill.cc-tst /<>/./src/bwlabeln.cc-tst /<>/./src/conndef.cc-tst /<>/./src/graycomatrix.cc-tst /<>/./src/hough_line.cc-tst /<>/./src/imerode.cc-tst /<>/./src/imreconstruct.cc-tst /<>/./src/intlut.cc-tst /<>/./src/watershed.cc-tst /<>/./inst/s390x-ibm-linux-gnu-api-v58 For information about changes from previous versions of the image package, run 'news image'. dh_octave_check -a -O--buildsystem=octave Checking package... Checking m files ... [inst/normxcorr2.m] >>>>> /<>/inst/normxcorr2.m ***** function offsets = get_max_offsets (c) l = find (c == max (c(:))); offsets = nthargout (1:ndims (c), @ind2sub, size (c), l); ***** endfunction ***** test row_shift = 18; col_shift = 20; a = randi (255, 30, 30); b = a(row_shift-10:row_shift, col_shift-7:col_shift); c = normxcorr2 (b, a); ## should return exact coordinates assert (get_max_offsets (c), {row_shift col_shift}); ## Even with some small noise, should return exact coordinates b = imnoise (b, "gaussian"); c = normxcorr2 (b, a); assert (get_max_offsets (c), {row_shift col_shift}); ***** xtest a = rand (10, 10); c = normxcorr2 (a(5:7, 6:9), a); assert (c(7, 9), 1, eps*100); ***** test a = 10 * randn (100, 100); auto = normxcorr2 (a, a); add_in = normxcorr2 (a, -a); assert (auto, -add_in); ***** test a = 10 * randn (50, 50); b = 10 * randn (100, 100); do scale = 100 * rand (); until (scale != 0) assert (max ((normxcorr2 (scale*a,b) - normxcorr2 (a,b))(:)), 0, 1e-10); assert (max ((normxcorr2 (a,scale*b) - normxcorr2 (a,b))(:)), 0, 1e-10); a_shift1 = a + scale * ones (size (a)); b_shift1 = b + scale * ones (size (b)); a_shift2 = a - scale * ones (size (a)); b_shift2 = b - scale * ones (size (b)); assert (max ((normxcorr2 (a_shift1,b) - normxcorr2 (a,b))(:)), 0, 1e-10); assert (max ((normxcorr2 (a,b_shift1) - normxcorr2 (a,b))(:)), 0, 1e-10); assert (max ((normxcorr2 (a_shift2,b) - normxcorr2 (a,b))(:)), 0, 1e-10); assert (max ((normxcorr2 (a,b_shift2) - normxcorr2 (a,b))(:)), 0, 1e-10); ***** test a = randi (100, 15, 15, 15); c = normxcorr2 (a(5:10, 2:6, 3:7), a); assert (get_max_offsets (c), {10 6 7}); a = randi (100, 15, 15, 15); c = normxcorr2 (a(5:10, 2:6, 1:1), a); assert (get_max_offsets (c), {10 6 1}); ***** warning normxcorr2 (rand (20), rand (5)); ***** error normxcorr2 (rand (5)); ***** error normxcorr2 (rand (5), rand (20), 2); ***** test a = [ 252 168 50 1 59; 114 0 0 0 0] ./ 255; b = [ 1 171 255 255 255 255 240 71 131 254 255 255 255; 0 109 254 255 255 233 59 0 131 254 255 255 255; 76 13 195 253 194 34 0 19 217 255 255 255 255; 110 0 0 0 0 0 3 181 255 255 255 255 255; 153 0 0 0 0 2 154 254 255 255 255 255 255]./255; c = normxcorr2 (a, b); assert (max (imag (c(:))), 0); ***** test img = [1 1 1 0]; t = [1 1 0]; c = normxcorr2 (t, img); assert (c(3), 0) 10 tests, 10 passed, 0 known failure, 0 skipped [inst/imtranslate.m] >>>>> /<>/inst/imtranslate.m ***** test obs = imtranslate (ones (5, 5), 2, 1, "crop"); exp = zeros (5, 5); exp(1:4, 3:5) = 1; assert (obs, exp, eps * 10) obs = imtranslate (ones (5, 5), -2, -1, "crop"); exp = zeros (5, 5); exp(2:5, 1:3) = 1; assert (obs, exp, eps * 10) 1 test, 1 passed, 0 known failure, 0 skipped [inst/impixel.m] >>>>> /<>/inst/impixel.m ***** shared img2d, img3d img2d = uint8 (magic (10)); img3d(:,:,1) = img2d; img3d(:,:,2) = img2d + 1; img3d(:,:,3) = img2d + 2; img3d = uint8 (img3d); ***** assert (impixel (img2d, 2, 2), single ([80 80 80])); ***** assert (impixel (img2d, -2, 2), single ([NA NA NA])); ***** assert (impixel (img2d, [1 10], [1 10]), single ([92 92 92; 59 59 59])); ***** assert (impixel (img3d, [1 10], [1 10]), single ([92 93 94; 59 60 61])); ***** assert (impixel (double (img2d), [1 10], [1 10]), [92 92 92; 59 59 59]); ***** assert (impixel ([1 10], [1 10], img2d, [1 10], [1 10]), single ([92 92 92; 59 59 59])); ***** assert (impixel ([3 12], [-4 12], img2d, [1 10], [1 10]), single ([NA NA NA; 44 44 44])); ***** assert (impixel ([3 5], [-4 3], img2d, [1 10], [1 10]), single ([NA NA NA; NA NA NA])); ## the following returns double because it's an indexed image ***** assert (impixel ([3 12], [-4 12], img2d, gray (100), [1 10], [1 10]), [NA NA NA; 4/9 4/9 4/9]); 9 tests, 9 passed, 0 known failure, 0 skipped [inst/montage.m] >>>>> /<>/inst/montage.m ***** function cdata = montage_cdata (varargin) h = figure (); set (h, "visible", "off"); mh = montage (varargin{:}); cdata = get (mh, "cdata"); close (h); ***** endfunction ***** test im = uint8 (ones (2, 2, 1, 5)) .* reshape ([1 2 3 4 5], [1 1 1 5]); cdata = montage_cdata (im); expected = uint8 ([ 1 1 2 2 3 3 1 1 2 2 3 3 4 4 5 5 0 0 4 4 5 5 0 0 ]); assert (cdata, expected) warning: using the gnuplot graphics toolkit is discouraged The gnuplot graphics toolkit is not actively maintained and has a number of limitations that are unlikely to be fixed. Communication with gnuplot uses a one-directional pipe and limited information is passed back to the Octave interpreter so most changes made interactively in the plot window will not be reflected in the graphics properties managed by Octave. For example, if the plot window is closed with a mouse click, Octave will not be notified and will not update its internal list of open figure windows. The qt toolkit is recommended instead. ***** test im = uint8 (ones (2, 4, 1, 6)) .* reshape ([1 2 3 4 5 6], [1 1 1 6]); cdata = montage_cdata (im); expected = uint8 ([ 1 1 1 1 2 2 2 2 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 3 3 3 3 4 4 4 4 5 5 5 5 6 6 6 6 5 5 5 5 6 6 6 6 ]); assert (cdata, expected) 2 tests, 2 passed, 0 known failure, 0 skipped [inst/bwhitmiss.m] >>>>> /<>/inst/bwhitmiss.m ***** test bw1 = repmat ([0 1 0 1 1], [3 1]); bw2 = repmat ([0 1 0 0 0], [3 1]); assert (bwhitmiss (bw1, [1; 0; 1], [1 0 1]), logical (bw2)) assert (bwhitmiss (bw1, [0 1 0; -1 0 -1; 0 1 0]), logical (bw2)) 1 test, 1 passed, 0 known failure, 0 skipped [inst/isbw.m] >>>>> /<>/inst/isbw.m ***** shared img img = round (rand (10)); ***** assert (isbw (img, "non-logical"), true); ***** assert (isbw (img, "logical"), false); ***** assert (isbw (logical (img), "logical"), true); ***** assert (isbw (logical (img), "non-logical"), true); ***** test img(1, 1) = 2; assert (isbw (img, "non-logical"), false); ***** test a( 1, 1) = 1; a(50, 50) = 2; assert (isbw (a, "non-logical"), false); ***** assert (isbw (rand (5, 5, 1, 4) > 0.5), true) ***** assert (isbw (rand (5, 5, 3, 4) > 0.5), false) ***** assert (isbw (rand (5, 5, 3) > 0.5), false) ***** assert (isbw (rand (5, 5, 1, 3, 4) > 0.5), false) ***** assert (isbw (randi ([0 1], 5, 5, 1, 4), "non-logical"), true) ***** assert (isbw (randi ([0 1], 5, 5, 3, 4), "non-logical"), false) ***** assert (isbw (randi ([0 1], 5, 5, 3), "non-logical"), false) ***** assert (isbw (randi ([0 1], 5, 5, 1, 3, 4), "non-logical"), false) ***** assert (isbw (single ([0 0 1]), "non-logical"), true) ***** assert (isbw ([0 NaN 1], "non-logical"), false) 16 tests, 16 passed, 0 known failure, 0 skipped [inst/iptcheckmap.m] >>>>> /<>/inst/iptcheckmap.m ***** test ("iptcheckmap (jet(64), 'func', 'var', 2)"); # simple must work ***** fail ("iptcheckmap (3, 'func', 'var', 2)"); # not a colormap 2 tests, 2 passed, 0 known failure, 0 skipped [inst/imgradient.m] >>>>> /<>/inst/imgradient.m ***** test A = [0 1 0 1 1 1 0 1 0]; [gMag, gDir] = imgradient (A); assert (gMag,[sqrt(18) 4 sqrt(18); 4 0 4; sqrt(18),4,sqrt(18)]); assert (gDir,[-45 -90 -135; -0 -0 -180; 45 90 135]); ## the following just test if passing gx and gy separately gets ## us the same as the image and method though imgradient [gxSobel, gySobel] = imgradientxy (A, "Sobel"); [gxPrewitt, gyPrewitt] = imgradientxy (A, "Prewitt"); [gxCd, gyCd] = imgradientxy (A, "CentralDifference"); [gxId, gyId] = imgradientxy (A, "IntermediateDifference"); assert (imgradient (A), imgradient (gxSobel, gySobel)); assert (imgradient (A, "Sobel"), imgradient (gxSobel, gySobel)); assert (imgradient (A, "Prewitt"), imgradient(gxPrewitt, gyPrewitt)); assert (imgradient (A, "CentralDifference"), imgradient (gxCd, gyCd)); assert (imgradient (A, "IntermediateDifference"), imgradient (gxId, gyId)); 1 test, 1 passed, 0 known failure, 0 skipped [inst/imsharpen.m] >>>>> /<>/inst/imsharpen.m ***** test A = zeros (7, 7); A(4,4) = 1; B = [ 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 -0.00238 -0.01064 -0.01755 -0.01064 -0.00238 0.00000 0.00000 -0.01064 -0.04771 -0.07866 -0.04771 -0.01064 0.00000 0.00000 -0.01755 -0.07866 1.67032 -0.07866 -0.01755 0.00000 0.00000 -0.01064 -0.04771 -0.07866 -0.04771 -0.01064 0.00000 0.00000 -0.00238 -0.01064 -0.01755 -0.01064 -0.00238 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000]; assert (imsharpen (A), B, 5e-6) ***** test A = zeros (7, 7); A(4,4) = 1; B = [ -0.0035147 -0.0065663 -0.0095539 -0.0108259 -0.0095539 -0.0065663 -0.0035147 -0.0065663 -0.0122674 -0.0178490 -0.0202255 -0.0178490 -0.0122674 -0.0065663 -0.0095539 -0.0178490 -0.0259701 -0.0294280 -0.0259701 -0.0178490 -0.0095539 -0.0108259 -0.0202255 -0.0294280 1.7666538 -0.0294280 -0.0202255 -0.0108259 -0.0095539 -0.0178490 -0.0259701 -0.0294280 -0.0259701 -0.0178490 -0.0095539 -0.0065663 -0.0122674 -0.0178490 -0.0202255 -0.0178490 -0.0122674 -0.0065663 -0.0035147 -0.0065663 -0.0095539 -0.0108259 -0.0095539 -0.0065663 -0.0035147]; assert (imsharpen (A, "radius", 2), B, 5e-8) ***** test A = zeros (7, 7); A(4,4) = 1; assert (imsharpen (A, "radius", 0.01), A) ***** test A = zeros (7, 7); A(4,4) = 1; B = A; B(3:5,3:5) = -0.000000000011110; B(3:5,4) = -0.000002981278097; B(4,3:5) = -0.000002981278097; B(4,4) = 1.000011925156828; assert (imsharpen (A, "radius", 0.2), B, eps*10) ***** test A = zeros (7, 7); A(4,4) = 1; B = [ 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 -0.00297 -0.01331 -0.02194 -0.01331 -0.00297 0.00000 0.00000 -0.01331 -0.05963 -0.09832 -0.05963 -0.01331 0.00000 0.00000 -0.02194 -0.09832 1.83790 -0.09832 -0.02194 0.00000 0.00000 -0.01331 -0.05963 -0.09832 -0.05963 -0.01331 0.00000 0.00000 -0.00297 -0.01331 -0.02194 -0.01331 -0.00297 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000]; assert (imsharpen (A, "amount", 1), B, 5e-6) ***** test A = zeros (7, 7); A(4,4) = 1; B = zeros (7, 7); B(4,4) = 1.670317742690299; B(4,3) = -0.078656265079077; B(3,4) = -0.078656265079077; B(4,5) = -0.078656265079077; B(5,4) = -0.078656265079077; assert (imsharpen (A, "Threshold", 0.117341762), B, eps*10) ***** test A = zeros (7, 7); A(4,4) = 1; B = zeros (7, 7); B(4,4) = 1.670317742690299; assert (imsharpen (A, "Threshold", 0.117341763), B, eps*10) ***** test A = zeros (7, 7, "uint8"); A(3:5,3:5) = 150; B = zeros (7, 7, "uint8"); B(3:5,3:5) = 211; B(4,3:5) = 195; B(3:5,4) = 195; B(4,4) = 175; assert (imsharpen (A), B) ***** test A = zeros (7, 7, "uint8"); A(3:5,3:5) = 100; B = zeros (7, 7, "uint8"); B(3:5,3:5) = 173; assert (imsharpen (A, "radius", 4), B) ***** test A = zeros (7, 7, 3, "uint8"); A(4,4,:) = 255; assert (imsharpen (A), A) ***** xtest A = zeros(7,7,3, "uint8"); A(4,4,1) = 255; B = A; B(4,4,2) = 146; # Octave result is 145; B(4,4,3) = 100; # Octave result is 99; assert (imsharpen (A), B) !!!!! known failure ASSERT errors for: assert (imsharpen (A),B) Location | Observed | Expected | Reason (4,4,2) 145 146 Abs err 0 exceeds tol 0 by 0 (4,4,3) 99 100 Abs err 0 exceeds tol 0 by 0 ***** xtest A = zeros (7, 7, 3, "uint8"); A(3:5,3:5,1) = 100; A(3:5,3:5,2) = 150; B = A; B(3:5,3:5,1) = 164; B(3:5,4,1) = 146; # Octave result is 147 B(4,3:5,1) = 146; # Octave result is 145 B(4,4,1) = 125; # Octave result is 126 B(3:5,3:5,2) = 213; B(3:5,4,2) = 195; # Octave result is 196 B(4,3:5,2) = 195; # Octave result is 196 B(4,4,2) = 175; B(3:5,3:5,3) = 79; B(3:5,4,3) = 62; B(4,3:5,3) = 62; B(4,4,3) = 40; # Octave result is 39 assert (imsharpen (A), B) !!!!! known failure ASSERT errors for: assert (imsharpen (A),B) Location | Observed | Expected | Reason (4,3,1) 147 146 Abs err 1 exceeds tol 0 by 1 (3,4,1) 147 146 Abs err 1 exceeds tol 0 by 1 (4,4,1) 126 125 Abs err 1 exceeds tol 0 by 1 (5,4,1) 147 146 Abs err 1 exceeds tol 0 by 1 (4,5,1) 147 146 Abs err 1 exceeds tol 0 by 1 (4,3,2) 196 195 Abs err 1 exceeds tol 0 by 1 (3,4,2) 196 195 Abs err 1 exceeds tol 0 by 1 (5,4,2) 196 195 Abs err 1 exceeds tol 0 by 1 (4,5,2) 196 195 Abs err 1 exceeds tol 0 by 1 (4,4,3) 39 40 Abs err 0 exceeds tol 0 by 0 ***** error imsharpen () ***** error imsharpen (ones (3, 3), "Radius") ***** error imsharpen (ones (3, 3), "Radius", 0) ***** error imsharpen (ones (3, 3), "Amount", -1) ***** error imsharpen (ones (3, 3), "Threshold", 1.5) ***** error imsharpen (ones (3, 3), "Threshold", -1) ***** error imsharpen (ones (3, 3), "foo") ***** error imsharpen ("foo") 20 tests, 18 passed, 2 known failures, 0 skipped [inst/bwunpack.m] >>>>> /<>/inst/bwunpack.m ***** error id=Octave:invalid-fun-call bwunpack () ***** error bwunpack (uint8 (1)) ***** error bwunpack (uint32 (1), -1) ***** error bwunpack (uint32 (1), 4.2) ***** xtest ## bug #55521 assert (bwunpack (uint32 (2.^[0:31])), logical (eye (32))) !!!!! known failure ASSERT errors for: assert (bwunpack (uint32 (2 .^ [0:31])),logical (eye (32))) Location | Observed | Expected | Reason (1,1) 0 1 Abs err 1 exceeds tol 0 by 1 (25,1) 1 0 Abs err 1 exceeds tol 0 by 1 (2,2) 0 1 Abs err 1 exceeds tol 0 by 1 (26,2) 1 0 Abs err 1 exceeds tol 0 by 1 (3,3) 0 1 Abs err 1 exceeds tol 0 by 1 (27,3) 1 0 Abs err 1 exceeds tol 0 by 1 (4,4) 0 1 Abs err 1 exceeds tol 0 by 1 (28,4) 1 0 Abs err 1 exceeds tol 0 by 1 (5,5) 0 1 Abs err 1 exceeds tol 0 by 1 (29,5) 1 0 Abs err 1 exceeds tol 0 by 1 (6,6) 0 1 Abs err 1 exceeds tol 0 by 1 (30,6) 1 0 Abs err 1 exceeds tol 0 by 1 (7,7) 0 1 Abs err 1 exceeds tol 0 by 1 (31,7) 1 0 Abs err 1 exceeds tol 0 by 1 (8,8) 0 1 Abs err 1 exceeds tol 0 by 1 (32,8) 1 0 Abs err 1 exceeds tol 0 by 1 (9,9) 0 1 Abs err 1 exceeds tol 0 by 1 (17,9) 1 0 Abs err 1 exceeds tol 0 by 1 (10,10) 0 1 Abs err 1 exceeds tol 0 by 1 (18,10) 1 0 Abs err 1 exceeds tol 0 by 1 (11,11) 0 1 Abs err 1 exceeds tol 0 by 1 (19,11) 1 0 Abs err 1 exceeds tol 0 by 1 (12,12) 0 1 Abs err 1 exceeds tol 0 by 1 (20,12) 1 0 Abs err 1 exceeds tol 0 by 1 (13,13) 0 1 Abs err 1 exceeds tol 0 by 1 (21,13) 1 0 Abs err 1 exceeds tol 0 by 1 (14,14) 0 1 Abs err 1 exceeds tol 0 by 1 (22,14) 1 0 Abs err 1 exceeds tol 0 by 1 (15,15) 0 1 Abs err 1 exceeds tol 0 by 1 (23,15) 1 0 Abs err 1 exceeds tol 0 by 1 (16,16) 0 1 Abs err 1 exceeds tol 0 by 1 (24,16) 1 0 Abs err 1 exceeds tol 0 by 1 (9,17) 1 0 Abs err 1 exceeds tol 0 by 1 (17,17) 0 1 Abs err 1 exceeds tol 0 by 1 (10,18) 1 0 Abs err 1 exceeds tol 0 by 1 (18,18) 0 1 Abs err 1 exceeds tol 0 by 1 (11,19) 1 0 Abs err 1 exceeds tol 0 by 1 (19,19) 0 1 Abs err 1 exceeds tol 0 by 1 (12,20) 1 0 Abs err 1 exceeds tol 0 by 1 (20,20) 0 1 Abs err 1 exceeds tol 0 by 1 (13,21) 1 0 Abs err 1 exceeds tol 0 by 1 (21,21) 0 1 Abs err 1 exceeds tol 0 by 1 (14,22) 1 0 Abs err 1 exceeds tol 0 by 1 (22,22) 0 1 Abs err 1 exceeds tol 0 by 1 (15,23) 1 0 Abs err 1 exceeds tol 0 by 1 (23,23) 0 1 Abs err 1 exceeds tol 0 by 1 (16,24) 1 0 Abs err 1 exceeds tol 0 by 1 (24,24) 0 1 Abs err 1 exceeds tol 0 by 1 (1,25) 1 0 Abs err 1 exceeds tol 0 by 1 (25,25) 0 1 Abs err 1 exceeds tol 0 by 1 (2,26) 1 0 Abs err 1 exceeds tol 0 by 1 (26,26) 0 1 Abs err 1 exceeds tol 0 by 1 (3,27) 1 0 Abs err 1 exceeds tol 0 by 1 (27,27) 0 1 Abs err 1 exceeds tol 0 by 1 (4,28) 1 0 Abs err 1 exceeds tol 0 by 1 (28,28) 0 1 Abs err 1 exceeds tol 0 by 1 (5,29) 1 0 Abs err 1 exceeds tol 0 by 1 (29,29) 0 1 Abs err 1 exceeds tol 0 by 1 (6,30) 1 0 Abs err 1 exceeds tol 0 by 1 (30,30) 0 1 Abs err 1 exceeds tol 0 by 1 (7,31) 1 0 Abs err 1 exceeds tol 0 by 1 (31,31) 0 1 Abs err 1 exceeds tol 0 by 1 (8,32) 1 0 Abs err 1 exceeds tol 0 by 1 (32,32) 0 1 Abs err 1 exceeds tol 0 by 1 ***** xtest ## bug #55521 assert (bwunpack (uint32 (repmat (7, [1 3 3 3])), 3), true (3, 3, 3, 3)) !!!!! known failure ASSERT errors for: assert (bwunpack (uint32 (repmat (7, [1, 3, 3, 3])), 3),true (3, 3, 3, 3)) Location | Observed | Expected | Reason (1,1,1,1) 0 1 Abs err 1 exceeds tol 0 by 1 (2,1,1,1) 0 1 Abs err 1 exceeds tol 0 by 1 (3,1,1,1) 0 1 Abs err 1 exceeds tol 0 by 1 (1,2,1,1) 0 1 Abs err 1 exceeds tol 0 by 1 (2,2,1,1) 0 1 Abs err 1 exceeds tol 0 by 1 (3,2,1,1) 0 1 Abs err 1 exceeds tol 0 by 1 (1,3,1,1) 0 1 Abs err 1 exceeds tol 0 by 1 (2,3,1,1) 0 1 Abs err 1 exceeds tol 0 by 1 (3,3,1,1) 0 1 Abs err 1 exceeds tol 0 by 1 (1,1,2,1) 0 1 Abs err 1 exceeds tol 0 by 1 (2,1,2,1) 0 1 Abs err 1 exceeds tol 0 by 1 (3,1,2,1) 0 1 Abs err 1 exceeds tol 0 by 1 (1,2,2,1) 0 1 Abs err 1 exceeds tol 0 by 1 (2,2,2,1) 0 1 Abs err 1 exceeds tol 0 by 1 (3,2,2,1) 0 1 Abs err 1 exceeds tol 0 by 1 (1,3,2,1) 0 1 Abs err 1 exceeds tol 0 by 1 (2,3,2,1) 0 1 Abs err 1 exceeds tol 0 by 1 (3,3,2,1) 0 1 Abs err 1 exceeds tol 0 by 1 (1,1,3,1) 0 1 Abs err 1 exceeds tol 0 by 1 (2,1,3,1) 0 1 Abs err 1 exceeds tol 0 by 1 (3,1,3,1) 0 1 Abs err 1 exceeds tol 0 by 1 (1,2,3,1) 0 1 Abs err 1 exceeds tol 0 by 1 (2,2,3,1) 0 1 Abs err 1 exceeds tol 0 by 1 (3,2,3,1) 0 1 Abs err 1 exceeds tol 0 by 1 (1,3,3,1) 0 1 Abs err 1 exceeds tol 0 by 1 (2,3,3,1) 0 1 Abs err 1 exceeds tol 0 by 1 (3,3,3,1) 0 1 Abs err 1 exceeds tol 0 by 1 (1,1,1,2) 0 1 Abs err 1 exceeds tol 0 by 1 (2,1,1,2) 0 1 Abs err 1 exceeds tol 0 by 1 (3,1,1,2) 0 1 Abs err 1 exceeds tol 0 by 1 (1,2,1,2) 0 1 Abs err 1 exceeds tol 0 by 1 (2,2,1,2) 0 1 Abs err 1 exceeds tol 0 by 1 (3,2,1,2) 0 1 Abs err 1 exceeds tol 0 by 1 (1,3,1,2) 0 1 Abs err 1 exceeds tol 0 by 1 (2,3,1,2) 0 1 Abs err 1 exceeds tol 0 by 1 (3,3,1,2) 0 1 Abs err 1 exceeds tol 0 by 1 (1,1,2,2) 0 1 Abs err 1 exceeds tol 0 by 1 (2,1,2,2) 0 1 Abs err 1 exceeds tol 0 by 1 (3,1,2,2) 0 1 Abs err 1 exceeds tol 0 by 1 (1,2,2,2) 0 1 Abs err 1 exceeds tol 0 by 1 (2,2,2,2) 0 1 Abs err 1 exceeds tol 0 by 1 (3,2,2,2) 0 1 Abs err 1 exceeds tol 0 by 1 (1,3,2,2) 0 1 Abs err 1 exceeds tol 0 by 1 (2,3,2,2) 0 1 Abs err 1 exceeds tol 0 by 1 (3,3,2,2) 0 1 Abs err 1 exceeds tol 0 by 1 (1,1,3,2) 0 1 Abs err 1 exceeds tol 0 by 1 (2,1,3,2) 0 1 Abs err 1 exceeds tol 0 by 1 (3,1,3,2) 0 1 Abs err 1 exceeds tol 0 by 1 (1,2,3,2) 0 1 Abs err 1 exceeds tol 0 by 1 (2,2,3,2) 0 1 Abs err 1 exceeds tol 0 by 1 (3,2,3,2) 0 1 Abs err 1 exceeds tol 0 by 1 (1,3,3,2) 0 1 Abs err 1 exceeds tol 0 by 1 (2,3,3,2) 0 1 Abs err 1 exceeds tol 0 by 1 (3,3,3,2) 0 1 Abs err 1 exceeds tol 0 by 1 (1,1,1,3) 0 1 Abs err 1 exceeds tol 0 by 1 (2,1,1,3) 0 1 Abs err 1 exceeds tol 0 by 1 (3,1,1,3) 0 1 Abs err 1 exceeds tol 0 by 1 (1,2,1,3) 0 1 Abs err 1 exceeds tol 0 by 1 (2,2,1,3) 0 1 Abs err 1 exceeds tol 0 by 1 (3,2,1,3) 0 1 Abs err 1 exceeds tol 0 by 1 (1,3,1,3) 0 1 Abs err 1 exceeds tol 0 by 1 (2,3,1,3) 0 1 Abs err 1 exceeds tol 0 by 1 (3,3,1,3) 0 1 Abs err 1 exceeds tol 0 by 1 (1,1,2,3) 0 1 Abs err 1 exceeds tol 0 by 1 (2,1,2,3) 0 1 Abs err 1 exceeds tol 0 by 1 (3,1,2,3) 0 1 Abs err 1 exceeds tol 0 by 1 (1,2,2,3) 0 1 Abs err 1 exceeds tol 0 by 1 (2,2,2,3) 0 1 Abs err 1 exceeds tol 0 by 1 (3,2,2,3) 0 1 Abs err 1 exceeds tol 0 by 1 (1,3,2,3) 0 1 Abs err 1 exceeds tol 0 by 1 (2,3,2,3) 0 1 Abs err 1 exceeds tol 0 by 1 (3,3,2,3) 0 1 Abs err 1 exceeds tol 0 by 1 (1,1,3,3) 0 1 Abs err 1 exceeds tol 0 by 1 (2,1,3,3) 0 1 Abs err 1 exceeds tol 0 by 1 (3,1,3,3) 0 1 Abs err 1 exceeds tol 0 by 1 (1,2,3,3) 0 1 Abs err 1 exceeds tol 0 by 1 (2,2,3,3) 0 1 Abs err 1 exceeds tol 0 by 1 (3,2,3,3) 0 1 Abs err 1 exceeds tol 0 by 1 (1,3,3,3) 0 1 Abs err 1 exceeds tol 0 by 1 (2,3,3,3) 0 1 Abs err 1 exceeds tol 0 by 1 (3,3,3,3) 0 1 Abs err 1 exceeds tol 0 by 1 ***** assert (bwunpack (uint32 (zeros (0, 0))), false (0, 0)) ***** assert (bwunpack (uint32 (zeros (0, 0)), 0), false (0, 0)) ***** assert (bwunpack (uint32 (zeros (0, 5)), 0), false (0, 5)) ***** assert (bwunpack (uint32 (zeros (0, 5, 7)), 0), false (0, 5, 7)) ***** assert (bwunpack (uint32 (zeros (1, 0))), false (32, 0)) ***** assert (bwunpack (uint32 (zeros (2, 0, 7))), false (64, 0, 7)) ***** assert (bwunpack (uint32 (zeros (2, 0, 7))), false (64, 0, 7)) ***** assert (bwunpack (uint32 (zeros (2, 0, 7)), 60), false (60, 0, 7)) ***** error bwunpack (uint32 (1), 1042) 15 tests, 13 passed, 2 known failures, 0 skipped [inst/integralImage3.m] >>>>> /<>/inst/integralImage3.m ***** test assert (integralImage3 (zeros (4)), zeros (5, 5, 2)); ***** test J_res = zeros (2, 2, 2); J_res(2, 2, 2) = 10; assert (integralImage3 (10), J_res); ***** test J = integralImage3 (10); assert (class (J), "double"); J = integralImage3 (uint8 (10)); assert (class (J), "double"); ***** test I = [1, 2; 3, 4]; J = integralImage3 (I); J_res = zeros (3, 3, 2); J_res(2:3, 2:3, 2) = [1 3; 4 10]; assert (J, J_res) ***** test I1 = [1, 2; 3, 4]; I2 = [5, 6; 7, 8]; I3 = [9, 10; 11, 12]; I = cat (3, I1, I2, I3); J = integralImage3 (I); J2 = [0 0 0; 0 1 3; 0 4 10]; J3 = [0 0 0; 0 6 14; 0 16 36]; J4 = [0 0 0; 0 15 33; 0 36 78]; J_res = cat (3, zeros (3), J2, J3, J4); assert (J, J_res) ***** test I = magic (5); J = integralImage3 (I); J_res = zeros (6, 6, 2); J_res(:, :, 2) = [0 0 0 0 0 0; 0 17 41 42 50 65; 0 40 69 77 99 130; 0 44 79 100 142 195; 0 54 101 141 204 260; 0 65 130 195 260 325]; assert (J, J_res) ***** # test of 3d input image: ***** test K = magic (8); K = reshape (K, [4 4 4]); L = integralImage3 (K); L1_ML = zeros (5); L2_ML = [0 0 0 0 0; 0 64 96 98 132; 0 73 146 203 260; 0 90 212 316 388; 0 130 260 390 520]; L3_ML = [0 0 0 0 0; 0 67 134 197 260; 0 130 260 390 520; 0 193 386 583 780; 0 260 520 780 1040]; L4_ML = [0 0 0 0 0; 0 127 222 291 392; 0 203 406 593 780; 0 287 606 903 1168; 0 390 780 1170 1560]; L5_ML = [0 0 0 0 0; 0 134 268 394 520; 0 260 520 780 1040; 0 386 772 1166 1560; 0 520 1040 1560 2080]; L_ML = cat (3, L1_ML, L2_ML, L3_ML, L4_ML, L5_ML); assert (L, L_ML) ***** # test of 2d input image: ***** test X = ones (3); Y = integralImage3 (X); Y_ML = zeros (4, 4, 2); Y_ML(:, :, 2) = [0 0 0 0; 0 1 2 3; 0 2 4 6; 0 3 6 9]; assert(Y, Y_ML); ***** error id=Octave:invalid-fun-call integralImage3 (); ***** error id=Octave:invalid-fun-call integralImage3 (zeros (3), zeros (3)); ***** error integralImage3 ("abcd"); ***** error integralImage3 (1+i); ***** error integralImage3 (reshape (1:81, 3, 3, 3, 3)); 13 tests, 13 passed, 0 known failure, 0 skipped [inst/imhmin.m] >>>>> /<>/inst/imhmin.m ***** shared im0, im0_h2_out im0 = uint8 ([5 5 5 5 5; 5 4 3 4 5; 5 3 0 3 5; 5 4 3 4 5; 5 5 5 5 5]); im0_h2_out = uint8 ([5 5 5 5 5; 5 4 3 4 5; 5 3 2 3 5; 5 4 3 4 5; 5 5 5 5 5]); ***** error imhmin () ***** error imhmin (im0) ***** error imhmin ("hello", 2) ***** error imhmin (i.*im0, 2) ***** error imhmin (sparse (im0), 2) ***** error imhmin (im0, -2) ***** error imhmin (im0, 'a') ***** error imhmin (im0, ones (2)) ***** error imhmin (im0, 2*i) ***** assert (imhmin (im0, 2), im0_h2_out) ***** assert (imhmin (double (im0), 2), double (im0_h2_out)) ***** assert (imhmin (im0, 2, 8), im0_h2_out) ***** assert (imhmin (im0, 2, 4), im0_h2_out) ***** assert (imhmin (im0, 2, true (3)), im0_h2_out) ***** test out = imhmin (double (im0), 2); assert (size (out), size (im0)) assert (class (out), "double") ***** test out = imhmin (single (im0), 2); assert (size (out), size (im0)) assert (class (out), "single") ***** test out = imhmin (uint8 (im0), 2); assert (size (out), size (im0)) assert (class (out), "uint8") ***** test out = imhmin (uint16 (im0), 2); assert (size (out), size (im0)) assert (class (out), "uint16") ***** test im = cat (3, im0, im0, im0, im0); out = imhmin (im, 2); assert (size (out), size (im)) ***** test im = 10 .* ones (10); im(2:4, 2:4) = 7; im(6:8, 6:8) = 2; expected_4 = 10 .* ones (10); expected_4(6:8, 6:8) = 6; expected_2 = 10 .* ones (10); expected_2(6:8, 6:8) = 4; expected_2(2:4, 2:4) = 9; out = imhmin (im, 4); assert (out, expected_4, eps) out = imhmin (im, 2); assert (out, expected_2, eps) out = imhmin (0.1.*im, 0.4); assert (out, 0.1 .* expected_4, eps) ***** test im2 = 10 .* ones (10); im2(2:4, 2:4) = 7; im2(6:9, 6:9)=2; im2(5, 5)=2; im2(6, 7)=10; im2(7, 8)=10; expected_4 = 10 .* ones (10); expected_4(6:9, 6:9) = 6; expected_4(5, 5) = 6; expected_4(6, 7) = 10; expected_4(7, 8) = 10; expected_8 = expected_4; expected_8(2:4, 2:4) = 7; out2 = imhmin (im2, 4); assert (out2, expected_8, eps) out2 = imhmin (im2, 4, 4); assert (out2, expected_4, eps) out2 = imhmin (im2, 4, 8); assert (out2, expected_8, eps) 21 tests, 21 passed, 0 known failure, 0 skipped [inst/isgray.m] >>>>> /<>/inst/isgray.m ***** assert (isgray ([0 0 1; 1 0 1]), true) ***** assert (isgray (zeros (3)), true) ***** assert (isgray (ones (3)), true) ***** test a = rand (10); assert (isgray (a), true); a(5, 5) = 2; assert (isgray (a), false); ***** test a = uint8 (randi (255, 10)); assert (isgray (a), true); a = int8 (a); assert (isgray (a), false); ***** test a = rand (10); a(50) = NaN; assert (isgray (a), true); ***** assert (isgray (rand (5, 5, 1, 4)), true); ***** assert (isgray (rand (5, 5, 3, 4)), false); ***** assert (isgray (rand (5, 5, 3)), false); ***** assert (isgray (rand (5, 5, 1, 3, 4)), false); ***** assert (isgray (rand (5, "single")), true) ***** assert (isgray ([.1 .2 .3; .4 NaN .6; .7 .8 .9]), true) ***** assert (isgray ([.1 .2 .3; NA NaN .6; .7 .8 .9]), true) ***** assert (isgray ([.1 .2 .3; NA .5 .6; .7 .8 .9]), true) ***** assert (isgray (NaN (5)), false) ***** assert (isgray (NA (5)), false) 16 tests, 16 passed, 0 known failure, 0 skipped [inst/imadjust.m] >>>>> /<>/inst/imadjust.m ***** error imadjust ("bad argument"); ***** error imadjust ([1:100], "bad argument", [], 1); ***** error <2 row column per plane> imadjust ([1:100], [0 1 1], [], 1); ***** error <2 row column per plane> imadjust ([1:100], [], [0 1 1], 1); ***** error imadjust ([1:100], [], [], [0; 1]); ***** error imadjust (rand (5, 5, 3), [], [], [0 1]); ***** error imadjust ([1:100], [0; 1], [], -1); ***** error imadjust ([1:100], [0; 5], []); ***** error imadjust ([1:100], [-2; 1], []); ***** error imadjust ([1:100], [], [0; 4]); ***** error imadjust ([1:100], [], [-2; 1]); ***** error imadjust (rand (5) > .5); ***** test im = [0.01:0.01:1]; assert (imadjust (im), [0 linspace(0, 1, 98) 1], eps) assert (imadjust (im), imadjust (im, stretchlim (im, 0.01), [0; 1], 1)) assert (imadjust (im, []), imadjust (im, [0; 1], [0; 1], 1)) assert (imadjust (im, [], []), imadjust (im, [0; 1], [0; 1], 1)) assert (imadjust (im, [], [.25 .75]), imadjust (im, [0; 1], [.25; .75], 1)) assert (imadjust (im, [.25; .75], []), imadjust (im, [.25; .75], [0; 1], 1)) ***** assert (imadjust (linspace (0, 1), [], [.25 .75]), linspace (.25, .75, 100), eps) ***** assert (imadjust (linspace (0, 1, 100),[1/99; 98/99]), [0 linspace(0, 1, 98) 1], eps) ***** shared cm cm = [[0:8]' [1:9]' [2:10]'] / 10; ***** assert (imadjust (cm, [0; 1], [0.5; 1]), (cm /2) + .5) ***** assert (imadjust (cm, [0 1], [0.5 1]), (cm /2) + .5) ***** assert (imadjust (cm, [0; 1], [.1 .2 .3; .7 .8 .9]), (cm*.6) + [.1 .2 .3], eps) ***** assert (imadjust (cm, [.2 .4 .6; .7 .8 .9], [0; 1]), [[0 0 linspace(0, 1, 6) 1]' ... [0 0 0 linspace(0, 1, 5) 1]' ... [0 0 0 0 linspace(0, 1, 4) 1]'], eps) ***** assert (imadjust (cm, [.2 .4 .6; .7 .8 .9], [0 .1 .2; .8 .9 1]), [[0 0 linspace(0, .8, 6) .8]' ... [.1 .1 .1 linspace(.1, .9, 5) .9]' ... [.2 .2 .2 .2 linspace(.2, 1, 4) 1]'], eps) ***** assert (imadjust (cm, [.2 .4 .6; .7 .8 .9], [0 .1 .2; .8 .9 1], [0.5 1 2]), [[0 0 0 (((([.3 .4 .5 .6]-.2)/.5).^.5)*.8) .8 .8]' ... [.1 .1 .1 linspace(.1, .9, 5) .9]' ... [.2 .2 .2 .2 .2 ((((([.7 .8]-.6)/.3).^2).*.8)+.2) 1 1]'], eps*10) ***** test im = [-0.4:.1:0.8 0.0:.1:1.2 0.1:.1:1.3 -0.4:.2:2.0]; ## just clipping assert (imadjust (im, [0; 1], [0; 1]), [0 0 0 0 (0:.1:.8) (0:.1:1) 1 1 (.1:.1:1) 1 1 1 0 0 (0:.2:1) 1 1 1 1 1], eps) ## clipping and invert assert (imadjust (im, [0; 1], [1; 0]), [1 1 1 1 (1:-.1:.2) (1:-.1:0) 0 0 (.9:-.1:0) 0 0 0 1 1 (1:-.2:0) 0 0 0 0 0], eps) ## rescale assert (imadjust (im, [.2; .7], [.1; .9]), [1 1 1 1 1 1 1 2.6 4.2 5.8 7.4 9 9 1 1 1 2.6 4.2 5.8 7.4 9 9 9 9 9 9 1 1 2.6 4.2 5.8 7.4 9 9 9 9 9 9 9 1 1 1 1 4.2 7.4 9 9 9 9 9 9 9]/10, eps) ## rescale and invert assert (imadjust (im, [.2; .7], [.9; .1]), [9 9 9 9 9 9 9 7.4 5.8 4.2 2.6 1 1 9 9 9 7.4 5.8 4.2 2.6 1 1 1 1 1 1 9 9 7.4 5.8 4.2 2.6 1 1 1 1 1 1 1 9 9 9 9 5.8 2.6 1 1 1 1 1 1 1]/10, eps) ***** assert (imadjust (linspace (0, 1), [], [], 2), linspace (0, 1) .^ 2) ***** shared oRGB oRGB = zeros (10, 1, 3); oRGB(:,:,1) = [0 linspace(0,1,6) 1 1 1]'; oRGB(:,:,2) = [0 0 linspace(0,1,6) 1 1]'; oRGB(:,:,3) = [0 0 0 linspace(0,1,6) 1]'; ***** assert (imadjust (oRGB, [0; 1], [0; 1]), oRGB) ***** assert (imadjust (oRGB, [.2; .8], [0; 1]), reshape ([[0 0 0 1/3 2/3 1 1 1 1 1]' [0 0 0 0 1/3 2/3 1 1 1 1]' [0 0 0 0 0 1/3 2/3 1 1 1]'], [10 1 3]), eps) ***** assert (imadjust (oRGB, [.2; .8], [.1; .9]), reshape ([[.1 .1 .1 (1/3)+(.1/3) (2/3)-(.1/3) .9 .9 .9 .9 .9]' [.1 .1 .1 .1 (1/3)+(.1/3) (2/3)-(.1/3) .9 .9 .9 .9]' [.1 .1 .1 .1 .1 (1/3)+(.1/3) (2/3)-(.1/3) .9 .9 .9]'], [10 1 3]), eps) ***** assert (imadjust (oRGB, [.2; .8], [.2; .8]), reshape ([[2 2 2 4 6 8 8 8 8 8]' [2 2 2 2 4 6 8 8 8 8]' [2 2 2 2 2 4 6 8 8 8]']/10, [10 1 3]), eps) ***** assert (imadjust (oRGB, [0; 1], [.1 .2 .3; .9 .8 .7]), reshape ([[1 1 2.6 4.2 5.8 7.4 9 9 9 9]' [2 2 2 3.2 4.4 5.6 6.8 8 8 8]' [3 3 3 3 3.8 4.6 5.4 6.2 7 7]']/10, [10 1 3]), eps) ***** assert (imadjust (oRGB, [.1 .2 .3; .9 .8 .7], [0; 1]), reshape ([[0 0 .125 .375 .625 .875 1 1 1 1]' [0 0 0 0 1/3 2/3 1 1 1 1]' [0 0 0 0 0 .25 .75 1 1 1]'], [10 1 3]), eps*10) ***** assert (imadjust (oRGB, [.1 .2 .3; .9 .8 .7], [.2 0 .4; .5 1 .7 ]), reshape ([[.2 .2 .2375 .3125 .3875 .4625 .5 .5 .5 .5]' [0 0 0 0 1/3 2/3 1 1 1 1]' [.4 .4 .4 .4 .4 .475 .625 .7 .7 .7]'], [10 1 3]), eps) ***** test img = rand (4, 4, 2, 3, 4); adj = zeros (4, 4, 2, 3, 4); for p = 1:2 for q = 1:3 for r = 1:4 adj(:,:,p,q,r) = imadjust (img(:,:,p,q,r)); endfor endfor endfor assert (imadjust (img), adj) ***** test img = rand (4, 4, 2, 3, 2); adj = zeros (4, 4, 2, 3, 2); in = reshape ([ 3 5 7 9 11 13 15 17 19 21 23 25; 97 95 93 91 89 87 85 83 81 79 77 75] / 100, [2 2 3 2]); out = reshape ([ 5 7 9 11 14 15 17 19 21 23 25 27; 95 93 91 89 87 85 83 81 79 77 75 73] / 100, [2 2 3 2]); gamma = reshape (0.6:.1:1.7, [1 2 3 2]); for p = 1:2 for q = 1:3 for r = 1:2 adj(:,:,p,q,r) = imadjust (img(:,:,p,q,r), in(:,p,q,r), out(:,p,q,r), gamma(1,p,q,r)); endfor endfor endfor assert (imadjust (img, in, out, gamma), adj, eps) ***** test in = int16 (1:6); assert (imadjust (in), int16 ([-32768 -19661 -6554 6553 19660 32767])) assert (imadjust (in, []), in) ***** test in = uint8([ 35 1 6 26 19 24 3 32 7 21 23 25 31 9 2 22 27 20 8 28 33 17 10 15 30 5 34 12 14 16 4 36 29 13 18 11]); out = uint8([ 12 0 0 1 0 0 0 8 0 0 0 0 7 0 0 0 2 0 0 3 9 0 0 0 6 0 11 0 0 0 0 13 4 0 0 0]); assert (imadjust (in, [.1 .9], [0 1]), out); ***** test in = uint8([ 140 4 24 104 76 96 12 128 28 84 92 100 124 36 8 88 108 80 32 112 132 68 40 60 120 20 136 48 56 64 16 144 116 52 72 44]); out = uint8([ 143 0 0 98 63 88 0 128 3 73 83 93 123 13 0 78 103 68 8 108 133 53 18 43 118 0 138 28 38 48 0 148 113 33 58 23]); assert (imadjust (in, [.1 .9], [0 1]), out); ***** xtest in_u8 = randi ([0 255], 5, 5, 2, 3, "uint8"); in_u16 = randi ([0 65535], 5, 5, 2, 3, "uint16"); in_i16 = randi ([-32768 32767], 5, 5, 2, 3, "int16"); in_u8_d = im2double (in_u8); in_u16_d = im2double (in_u16); in_i16_d = im2double (in_i16); lim_u8 = eps + 0.5 / double (intmax ("uint8")); lim_u16 = eps + 0.5 / double (intmax ("uint16")); lim_i16 = eps + 0.5 / ( double (intmax("int16")) - double (intmin ("int16")) ); ## default values assert (im2double (imadjust (in_u8)), imadjust (in_u8_d), lim_u8) assert (im2double( imadjust (in_u16)), imadjust (in_u16_d), lim_u16) assert (im2double( imadjust (in_i16)), imadjust (in_i16_d), lim_i16) ## single adjustment for all planes args = {[.3; .7], [.1; .9], [1.5]}; assert (im2double (imadjust (in_u8, args{:})), imadjust (in_u8_d, args{:}), lim_u8) assert (im2double (imadjust (in_u16, args{:})), imadjust (in_u16_d, args{:}), lim_u16) assert (im2double (imadjust (in_i16, args{:})), imadjust (in_i16_d, args{:}), lim_i16) ## single adjustment for all planes (mixed with some complement) args = {reshape([.2 .3 .25 .1 0 .1; .9 .7 .85 .9 1 .8], [2 2 3]), reshape([.1 .2 .05 .9 1 .3; .9 .85 .7 .1 0 .9], [2 2 3]), reshape([1 .75 1 1.2 1.5 2], [1 2 3])}; assert (im2double (imadjust (in_u8, args{:})), imadjust (in_u8_d, args{:}), lim_u8) assert (im2double (imadjust (in_u16, args{:})), imadjust (in_u16_d, args{:}), lim_u16) assert (im2double (imadjust (in_i16, args{:})), imadjust (in_i16_d, args{:}), lim_i16) ## test use of [] as limit and negative args = {[], [.95; 0], 1.25}; assert (im2double (imadjust (in_u8, args{:})), imadjust (in_u8_d, args{:}), lim_u8) assert (im2double (imadjust (in_u16, args{:})), imadjust (in_u16_d, args{:}), lim_u16) assert (im2double (imadjust (in_i16, args{:})), imadjust (in_i16_d, args{:}), lim_i16) 36 tests, 36 passed, 0 known failure, 0 skipped [inst/imcomplement.m] >>>>> /<>/inst/imcomplement.m ***** assert (imcomplement (10), -9); ***** assert (imcomplement (single (10)), single (-9)); ***** assert (imcomplement (0.2), 0.8); ***** assert (imcomplement (uint8 (0)), uint8 (255)); ***** assert (imcomplement (uint8 (1)), uint8 (254)); ***** assert (imcomplement (uint16 (0)), uint16 (65535)); ***** assert (imcomplement (uint16 (1)), uint16 (65534)); ***** assert (imcomplement (int8 (-128)), int8 ( 127)); ***** assert (imcomplement (int8 ( 127)), int8 (-128)); ***** assert (imcomplement (int16 (-1)), int16 ( 0)); ***** assert (imcomplement (int16 ( 0)), int16 (-1)); ***** assert (imcomplement (int16 ( 1)), int16 (-2)); ***** assert (imcomplement ([true false true]), [false true false]) ***** error imcomplement ("not an image") 14 tests, 14 passed, 0 known failure, 0 skipped [inst/entropy.m] >>>>> /<>/inst/entropy.m ***** assert (entropy ([0 1]), 1) ***** assert (entropy (uint8 ([0 1])), 1) ***** assert (entropy ([0 0]), 0) ***** assert (entropy ([0]), 0) ***** assert (entropy ([1]), 0) ***** assert (entropy ([0 .5; 2 0]), 1.5) ***** assert (entropy (repmat ([0 .5; 2 0], 1, 1, 3)), entropy ([0 .5; 2 0])) ***** test A = zeros (3,3); B = ones (3,3); C = [1 1 1; 2 2 2; 3 3 3]; D = C'; E = ones (3,3); E(2,2)=2; F = 3 .* ones (3,3); F(2,2)=1; G = [-1 2 7; -5 2 8; -7 pi 9]; H = [5 2 8; 1 -3 1; 5 1 0]; pG = [1 2] ./ 3; G_out = -sum (pG.*log2 (pG)); pH = [2 7] ./ 9; H_out = -sum (pH.*log2 (pH)); assert (entropy (A), 0, eps); assert (entropy (B), 0, eps); assert (entropy (C), 0, eps); assert (entropy (D), 0, eps); assert (entropy (E), 0, eps); assert (entropy (F), 0, eps); assert (entropy (G), G_out, eps); assert (entropy (H), H_out, eps); ***** test A = uint8 (zeros (3,3)); B = uint8 (ones (3,3)); C = uint8 ([1 1 1; 2 2 2; 3 3 3]); D = C'; E = uint8 (ones (3,3)); E(2,2)=2; F = 3 .* uint8 (ones (3,3)); F(2,2)=1; G = uint8 ([0 2 7; 0 2 8; 0 3 9]); H = uint8 ([5 2 8; 1 0 1; 5 1 0]); pC = [1 1 1] ./ 3; C_out = -sum (pC.*log2 (pC)); D_out = C_out; pE = [8 1] ./ 9; E_out = -sum (pE.*log2 (pE)); F_out = E_out; pG = [3 2 1 1 1 1] ./ 9; G_out = -sum (pG.*log2 (pG)); pH = [2 3 1 2 1] ./ 9; H_out = -sum (pH.*log2 (pH)); assert (entropy (A), 0); assert (entropy (B), 0); assert (entropy (C), C_out, eps); assert (entropy (D), D_out, eps); assert (entropy (E), E_out, eps); assert (entropy (F), F_out, eps); assert (entropy (G), G_out, eps); assert (entropy (H), H_out, eps); ***** test L1 = false (3,3); L1(2,2)=true; L2 = true (3,3); L2(2,2)=false; L3 = logical ([0 1 1; 0 1 1; 0 0 1]); p12 = [1 8] ./ 9; out12 = -sum (p12.*log2 (p12)); p3 = [5 4] ./9; out3 = -sum (p3.*log2 (p3)); assert (entropy (L1), out12, eps); assert (entropy (L2), out12, eps); assert (entropy (L3), out3, eps); 10 tests, 10 passed, 0 known failure, 0 skipped [inst/im2col.m] >>>>> /<>/inst/im2col.m ***** demo ## Divide A using distinct blocks and then reverse the operation A = [ 1:10 11:20 21:30 31:40]; B = im2col (A, [2 5], "distinct") C = col2im (B, [2 5], [4 10], "distinct") ***** test a = rand (10); assert (im2col (a, [5 5]), im2col (a, [5 5], "sliding")) ***** test a = rand (10); assert (im2col (a, [5 5]), im2col (a, "indexed", [5 5])) ***** error im2col (rand (20), [2 5], 10) ***** error im2col (rand (20), [2 5], "wrong_block_type") ***** error im2col (rand (10), [5 5], "sliding", 5) ***** error im2col (rand (10), "indexed", [5 5], "sliding", 5) ***** shared B, A, Bs, As, Ap, Bp0, Bp1, Bp0_3s v = [1:10]'; r = reshape (v, 2, 5); B = [v v+20 v+40 v+10 v+30 v+50]; A = [r r+10; r+20 r+30; r+40 r+50]; As = [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15]; b1 = As(1:2, 1:4)(:); b2 = As(2:3, 1:4)(:); b3 = As(1:2, 2:5)(:); b4 = As(2:3, 2:5)(:); Bs = [b1, b2, b3, b4]; Ap = A(:, 1:9); Bp1 = Bp0 = B; Bp0(9:10, 4:6) = 0; Bp1(9:10, 4:6) = 1; Bp0_3s = Bp0; Bp0_3s(11:30, :) = 0; ***** assert (im2col (A, [2 5], "distinct"), B); ***** assert (im2col (Ap, [2 5], "distinct"), Bp0); ***** assert (im2col (Ap, [2 5 3], "distinct"), Bp0_3s); ***** assert (im2col (Ap, "indexed", [2 5], "distinct"), Bp1); ***** assert (im2col (uint8 (Ap), "indexed", [2 5], "distinct"), uint8 (Bp0)); ***** assert (im2col (uint16 (Ap), "indexed", [2 5], "distinct"), uint16 (Bp0)); ***** assert (im2col (int16 (Ap), "indexed", [2 5], "distinct"), int16 (Bp1)); ***** assert (im2col (uint32 (Ap), "indexed", [2 5], "distinct"), uint32 (Bp1)); ***** assert (im2col (uint8 (A), [2 5], "distinct"), uint8 (B)); ***** assert (im2col (single (A), [2 5], "distinct"), single (B)); ***** assert (im2col (logical (A), [2 5], "distinct"), logical (B)); ***** assert (im2col (uint8 (As), [2 4], "sliding"), uint8 (Bs)); ***** assert (im2col (single (As), [2 4], "sliding"), single (Bs)); ***** assert (im2col (logical (As), [2 4], "sliding"), logical (Bs)); ***** assert (im2col (As, [2 4], "sliding"), Bs); ***** assert (im2col (As, [3 5], "sliding"), As(:)); ***** test A = randi (9, 10, 9, 5); ***** assert (convn (A, ones (3, 3, 3), "valid"), reshape (sum (im2col (A, [3 3 3])), [8 7 3])); A = randi (9, 10, 9, 5, 7); ***** assert (convn (A, ones (3, 3, 3), "valid"), reshape (sum (im2col (A, [3 3 3])), [8 7 3 7])); ***** assert (convn (A, ones (3, 4, 3), "valid"), reshape (sum (im2col (A, [3 4 3])), [8 6 3 7])); ***** assert (convn (A, ones (3, 5, 3, 2), "valid"), reshape (sum (im2col (A, [3 5 3 2])), [8 5 3 6])); ***** assert (im2col (1:8, [2 1]), zeros (2, 0)) 28 tests, 28 passed, 0 known failure, 0 skipped [inst/getrangefromclass.m] >>>>> /<>/inst/getrangefromclass.m ***** shared img img = ones (5); ***** assert (getrangefromclass (double (img)), [0 1]); # double returns [0 1] ***** assert (getrangefromclass (single (img)), [0 1]); # single returns [0 1] ***** assert (getrangefromclass (logical (img)), [0 1]); # logical returns [0 1] ***** assert (getrangefromclass (int8 (img)), [-128 127]); # checks int ***** assert (getrangefromclass (uint8 (img)), [0 255]); # checks unit ***** fail ("getrangefromclass ('string')"); # fails with strings ***** fail ("getrangefromclass ({3, 4})"); # fails with cells 7 tests, 7 passed, 0 known failure, 0 skipped [inst/imdivide.m] >>>>> /<>/inst/imdivide.m ***** assert (imdivide (uint8 ([23 250]), uint8 ([ 2 50])), uint8 ([ 12 5])); # default to first class ***** assert (imdivide (uint8 ([56 255]), uint8 ([ 0 0])), uint8 ([255 255])); # dividing by zero works (tested in matlab) ***** assert (imdivide (uint8 ([23 250]), 2), uint8 ([ 12 125])); # works subtracting a scalar ***** assert (imdivide (uint8 ([23 250]), uint8 ([ 2 50]), "uint16"), uint16 ([ 12 5])); # defining output class works (not in matlab) ***** assert (imdivide (logical ([1 1 0 0]), logical ([1 0 1 0])), double ([1 Inf 0 NaN])); # dividing logical matrix (tested in matlab) ***** fail ("imdivide (uint8 ([23 250]), uint16 ([23 250]))"); # input needs to have same class 6 tests, 6 passed, 0 known failure, 0 skipped [inst/padarray.m] >>>>> /<>/inst/padarray.m ***** demo padarray([1,2,3;4,5,6],[2,1]) % pads [1,2,3;4,5,6] with a whole border of 2 rows and 1 columns of 0 ***** demo padarray([1,2,3;4,5,6],[2,1],5) % pads [1,2,3;4,5,6] with a whole border of 2 rows and 1 columns of 5 ***** demo padarray([1,2,3;4,5,6],[2,1],0,'pre') % pads [1,2,3;4,5,6] with a left and top border of 2 rows and 1 columns of 0 ***** demo padarray([1,2,3;4,5,6],[2,1],'circular') % pads [1,2,3;4,5,6] with a whole 'circular' border of 2 rows and 1 columns % border 'repeats' data as if we tiled blocks of data ***** demo padarray([1,2,3;4,5,6],[2,1],'replicate') % pads [1,2,3;4,5,6] with a whole border of 2 rows and 1 columns which % 'replicates' edge data ***** demo padarray([1,2,3;4,5,6],[2,1],'symmetric') % pads [1,2,3;4,5,6] with a whole border of 2 rows and 1 columns which % is symmetric to the data on the edge ***** assert (padarray ([1;2], [1]), [0;1;2;0]); ***** assert (padarray ([3 4], [0 2]), [0 0 3 4 0 0]); ***** assert (padarray ([1 2 3; 4 5 6], [1 2]), [zeros(1, 7); 0 0 1 2 3 0 0; 0 0 4 5 6 0 0; zeros(1, 7)]); ***** test assert (padarray ([1 2 3; 4 5 6], [3 2 1]), cat(3, zeros(8, 7), [ [ zeros(3, 7) ] [zeros(2, 2) [1 2 3; 4 5 6] zeros(2, 2) ] [ zeros(3,7)] ], zeros (8, 7))); ***** assert (padarray ([1 2], [4 5]), padarray ([1 2], [4 5], 0)); ***** assert (padarray ([1 2], [4 5]), padarray ([1 2], [4 5], "both")); ***** assert (padarray ([1;2], [1], i), [i; 1; 2; i]); ***** assert (padarray ([1;2], [1], i, "pre"), [i; 1; 2]); ***** assert (padarray ([1;2], [1], i, "post"), [1; 2; i]); ***** assert (padarray ([1;2], [1], i, "both"), [i; 1; 2; i]); ***** assert (padarray ([1 2], [0 1], i, "pre"), [i 1 2]); ***** assert (padarray ([1 2], [0 1], i, "post"), [1 2 i]); ***** assert (padarray ([1 2], [0 1], i, "both"), [i 1 2 i]); ***** assert (padarray ([1 2], [0;1], i, "both"), [i 1 2 i]); ***** test A = [1 2 3; 4 5 6]; B = repmat (A, 7, 9); assert (padarray (A, [1 2], "circular", "pre"), B(2:4,2:6)); assert (padarray (A, [1 2], "circular", "post"), B(3:5,4:8)); assert (padarray (A, [1 2], "circular", "both"), B(2:5,2:8)); ## This tests when padding is bigger than data assert (padarray (A, [5 10], "circular", "both"), B(2:13,3:25)); ***** test A = int8 ([1 2 3; 4 5 6]); B = repmat (A, 7, 9); assert (padarray (A, [1 2], "circular", "pre"), B(2:4,2:6)); assert (padarray (A, [1 2], "circular", "post"), B(3:5,4:8)); assert (padarray (A, [1 2], "circular", "both"), B(2:5,2:8)); ## This tests when padding is bigger than data assert (padarray (A, [5 10], "circular", "both"), B(2:13,3:25)); ***** test A = [1 2; 3 4]; B = kron (A, ones (10, 5)); assert (padarray (A, [9 4], "replicate", "pre"), B(1:11,1:6)); assert (padarray (A, [9 4], "replicate", "post"), B(10:20,5:10)); assert (padarray (A, [9 4], "replicate", "both"), B); ## same with uint class assert (padarray (uint8 (A), [9 4], "replicate", "pre"), uint8 (B(1:11,1:6))); assert (padarray (uint8 (A), [9 4], "replicate", "post"), uint8 (B(10:20,5:10))); assert (padarray (uint8 (A), [9 4], "replicate", "both"), uint8 (B)); ***** test A = [1:3 4:6]; HA = [3:-1:1 6:-1:4]; VA = [4:6 1:3]; VHA = [6:-1:4 3:-1:1]; B = [VHA VA VHA HA A HA VHA VA VHA]; assert (padarray (A, [1 2], "symmetric", "pre"), B(2:4,2:6)); assert (padarray (A, [1 2], "symmetric", "post"), B(3:5,4:8)); assert (padarray (A, [1 2], "symmetric", "both"), B(2:5,2:8)); ## same with int class assert (padarray (int16 (A), [1 2], "symmetric", "pre"), int16 (B(2:4,2:6))); assert (padarray (int16 (A), [1 2], "symmetric", "post"), int16 (B(3:5,4:8))); assert (padarray (int16 (A), [1 2], "symmetric", "both"), int16 (B(2:5,2:8))); ***** assert (padarray (int8 ([1; 2]), [1]), int8 ([0; 1; 2; 0])); ***** assert (padarray (uint8 ([3 4]), [0 2]), uint8 ([0 0 3 4 0 0])); ***** assert (padarray (int16 ([1; 2]), [1], 4), int16 ([4; 1; 2; 4])); ***** assert (padarray (uint16 ([1; 2]), [1], 0), uint16 ([0; 1; 2; 0])); ***** assert (padarray (uint32 ([1; 2]), [1], 6, "post"), uint32 ([1; 2; 6])); ***** assert (padarray (int32 ([1; 2]), [1], int32 (4), "pre"), int32 ([4; 1; 2])); ***** test in = [ 7 5 1 3 5 3 3 4 7 5 2 3 6 1 3 8]; padded = [ 3 5 5 3 3 4 4 3 3 5 5 3 3 4 4 3 3 5 5 3 3 4 4 3 5 7 7 5 1 3 3 1 5 7 7 5 1 3 3 1 5 7 7 5 1 3 3 1 5 7 7 5 1 3 3 1 5 7 7 5 1 3 3 1 5 7 7 5 1 3 3 1 3 5 5 3 3 4 4 3 3 5 5 3 3 4 4 3 3 5 5 3 3 4 4 3 5 7 7 5 2 3 3 2 5 7 7 5 2 3 3 2 5 7 7 5 2 3 3 2 1 6 6 1 3 8 8 3 1 6 6 1 3 8 8 3 1 6 6 1 3 8 8 3 1 6 6 1 3 8 8 3 1 6 6 1 3 8 8 3 1 6 6 1 3 8 8 3 5 7 7 5 2 3 3 2 5 7 7 5 2 3 3 2 5 7 7 5 2 3 3 2 3 5 5 3 3 4 4 3 3 5 5 3 3 4 4 3 3 5 5 3 3 4 4 3 5 7 7 5 1 3 3 1 5 7 7 5 1 3 3 1 5 7 7 5 1 3 3 1 5 7 7 5 1 3 3 1 5 7 7 5 1 3 3 1 5 7 7 5 1 3 3 1 3 5 5 3 3 4 4 3 3 5 5 3 3 4 4 3 3 5 5 3 3 4 4 3 5 7 7 5 2 3 3 2 5 7 7 5 2 3 3 2 5 7 7 5 2 3 3 2 1 6 6 1 3 8 8 3 1 6 6 1 3 8 8 3 1 6 6 1 3 8 8 3 1 6 6 1 3 8 8 3 1 6 6 1 3 8 8 3 1 6 6 1 3 8 8 3 5 7 7 5 2 3 3 2 5 7 7 5 2 3 3 2 5 7 7 5 2 3 3 2 3 5 5 3 3 4 4 3 3 5 5 3 3 4 4 3 3 5 5 3 3 4 4 3 5 7 7 5 1 3 3 1 5 7 7 5 1 3 3 1 5 7 7 5 1 3 3 1 5 7 7 5 1 3 3 1 5 7 7 5 1 3 3 1 5 7 7 5 1 3 3 1 3 5 5 3 3 4 4 3 3 5 5 3 3 4 4 3 3 5 5 3 3 4 4 3 5 7 7 5 2 3 3 2 5 7 7 5 2 3 3 2 5 7 7 5 2 3 3 2 1 6 6 1 3 8 8 3 1 6 6 1 3 8 8 3 1 6 6 1 3 8 8 3 1 6 6 1 3 8 8 3 1 6 6 1 3 8 8 3 1 6 6 1 3 8 8 3 5 7 7 5 2 3 3 2 5 7 7 5 2 3 3 2 5 7 7 5 2 3 3 2]; for ite = 1:10 assert (padarray (in, [ite ite], "symmetric"), padded((11-ite):(14+ite),(11-ite):(14+ite))); assert (padarray (in, [ite ite], "symmetric", "pre"), padded((11-ite):14,(11-ite):14)); assert (padarray (in, [ite ite], "symmetric", "post"), padded(11:(14+ite),11:(14+ite))); endfor ***** test in = [ 7 5 4 9 6 4 5 1 5 3 3 3 2 6 7 3]; padded = [ 3 3 3 3 5 3 3 3 3 3 5 3 3 3 3 3 5 3 3 3 3 3 5 3 7 3 7 6 2 6 7 3 7 6 2 6 7 3 7 6 2 6 7 3 7 6 2 6 3 3 3 3 5 3 3 3 3 3 5 3 3 3 3 3 5 3 3 3 3 3 5 3 5 1 5 4 6 4 5 1 5 4 6 4 5 1 5 4 6 4 5 1 5 4 6 4 4 9 4 5 7 5 4 9 4 5 7 5 4 9 4 5 7 5 4 9 4 5 7 5 5 1 5 4 6 4 5 1 5 4 6 4 5 1 5 4 6 4 5 1 5 4 6 4 3 3 3 3 5 3 3 3 3 3 5 3 3 3 3 3 5 3 3 3 3 3 5 3 7 3 7 6 2 6 7 3 7 6 2 6 7 3 7 6 2 6 7 3 7 6 2 6 3 3 3 3 5 3 3 3 3 3 5 3 3 3 3 3 5 3 3 3 3 3 5 3 5 1 5 4 6 4 5 1 5 4 6 4 5 1 5 4 6 4 5 1 5 4 6 4 4 9 4 5 7 5 4 9 4 5 7 5 4 9 4 5 7 5 4 9 4 5 7 5 5 1 5 4 6 4 5 1 5 4 6 4 5 1 5 4 6 4 5 1 5 4 6 4 3 3 3 3 5 3 3 3 3 3 5 3 3 3 3 3 5 3 3 3 3 3 5 3 7 3 7 6 2 6 7 3 7 6 2 6 7 3 7 6 2 6 7 3 7 6 2 6 3 3 3 3 5 3 3 3 3 3 5 3 3 3 3 3 5 3 3 3 3 3 5 3 5 1 5 4 6 4 5 1 5 4 6 4 5 1 5 4 6 4 5 1 5 4 6 4 4 9 4 5 7 5 4 9 4 5 7 5 4 9 4 5 7 5 4 9 4 5 7 5 5 1 5 4 6 4 5 1 5 4 6 4 5 1 5 4 6 4 5 1 5 4 6 4 3 3 3 3 5 3 3 3 3 3 5 3 3 3 3 3 5 3 3 3 3 3 5 3 7 3 7 6 2 6 7 3 7 6 2 6 7 3 7 6 2 6 7 3 7 6 2 6 3 3 3 3 5 3 3 3 3 3 5 3 3 3 3 3 5 3 3 3 3 3 5 3 5 1 5 4 6 4 5 1 5 4 6 4 5 1 5 4 6 4 5 1 5 4 6 4 4 9 4 5 7 5 4 9 4 5 7 5 4 9 4 5 7 5 4 9 4 5 7 5 5 1 5 4 6 4 5 1 5 4 6 4 5 1 5 4 6 4 5 1 5 4 6 4]; for ite = 1:10 assert (padarray (in, [ite ite], "reflect"), padded((11-ite):(14+ite),(11-ite):(14+ite))); assert (padarray (in, [ite ite], "reflect", "pre"), padded((11-ite):14,(11-ite):14)); assert (padarray (in, [ite ite], "reflect", "post"), padded(11:(14+ite),11:(14+ite))); endfor 26 tests, 26 passed, 0 known failure, 0 skipped [inst/imcast.m] >>>>> /<>/inst/imcast.m ***** test im = randi ([0 255], 40, "uint8"); assert (imcast (im, "uint8"), im2uint8 (im)) assert (imcast (im, "uint16"), im2uint16 (im)) assert (imcast (im, "single"), im2single (im)) assert (imcast (im, "uint8", "indexed"), im2uint8 (im, "indexed")) assert (imcast (im, "uint16", "indexed"), im2uint16 (im, "indexed")) assert (imcast (im, "single", "indexed"), im2single (im, "indexed")) ***** test im = randi ([1 256], 40, "double"); assert (imcast (im, "uint8"), im2uint8 (im)) assert (imcast (im, "uint8", "indexed"), im2uint8 (im, "indexed")) assert (imcast (im, "single", "indexed"), im2single (im, "indexed")) ***** test im = randi ([0 65535], 40, "uint16"); assert (imcast (im, "uint8"), im2uint8 (im)) assert (imcast (im, "single"), im2single (im)) assert (imcast (im, "single", "indexed"), im2single (im, "indexed")) ***** test im = randi ([1 255], 40, "double"); assert (imcast (im, "uint8", "indexed"), im2uint8 (im, "indexed")) assert (imcast (im, "single", "indexed"), im2single (im, "indexed")) ***** test im = rand (40); assert (imcast (im, "uint8"), im2uint8 (im)) ***** error imcast (randi (127, 40, "int8"), "uint8") ***** error imcast (randi (255, 40, "uint8"), "uint32") ***** error imcast (randi (255, 40, "uint8"), "not a class") ***** error imcast (randi ([0 65535], 40, "uint16"), "uint8", "indexed") ***** assert (imcast ([0 1 .2; 2 -0 Inf], "logical"), logical ([0 1 1; 1 0 1])) 10 tests, 10 passed, 0 known failure, 0 skipped [inst/imremap.m] >>>>> /<>/inst/imremap.m ***** demo ## Generate a synthetic image and show it I = tril(ones(100)) + abs(rand(100)); I(I>1) = 1; I(20:30, 20:30) = !I(20:30, 20:30); I(70:80, 70:80) = !I(70:80, 70:80); figure, imshow(I); ## Resize the image to the double size and show it [XI, YI] = meshgrid(linspace(1, 100, 200)); warped = imremap(I, XI, YI); figure, imshow(warped); ***** demo ## Generate a synthetic image and show it I = tril(ones(100)) + abs(rand(100)); I(I>1) = 1; I(20:30, 20:30) = !I(20:30, 20:30); I(70:80, 70:80) = !I(70:80, 70:80); figure, imshow(I); ## Rotate the image around (0, 0) by -0.4 radians and show it [XI, YI] = meshgrid(1:100); R = [cos(-0.4) sin(-0.4); -sin(-0.4) cos(-0.4)]; RXY = [XI(:), YI(:)] * R; XI = reshape(RXY(:,1), [100, 100]); YI = reshape(RXY(:,2), [100, 100]); warped = imremap(I, XI, YI); figure, imshow(warped); ***** test I = repmat([ 1 2 3 4 ], [4, 1]); xi = [-6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8 9 10 11]; exp_rep = [ 1 1 1 1 1 1 1 1 2 3 4 4 4 4 4 4 4 4]; exp_sym = [ 2 3 4 4 3 2 1 1 2 3 4 4 3 2 1 1 2 3]; exp_ref = [ 2 1 2 3 4 3 2 1 2 3 4 3 2 1 2 3 4 3]; exp_cir = [ 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3]; yi = 2.5; # rectilinear grid codepath assert (imremap (I, xi, yi, "bicubic", "replicate"), exp_rep); assert (imremap (I, xi, yi, "bicubic", "symmetric"), exp_sym); assert (imremap (I, xi, yi, "bicubic", "reflect"), exp_ref); assert (imremap (I, xi, yi, "bicubic", "circular"), exp_cir); # meshgrid codepath XI = [xi/2; xi; xi/2]; % cannot be reduced to vector, we will assert only middle row YI = repmat ([1.5; yi; 3.5], [1, length(xi)]); assert (imremap (I, XI, YI, "bicubic", "replicate")(2,:), exp_rep); assert (imremap (I, XI, YI, "bicubic", "symmetric")(2,:), exp_sym); assert (imremap (I, XI, YI, "bicubic", "reflect")(2,:), exp_ref); assert (imremap (I, XI, YI, "bicubic", "circular")(2,:), exp_cir); 1 test, 1 passed, 0 known failure, 0 skipped [inst/immse.m] >>>>> /<>/inst/immse.m ***** error immse (rand (10), rand (12)) ***** error immse (uint8 ([0 1 2 3]), uint16 ([0 1 2 3])) ***** error immse (double ([0 1 2 3]), single ([0 1 2 3])) ***** assert (immse (magic (5), magic (5)), 0) ***** assert (immse (single (magic (5)), single (magic (5))), single (0)) ***** assert (immse (uint8 (magic (5)), uint8 (magic (5))), 0) 6 tests, 6 passed, 0 known failure, 0 skipped [inst/otsuthresh.m] >>>>> /<>/inst/otsuthresh.m ***** test histo = zeros (1, 256); histo([ 29 33 37 41 46 50 54 58 62 66 70 74 78 82 ... 86 90 94 98 102 106 110 114 118 122 126 131 135 139 ... 143 147 151 155 159 163 167 171 175 179 183 187 191 195 ... 199 203 207 211 216 220 224 228 232 236 240 244 248 252]) = ... [2 27 51 144 132 108 43 29 22 21 22 20 10 16 17 12 13 14 12 13 ... 15 25 19 20 23 37 23 65 92 84 87 54 50 54 33 73 76 64 57 58 47 ... 48 30 27 22 20 20 11 12 12 11 7 17 31 37 31]; assert (otsuthresh (histo), 114.5/255) ***** test I = max (phantom (), 0); H = imhist (I); assert (otsuthresh (H), 178/255) assert (otsuthresh (H'), 178/255) H = imhist (I, 10); assert (otsuthresh (H), 170/255) ***** assert (otsuthresh (100), 0) ***** assert (otsuthresh (zeros (256, 1)), 0) ***** assert (otsuthresh (zeros (5, 1)), 0) ***** assert (otsuthresh (uint8 ([10 20 30])), 0.5) ***** assert (otsuthresh (int32 ([100 200 300])), 0.5) ***** assert (otsuthresh (int32 ([100 200])), 0) ***** assert (otsuthresh (single ([10 20 30 40])), 1/3); ***** assert (otsuthresh (uint16 ([10 20 30 40 50 60 70 80 90 100])), 5/9) ***** assert (otsuthresh (int16 ([10 20 30 40 50 60 70 80 90 100])), 5/9) ***** assert (otsuthresh (int16 (1:255)), 156/254) ***** assert (otsuthresh (int16 (1:1023)), 631/1022) ***** assert (otsuthresh (int8 (1:1023)), 541/1022) ***** test warning ("off", "Octave:data-file-in-path", "local"); S = load ("penny.mat"); h = imhist (uint8 (S.P)); assert (otsuthresh (h), 94/255); ***** test I = max (phantom (), 0); h = imhist (I, 5); assert (otsuthresh (h), 0.625); ***** error id=Octave:invalid-fun-call otsuthresh () ***** error id=Octave:invalid-fun-call otsuthresh (ones (10), 5) ***** error otsuthresh ([]) ***** error otsuthresh ([Inf 10]) ***** error otsuthresh ([10 NA]) ***** error otsuthresh ([10 NaN]) ***** error otsuthresh (zeros (5)) ***** error otsuthresh ([10 -10]) ***** error otsuthresh ("foo") ***** demo I = max (phantom (), 0); figure; imshow (I); title ("Original image"); h = imhist (I); t = otsuthresh (h); J = im2bw (I); figure; imshow (J); title_line = sprintf ("Black and white image after thresholding, t=%g", t*255); title (title_line); ***** demo warning ("off", "Octave:data-file-in-path", "local"); S = load ("penny.mat"); I = uint8 (S.P); figure; imshow (I); title ("Original penny image"); h = imhist (I); t = otsuthresh (h); J = im2bw (I); figure; imshow (J); title_line = sprintf ("Black and white penny image after thresholding, t=%g", t*255); title (title_line); I = 255 - I; figure; imshow(I); title ("Negative penny image"); h = imhist (I); t = otsuthresh (h); J = im2bw (I); figure; imshow (J); title_line = sprintf ("Black and white negative penny image after thresholding, t=%g", t*255); title (title_line); 25 tests, 25 passed, 0 known failure, 0 skipped [inst/im2bw.m] >>>>> /<>/inst/im2bw.m ***** assert(im2bw ([0 0.4 0.5 0.6 1], 0.5), logical([0 0 0 1 1])); # basic usage ***** assert(im2bw (uint8 ([0 100 255]), 0.5), logical([0 0 1])); # with a uint8 input ***** warning bw = im2bw (logical ([0 1 0])); ***** warning bw = im2bw (logical ([0 1 0]), 1); ***** test warning ("off", "all", "local"); assert (im2bw (logical ([0 1 0])), logical ([0 1 0])) assert (im2bw (logical ([0 1 0]), 0), logical ([0 1 0])) assert (im2bw (logical ([0 1 0]), 1), logical ([0 1 0])) ***** assert (nnz (im2bw (uint8 ([0:255]), 0.9)), 26) ***** test img = uint8 ([0:255]); s = 0; for i=0:.1:1 s += nnz (im2bw (img, i)); endfor assert (s, 1405) ***** assert (nnz (im2bw (int16 ([-128:127]), 0.499)), 194) ***** assert (nnz (im2bw (int16 ([-128:127]), 0.500)), 128) ***** assert (nnz (im2bw (int16 ([-128:127]), 0.501)), 62) ***** test img = uint16 ([0:intmax("uint16")]); s = 0; for i=0:.1:1 s += nnz (im2bw (img, i)); endfor assert (s, 360445) ***** test img = int16 ([intmin("int16"):intmax("int16")]); s = 0; for i=0:.1:1 s += nnz (im2bw (img, i)); endfor assert (s, 360445) ***** test im = [((randn(10)/10)+.3) ((randn(10)/10)+.7)]; assert (im2bw (im, "Otsu"), im2bw (im, graythresh (im, "Otsu"))) assert (im2bw (im, "moments"), im2bw (im, graythresh (im, "moments"))) ***** test im = [((randn(10)/10)+.3) ((randn(10)/10)+.7)]; im = reshape (im, [10 10 1 2]); assert (im2bw (im, "Otsu"), im2bw (im, graythresh (im, "Otsu"))) assert (im2bw (im, "moments"), im2bw (im, graythresh (im, "moments"))) 14 tests, 14 passed, 0 known failure, 0 skipped [inst/@imref3d/contains.m] >>>>> /<>/inst/@imref3d/contains.m ***** error id=Octave:invalid-fun-call contains (imref3d) ***** error id=Octave:invalid-fun-call contains (imref3d, 1) ***** error id=Octave:invalid-fun-call contains (imref3d, 1, 2) ***** error id=Octave:invalid-fun-call contains (imref3d, 1, 2, 3, 4) ***** error id=Octave:invalid-input-arg contains (imref3d, [1, 2], 3, 4) ***** error id=Octave:invalid-input-arg contains (imref3d, 1, [2, 3], 4) ***** error id=Octave:invalid-input-arg contains (imref3d, 1, 2, [3, 4]) ***** error id=Octave:expected-real contains (imref3d, 1j, 2, 3) ***** error id=Octave:expected-real contains (imref3d, 1, 2j, 3) ***** error id=Octave:expected-real contains (imref3d, 1, 2, 3j) ***** test r = imref3d ([128, 128, 27]); assert (contains (r, [5, 6, 6, 8], [5, 10, 10, 257], [1, 27.5, 28, 1]), logical ([1, 1, 0, 0])) 11 tests, 11 passed, 0 known failure, 0 skipped [inst/@imref3d/imref3d.m] >>>>> /<>/inst/@imref3d/imref3d.m ***** error id=Octave:invalid-fun-call imref3d (1, 2, 3, 4, 5) ***** error id=Octave:incorrect-size imref3d (42) ***** error id=Octave:incorrect-size imref3d ([42]) ***** error id=Octave:incorrect-size imref3d ([4, 2]) ***** error id=Octave:incorrect-size imref3d ([4, 2, 3, 3]) ***** error id=Octave:expected-integer imref3d ([4.2, 42]) ***** error id=Octave:expected-positive imref3d ([0, 0]) ***** error id=Octave:expected-positive imref3d ([-4, 2]) ***** error id=Octave:expected-positive imref3d ([4, 2, 3], 0, 1, 2) ***** error id=Octave:expected-positive imref3d ([4, 2, 3], 1, 0, 2) ***** error id=Octave:expected-positive imref3d ([4, 2, 3], 1, 2, 0) ***** error id=Octave:expected-real imref3d ([4, 2, 3], j, 1, 2) ***** error id=Octave:expected-real imref3d ([4, 2, 3], 1, j, 2) ***** error id=Octave:expected-real imref3d ([4, 2, 3], 1, 2, j) ***** error id=Octave:expected-real imref3d ([4, 2, 3], [j, 2], [3, 4], [5, 6]) ***** error id=Octave:expected-real imref3d ([4, 2, 3], [1, 2], [j, 4], [5, 6]) ***** error id=Octave:expected-real imref3d ([4, 2, 3], [1, 2], [3, 4], [5, j]) ***** error id=Octave:expected-vector imref3d ([4, 2, 3], [], [], []) ***** error id=Octave:expected-vector imref3d ([4, 2, 3], [], [1], [2]) ***** error id=Octave:expected-scalar imref3d ([4, 2, 3], [1], [], []) ***** error id=Octave:incorrect-size imref3d ([4, 2, 3], [1, 2], [3, 4], [0]) ***** error id=Octave:incorrect-size imref3d ([4, 2, 3], [1, 2], [3, 4, 5], [6, 7]) ***** error id=Octave:incorrect-size imref3d ([4, 2, 3], [1, 2], [3, 4], [5, 6, 7]) ***** error id=Octave:incorrect-size imref3d ([4, 2, 3], [1; 2], [3, 4], [5, 6]) ***** error id=Octave:incorrect-size imref3d ([4, 2, 3], [1, 2], [3; 4], [5, 6]) ***** error id=Octave:incorrect-size imref3d ([4, 2, 3], [1, 2], [3, 4], [5; 6]) ***** error id=Octave:invalid-indexing imref3d().InvalidProperty ***** error id=Octave:expected-increasing imref3d ([100, 200, 3], [1.5 0.5], [2.5, 3.5], [0.5, 1.5]) ***** error id=Octave:expected-increasing imref3d ([100, 200, 3], [1.5 2.5], [2.5, 1.5], [0.5, 1.5]) ***** error id=Octave:expected-increasing imref3d ([100, 200, 3], [1.5 2.5], [2.5, 3.5], [1.5, 0.5]) ***** assert (imref3d ([4, 2, 3]).ImageSize, [4, 2, 3]) ***** test r = imref3d; assert (r.XWorldLimits, [0.5, 2.5]) assert (r.YWorldLimits, [0.5, 2.5]) assert (r.ZWorldLimits, [0.5, 2.5]) assert (r.ImageSize, [2, 2, 2]) assert (r.PixelExtentInWorldX, 1) assert (r.PixelExtentInWorldY, 1) assert (r.PixelExtentInWorldZ, 1) assert (r.ImageExtentInWorldX, 2) assert (r.ImageExtentInWorldY, 2) assert (r.ImageExtentInWorldZ, 2) assert (r.XIntrinsicLimits, [0.5, 2.5]) assert (r.YIntrinsicLimits, [0.5, 2.5]) assert (r.ZIntrinsicLimits, [0.5, 2.5]) ***** test r = imref3d ([128, 128, 27]); assert (r.XWorldLimits, [0.5, 128.5]) assert (r.YWorldLimits, [0.5, 128.5]) assert (r.ZWorldLimits, [0.5, 27.5]) assert (r.ImageSize, [128, 128, 27]) assert (r.PixelExtentInWorldX, 1) assert (r.PixelExtentInWorldY, 1) assert (r.PixelExtentInWorldZ, 1) assert (r.ImageExtentInWorldX, 128) assert (r.ImageExtentInWorldY, 128) assert (r.ImageExtentInWorldZ, 27) assert (r.XIntrinsicLimits, [0.5, 128.5]) assert (r.YIntrinsicLimits, [0.5, 128.5]) assert (r.ZIntrinsicLimits, [0.5, 27.5]) ***** test r = imref3d ([128, 128, 27], 2, 2, 4); assert (r.XWorldLimits, [1, 257]) assert (r.YWorldLimits, [1, 257]) assert (r.ZWorldLimits, [2, 110]) assert (r.ImageSize, [128, 128, 27]) assert (r.PixelExtentInWorldX, 2) assert (r.PixelExtentInWorldY, 2) assert (r.PixelExtentInWorldZ, 4) assert (r.ImageExtentInWorldX, 256) assert (r.ImageExtentInWorldY, 256) assert (r.ImageExtentInWorldZ, 108) assert (r.XIntrinsicLimits, [0.5, 128.5]) assert (r.YIntrinsicLimits, [0.5, 128.5]) assert (r.ZIntrinsicLimits, [0.5, 27.5]) ***** test r = imref3d; assert (r.XWorldLimits, [0.5, 2.5]) assert (r.YWorldLimits, [0.5, 2.5]) assert (r.ZWorldLimits, [0.5, 2.5]) assert (r.ImageSize, [2, 2, 2]) assert (r.PixelExtentInWorldX, 1) assert (r.PixelExtentInWorldY, 1) assert (r.PixelExtentInWorldZ, 1) assert (r.ImageExtentInWorldX, 2) assert (r.ImageExtentInWorldY, 2) assert (r.ImageExtentInWorldZ, 2) assert (r.XIntrinsicLimits, [0.5, 2.5]) assert (r.YIntrinsicLimits, [0.5, 2.5]) assert (r.ZIntrinsicLimits, [0.5, 2.5]) r.ImageSize = [128, 128, 27]; assert (r.XWorldLimits, [0.5, 2.5]) assert (r.YWorldLimits, [0.5, 2.5]) assert (r.ZWorldLimits, [0.5, 2.5]) assert (r.ImageSize, [128, 128, 27]) assert (r.PixelExtentInWorldX, 0.015625, 1e-6) assert (r.PixelExtentInWorldY, 0.015625, 1e-6) assert (r.PixelExtentInWorldZ, 0.074074, 1e-6) assert (r.ImageExtentInWorldX, 2) assert (r.ImageExtentInWorldY, 2) assert (r.ImageExtentInWorldZ, 2) assert (r.XIntrinsicLimits, [0.5, 128.5]) assert (r.YIntrinsicLimits, [0.5, 128.5]) assert (r.ZIntrinsicLimits, [0.5, 27.5]) ***** test r = imref3d; assert (r.XWorldLimits, [0.5, 2.5]) assert (r.YWorldLimits, [0.5, 2.5]) assert (r.ZWorldLimits, [0.5, 2.5]) assert (r.ImageSize, [2, 2, 2]) assert (r.PixelExtentInWorldX, 1) assert (r.PixelExtentInWorldY, 1) assert (r.PixelExtentInWorldZ, 1) assert (r.ImageExtentInWorldX, 2) assert (r.ImageExtentInWorldY, 2) assert (r.ImageExtentInWorldZ, 2) assert (r.XIntrinsicLimits, [0.5, 2.5]) assert (r.YIntrinsicLimits, [0.5, 2.5]) assert (r.ZIntrinsicLimits, [0.5, 2.5]) r.XWorldLimits = [-60, 13.33]; r.YWorldLimits = [-900.8, -560.26]; r.ZWorldLimits = [-302.48, 1500.333]; assert (r.XWorldLimits, [-60, 13.33]) assert (r.YWorldLimits, [-900.8, -560.26]) assert (r.ZWorldLimits, [-302.48, 1500.333]) assert (r.ImageSize, [2, 2, 2]) assert (r.PixelExtentInWorldX, 36.6650) assert (r.PixelExtentInWorldY, 170.27, 1e-5) assert (r.PixelExtentInWorldZ, 901.4065) assert (r.ImageExtentInWorldX, 73.33, 1e-5) assert (r.ImageExtentInWorldY, 340.54, 1e-5) assert (r.ImageExtentInWorldZ, 1802.813, 1e-5) assert (r.XIntrinsicLimits, [0.5, 2.5]) assert (r.YIntrinsicLimits, [0.5, 2.5]) assert (r.ZIntrinsicLimits, [0.5, 2.5]) ***** test r = imref3d; fail ("r.XWorldLimits = []", "") fail ("r.XWorldLimits = [1]", "") fail ("r.XWorldLimits = [j]", "") fail ("r.XWorldLimits = [1; 2]", "") fail ("r.YWorldLimits = []", "") fail ("r.YWorldLimits = [1]", "") fail ("r.YWorldLimits = [j]", "") fail ("r.YWorldLimits = [1; 2]", "") fail ("r.ZWorldLimits = []", "") fail ("r.ZWorldLimits = [1]", "") fail ("r.ZWorldLimits = [j]", "") fail ("r.ZWorldLimits = [1; 2]", "") 37 tests, 37 passed, 0 known failure, 0 skipped [inst/@imref3d/worldToSubscript.m] >>>>> /<>/inst/@imref3d/worldToSubscript.m ***** error id=Octave:invalid-fun-call worldToSubscript (imref3d) ***** error id=Octave:invalid-fun-call worldToSubscript (imref3d, 1) ***** error id=Octave:invalid-fun-call worldToSubscript (imref3d, 1, 2) ***** error id=Octave:invalid-fun-call worldToSubscript (imref3d, 1, 2, 3, 4) ***** error id=Octave:expected-real worldToSubscript (imref3d, 1j, 2, 3) ***** error id=Octave:expected-real worldToSubscript (imref3d, 1, 2j, 3) ***** error id=Octave:expected-real worldToSubscript (imref3d, 1, 2, 3j) ***** error id=Octave:invalid-input-arg worldToSubscript (imref3d, [1, 2], 3, 4) ***** error id=Octave:invalid-input-arg worldToSubscript (imref3d, 1, [2, 3], 4) ***** error id=Octave:invalid-input-arg worldToSubscript (imref3d, 1, 2, [3, 4]) ***** test r = imref3d ([128, 128, 27], 2, 2, 4); xW = [108, 108, 113.2, 2]; yW = [92, 92, 92, -1]; zW = [52, 55, 52, 0.33]; [rS, cS, pS] = worldToSubscript (r, xW, yW, zW); assert (rS, [46, 46, 46, NaN]) assert (cS, [54, 54, 57, NaN]) assert (pS, [13, 14, 13, NaN]) 11 tests, 11 passed, 0 known failure, 0 skipped [inst/@imref3d/intrinsicToWorld.m] >>>>> /<>/inst/@imref3d/intrinsicToWorld.m ***** error id=Octave:invalid-fun-call intrinsicToWorld (imref3d) ***** error id=Octave:invalid-fun-call intrinsicToWorld (imref3d, 1) ***** error id=Octave:invalid-fun-call intrinsicToWorld (imref3d, 1, 2) ***** error id=Octave:invalid-fun-call intrinsicToWorld (imref3d, 1, 2, 3, 4) ***** error id=Octave:expected-real intrinsicToWorld (imref3d, 1j, 2, 3) ***** error id=Octave:expected-real intrinsicToWorld (imref3d, 1, 2j, 3) ***** error id=Octave:expected-real intrinsicToWorld (imref3d, 1, j, 3j) ***** error id=Octave:invalid-input-arg intrinsicToWorld (imref3d, [1, 2], 3, 4) ***** error id=Octave:invalid-input-arg intrinsicToWorld (imref3d, 1, [2, 3], 4) ***** error id=Octave:invalid-input-arg intrinsicToWorld (imref3d, 1, 2, [3, 4]) ***** test r = imref3d ([128, 128, 27], 2, 2, 4); xI = [54, 71, 57, 70]; yI = [46, 48, 79, 80]; zI = [13, 13, 13, 13]; [xW, yW, zW] = intrinsicToWorld (r, xI, yI, zI); assert (xW, [108, 142, 114, 140]) assert (yW, [92, 96, 158, 160]) assert (zW, [52, 52, 52, 52]) ***** test [xW, yW, zW] = intrinsicToWorld (imref3d, -5.3, -2.8, -15.88); assert (xW, -5.3) assert (yW, -2.8) assert (zW, -15.88, 1e-6) ***** test [xW, yW, zW] = intrinsicToWorld (imref3d, [1, 2; 3, 4], [2, 3; 5, 9], [-5, 8; 19, 42.8]); assert (xW, [1, 2; 3, 4]) assert (yW, [2, 3; 5, 9]) assert (zW, [-5, 8; 19, 42.8]) 13 tests, 13 passed, 0 known failure, 0 skipped [inst/@imref3d/worldToIntrinsic.m] >>>>> /<>/inst/@imref3d/worldToIntrinsic.m ***** error id=Octave:invalid-fun-call worldToIntrinsic (imref3d) ***** error id=Octave:invalid-fun-call worldToIntrinsic (imref3d, 1, 2) ***** error id=Octave:invalid-fun-call worldToIntrinsic (imref3d, 1, 2, 3, 4) ***** error id=Octave:expected-real worldToIntrinsic (imref3d, 1j, 2, 3) ***** error id=Octave:expected-real worldToIntrinsic (imref3d, 1, 2j, 3) ***** error id=Octave:expected-real worldToIntrinsic (imref3d, 1, 2, 3j) ***** error id=Octave:invalid-input-arg worldToIntrinsic (imref3d, [1, 2], 3, 4) ***** error id=Octave:invalid-input-arg worldToIntrinsic (imref3d, 1, [2, 3], 4) ***** error id=Octave:invalid-input-arg worldToIntrinsic (imref3d, 1, 2, [3, 4]) ***** test r = imref3d ([128, 128, 27], 2, 2, 4); xW = [108, 108, 108.2, 2]; yW = [92, 92, 92, -1]; zW = [52, 55, 52, 0.33]; [xI, yI, zI] = worldToIntrinsic (r, xW, yW, zW); assert (xI, [54, 54, 54.1, 1], 1e-6) assert (yI, [46, 46, 46, -0.5], 1e-6) assert (zI, [13, 13.75, 13, 0.0825], 1e-6) 10 tests, 10 passed, 0 known failure, 0 skipped [inst/cp2tform.m] >>>>> /<>/inst/cp2tform.m ***** function [crw, cap] = coords (npt = 1000, scale = 2, dtheta = pi/3, dx = 2, dy = -6, sig2noise = 1e32) theta = (rand(npt, 1)*2-1)*2*pi; R = rand(npt,1); y = R.*sin(theta); x = R.*cos(theta); crw = [y x]; thetap = theta + dtheta; Rap = R * scale; yap = Rap.*sin(thetap); yap = yap + dy; yap = yap + rand (size (yap)) * norm (yap) / sig2noise; xap = Rap.*cos(thetap); xap = xap + dx; xap = xap + rand (size (xap)) * norm (xap) / sig2noise; cap = [yap xap]; ***** endfunction ***** test npt = 100000; [crw, cap] = coords (npt); ttype = 'projective'; T = cp2tform (crw, cap, ttype); crw2 = tforminv (T, cap); finalerr = norm (crw - crw2)/npt; assert (finalerr < 2*eps, "norm = %3.2e ( > 2*eps)", finalerr) ***** test npt = 100000; [crw, cap] = coords (npt); ttype = 'affine'; T = cp2tform (crw, cap, ttype); crw2 = tforminv (T, cap); finalerr = norm (crw - crw2)/npt; assert (finalerr < 2*eps, "norm = %3.2e ( > 2*eps)", finalerr) ***** xtest npt = 100000; [crw, cap] = coords (npt); ttype = 'nonreflective similarity'; T = cp2tform (crw, cap, ttype); crw2 = tforminv (T, cap); finalerr = norm (crw - crw2)/npt; assert (finalerr < 3*eps, "norm = %3.2e ( > 3*eps)", finalerr) ***** test npt = 100000; [crw, cap] = coords (npt); cap(:,2) *= -1; % reflection around y axis ttype = 'similarity'; T = cp2tform (crw, cap, ttype); crw2 = tforminv (T, cap); finalerr = norm (crw - crw2)/npt; assert (finalerr < 3*eps, "norm = %3.2e ( > 3*eps)", finalerr) ***** xtest npt = 100000; [crw, cap] = coords (npt); ttype = 'polynomial'; ord = 2; T = cp2tform (crw, cap, ttype, ord); crw2 = tforminv (T, cap); finalerr = norm (crw - crw2)/npt; assert (finalerr < eps, "norm = %3.2e ( > eps)", finalerr) ***** xtest npt = 100000; [crw, cap] = coords (npt); ttype = 'polynomial'; ord = 3; T = cp2tform (crw, cap, ttype, ord); crw2 = tforminv (T, cap); finalerr = norm (crw - crw2)/npt; assert (finalerr < eps, "norm = %3.2e ( > eps)", finalerr) !!!!! known failure norm = 2.51e-16 ( > eps) ***** xtest npt = 100000; [crw, cap] = coords (npt); ttype = 'polynomial'; ord = 4; T = cp2tform (crw, cap, ttype, ord); crw2 = tforminv (T, cap); finalerr = norm (crw - crw2)/npt; assert (finalerr < 6*eps, "norm = %3.2e ( > 6*eps)", finalerr) 7 tests, 6 passed, 1 known failure, 0 skipped [inst/xyz2rgb.m] >>>>> /<>/inst/xyz2rgb.m ***** assert (xyz2rgb ([0, 0, 0]), [0 0 0], 1e-3) ***** assert (xyz2rgb ([0.4125, 0.2127, 0.0193]), [1 0 0], 1e-3) ***** assert (xyz2rgb ([0.7700, 0.9278, 0.1385]), [1 1 0], 1e-3) ***** assert (xyz2rgb ([0.3576, 0.7152, 0.1192]), [0 1 0], 1e-3) ***** assert (xyz2rgb ([0.5380, 0.7873, 1.0694]), [0 1 1], 1e-3) ***** assert (xyz2rgb ([0.1804, 0.07217, 0.9502]), [0 0 1], 1e-3) ***** assert (xyz2rgb ([0.5929, 0.28484, 0.9696]), [1 0 1], 1e-3) ***** assert (xyz2rgb ([0.9505, 1.0000, 1.0888]), [1 1 1], 1e-3) ***** assert (xyz2rgb ([0.2034, 0.2140, 0.2330]), [0.5 0.5 0.5], 1e-3) ***** assert (xyz2rgb ([0.2155, 0.1111, 0.0101]), [0.75 0 0], 1e-3) ***** assert (xyz2rgb ([0.0883, 0.0455, 0.0041]), [0.5 0 0], 1e-3) ***** assert (xyz2rgb ([0.0210, 0.0108, 0.0010]), [0.25 0 0], 1e-3) ***** assert (xyz2rgb ([0.5276, 0.3812, 0.2482]), [1 0.5 0.5], 1e-3) ***** assert (xyz2rgb ([1.5 1 1]), [1.5712, 0.7109 0.9717], 1e-3) ***** test xyz_map = rand (64, 3); assert (rgb2xyz (xyz2rgb (xyz_map)), xyz_map, 3e-4); ***** test xyz_img = rand (64, 64, 3); assert (rgb2xyz (xyz2rgb (xyz_img)), xyz_img, 3e-4); ***** assert (xyz2rgb (sparse ([0 0 0])), [0 0 0], 1e-3) ***** assert (class (xyz2rgb (single([0.5 0.5 0.5]))), 'single') ***** error xyz2rgb () ***** error xyz2rgb (1,2) ***** error xyz2rgb ({1}) ***** error xyz2rgb (ones (2,2)) ***** test xyz = rand (16, 16, 3, 5); rgb = zeros (size (xyz)); for i = 1:5 rgb(:,:,:,i) = xyz2rgb (xyz(:,:,:,i)); endfor assert (xyz2rgb (xyz), rgb) 23 tests, 23 passed, 0 known failure, 0 skipped [inst/bwmorph.m] >>>>> /<>/inst/bwmorph.m ***** demo bwmorph (true (11), "shrink", Inf) # Should return 0 matrix with 1 pixel set to 1 at (6,6) ***** test slBW = logical ([ 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1 0 0 0 0 1 1 1 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 0 0 1 1 1 1 1 0 0 1 1 1 1 1 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0]); rslBW = logical ([ 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]); assert (bwmorph (slBW, "skel-lantuejoul", 1), [rslBW(1:5,:); false(7, 7)]); assert (bwmorph (slBW, "skel-lantuejoul", 2), [rslBW(1:8,:); false(4, 7)]); assert (bwmorph (slBW, "skel-lantuejoul", 3), rslBW); assert (bwmorph (slBW, "skel-lantuejoul", Inf), rslBW); ***** test bw = [ 0 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 0]; final = logical ([ 0 1 0 0 0 1 0 0 1 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 1 0 0 1 0 0 0 1 0]); assert (bwmorph (bw, "skel", Inf), final) assert (bwmorph (bw, "skel", 3), final) ***** error bwmorph ("not a matrix", "dilate") ***** assert (bwmorph (magic (10), "dilate"), imdilate (logical (magic (10)), ones (3))); ***** test in = logical ([1 1 0 0 1 0 1 0 0 0 1 1 1 0 1 1 0 1 0 0 1 1 1 0 1 0 1 1 1 1 0 1 0 1 0 0 0 0 0 0 0 1 1 1 0 1 1 0 0 0 1 1 0 0 1 1 0 0 1 0 0 0 0 0 0 1 1 1 1 0 0 1 1 1 1 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 0 0 0 1 1 0 0 1 0 0 0 1 1 1 1 1 0 0 1 0 1 1 1 0 0 1 0 0 1 0 1 1 1 1 1 1 0 1 1 1 0 0 0 1 0 0 1 0 0 1 0 1 1 1 0 1 1 0 1 0 0 1 1 1 0 0 1 0 0 1 0 1 1 1 0 1 0 0 1 0 0 1 1 0 0 1 1 1 0 1 0 1 1 1 1 0 0 0 1 0 0 0 0 0 0 1 1 0 0 1 1 1 1 1 1 0 1 0 1 0 0 0 0 0 0 1 0 1 1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0 0 0 1 0 0 0 0 1 1 0 1 1 1 1 0 0 1 0 0 0 0 1 0 1 1 0 0 1 1 0 0 1 1 1 0 0 0 1 1 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 1 1 1 1 1 0 0 0 0 1 0 0 0 1 1 0 1 1 0 0 1 1 1 0 1 1 1 1 1 0 0 1 0 1 1 0 1 0 0 0 0 0 0 1 0 1 1 1 0 0 1 1 0 1 1 1 1 0 0 0 0 1 1 0 1 1 1 1 0 1 1 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 0 1]); se = strel ("arbitrary", ones (3)); assert (bwmorph (in, "dilate"), imdilate (in, se)); assert (bwmorph (in, "dilate", 3), imdilate (imdilate (imdilate (in, se), se), se)); assert (bwmorph (in, "bothat"), imbothat (in, se)); assert (bwmorph (in, "tophat"), imtophat (in, se)); assert (bwmorph (in, "open"), imopen (in, se)); assert (bwmorph (in, "close"), imclose (in, se)); ***** assert (bwmorph ([1 0 0; 1 0 1; 0 0 1], "bridge"), logical ([1 1 0; 1 1 1; 0 1 1])); ***** assert (bwmorph ([0 0 0; 1 0 1; 0 0 1], "clean"), logical ([0 0 0; 0 0 1; 0 0 1])); ***** assert (bwmorph ([0 0 0; 0 1 0; 0 0 0], "clean"), false (3)); ***** assert (bwmorph ([0 1 0; 1 0 0; 0 0 0], "diag"), logical ([1 1 0; 1 1 0; 0 0 0])); ***** test in = logical ([0 1 0 1 0 1 1 1 0 1 1 0 0 1 0 1 1 1 0 1 1 1 1 1 1]); out = logical ([0 1 0 1 0 1 1 1 1 1 1 0 0 1 0 1 1 1 1 1 1 1 1 1 1]); assert (bwmorph (in, "fill"), out); ***** assert (bwmorph ([1 1 1; 0 1 0; 1 1 1], "hbreak"), logical ([1 1 1; 0 0 0; 1 1 1])); ***** test in = logical ([0 1 0 0 0 1 0 0 1 0 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1]); out = logical ([0 1 0 0 0 1 0 0 1 0 1 0 1 0 0 1 1 0 1 1 1 1 1 1 1]); assert (bwmorph (in, "remove"), out); out = logical ([0 1 0 0 0 1 0 0 1 0 1 0 1 0 0 1 1 0 1 1 1 1 1 1 1]); assert (bwmorph (in, "remove", Inf), out); ***** xtest ## tests for spur are failing (matlab incompatible) in = logical ([0 1 0 0 0 1 0 0 1 0 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1]); out = logical ([0 1 0 0 0 1 0 0 0 0 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1]); assert (bwmorph (in, "spur"), out); out = logical ([0 1 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1]); assert (bwmorph (in, "spur", Inf), out); !!!!! known failure ASSERT errors for: assert (bwmorph (in, "spur"),out) Location | Observed | Expected | Reason (1,2) 0 1 Abs err 1 exceeds tol 0 by 1 ***** test bw = false (3, 3); bw(3, 1) = true; out = bwmorph (bw, "thicken", 0); assert (out, bw) ***** test bw = false (8, 7); bw(8, 1) = true; expected = logical ([ 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1 0 0 0 0 1 1 1 1 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1]); out = bwmorph (bw, "thicken", 6); assert (out, expected) ***** test bw = false (8, 7); bw(2, 4) = true; expected = logical ([ 0 0 1 1 1 0 0 0 1 1 1 1 1 0 0 0 1 1 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]); out = bwmorph (bw, "thicken", 2); assert (out, expected) ***** test bw = false (8, 7); bw (6, 3) = true ; expected1 = logical ([ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0]); expected3 = logical ([ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1 1 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 1 1 1 0 0 0]); out1 = bwmorph (bw, "thicken", 1); out3 = bwmorph (bw, "thicken", 3); assert (out1, expected1) assert (out3, expected3) ***** test bw = false (10, 10); bw(2, 3) = true; bw(7, 7) = true; out_inf = bwmorph (bw, "thicken", Inf); assert (out_inf(1, 9), false) ***** test bw = false (3, 3); bw(3, 1) = true; out = bwmorph (bw, "thicken", 4); assert (out, true (3, 3)) ***** xtest ## bug #44396 in = [ 0 0 0 1 0 1 1 1 1 0 0 0 1 1 0 0 0 1 1 0 0 0 0 1 0]; out = [ 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0]; assert (bwmorph (in, "shrink"), logical (out)); !!!!! known failure ASSERT errors for: assert (bwmorph (in, "shrink"),logical (out)) Location | Observed | Expected | Reason (2,4) 1 0 Abs err 1 exceeds tol 0 by 1 (3,4) 0 1 Abs err 1 exceeds tol 0 by 1 (4,4) 1 0 Abs err 1 exceeds tol 0 by 1 (5,4) 1 0 Abs err 1 exceeds tol 0 by 1 ***** test H = false (7,7); H(2:3,2:3) = 1; H(5:6,5:6) = 1; T = logical([0 0 0 0 0 0 0; 0 0 0 0 0 0 0; 0 1 0 0 0 0 0; 0 0 0 0 0 0 0; 0 0 0 0 0 0 0; 0 0 0 0 1 0 0; 0 0 0 0 0 0 0]); out = bwmorph (H, "thin", 1); assert (T, out) H(4:6,4:6) = 1; T = logical([0 0 0 0 0 0 0; 0 0 0 0 0 0 0; 0 1 1 0 0 0 0; 0 0 0 1 0 0 0; 0 0 0 0 1 0 0; 0 0 0 0 0 0 0; 0 0 0 0 0 0 0]); out = bwmorph (H, "thin", 1); assert (T, out) H3 = [0 0 0 0 0 0; 0 1 1 1 0 0; 0 1 1 1 0 0; 0 0 0 1 0 1; 0 0 0 0 1 1; 0 0 0 1 1 1]; out3 = bwmorph (H3, "thin", 1); expected3 = logical( [0 0 0 0 0 0; 0 0 0 0 0 0; 0 1 1 0 0 0; 0 0 0 1 0 1; 0 0 0 0 1 0; 0 0 0 1 1 0]); assert (out3, expected3) out33 = bwmorph (H3, "thin", 2); expected33 = logical( [0 0 0 0 0 0; 0 0 0 0 0 0; 0 1 1 0 0 0; 0 0 0 1 0 1; 0 0 0 0 1 0; 0 0 0 1 0 0]); assert (out33, expected33) out333 = bwmorph (H3, "thin", inf); assert (out333, expected33) ***** test in = logical ([ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0]); out = logical ([ 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0]); assert (bwmorph (in, "endpoints"), out); A = logical ([0 0 0 0 0; 0 0 1 0 0; 0 1 1 1 0; 0 0 1 0 0; 0 0 0 0 0]); B = logical ([0 0 0 0 0; 0 0 1 0 0; 0 1 0 1 0; 0 0 1 0 0; 0 0 0 0 0]); assert (bwmorph (A, "endpoints"), B); A = logical ([0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 1 0 0 1 1 1 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1 1 0 0 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 1]); B = logical ([0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1]); assert (bwmorph (A, "endpoints"), B); A = logical([0 0 0 0 0; 0 1 1 1 0; 0 1 1 1 0; 0 1 1 1 0; 0 0 0 0 0]); B = logical([0 0 0 0 0; 0 1 1 1 0; 0 1 0 1 0; 0 1 1 1 0; 0 0 0 0 0]); assert (bwmorph (A, "endpoints"), B); assert (bwmorph (B, "endpoints"), zeros (5, "logical")); A = logical([0,0,0,0,0,0,0,0,0,0,0,0,0,0 0,0,1,1,1,1,1,1,1,1,1,1,0,0 0,0,0,0,0,0,0,0,0,0,0,0,0,0]); B = logical([0,0,0,0,0,0,0,0,0,0,0,0,0,0 0,0,1,0,0,0,0,0,0,0,0,1,0,0 0,0,0,0,0,0,0,0,0,0,0,0,0,0]); C = logical([1,0,0,0,0,0,0,0,0,0,0,0,0,1 1,1,0,0,0,0,0,0,0,0,0,0,1,1 1,0,0,0,0,0,0,0,0,0,0,0,0,1]); assert (bwmorph (!A, "endpoints"), C); 22 tests, 20 passed, 2 known failures, 0 skipped [inst/affine3d.m] >>>>> /<>/inst/affine3d.m ***** test Sx = 1.2; Sy = 1.6; Sz = 2.4; A = [Sx 0 0 0; 0 Sy 0 0; 0 0 Sz 0; 0 0 0 1]; tform = affine3d (A); [X, Y, Z] = transformPointsForward (tform, 5, 10, 3); assert ([X Y Z], [6 16 7.2], 5*eps) [U, V, W] = transformPointsInverse (tform, X, Y, Z); assert ([U V W], [5 10 3], eps) assert (! isRigid (tform)) assert (! isTranslation (tform)) assert (! isSimilarity (tform)) ***** test A = [3 1 2 0; 4 5 8 0; 6 2 1 0; 0 0 0 1]; tform = affine3d (A); [X, Y, Z] = transformPointsForward (tform, 2, 3, 5); assert (X, 48, eps) assert (Y, 27, eps) assert (Z, 33, eps) [U, V, W] = transformPointsInverse (tform, X, Y, Z); assert (U, 2, 50*eps) assert (V, 3, 50*eps) assert (W, 5, 50*eps) assert (! isRigid (tform)) assert (! isTranslation (tform)) assert (! isSimilarity (tform)) ***** test A = [1 0 0 0; 0 1 0 0; 0 0 1 0; 5 10 1 1]; tform = affine3d (A); X = transformPointsForward (tform, [1 2 3; 4 5 6; 7 8 9]); assert (round (X), [6, 12, 4; 9, 15, 7; 12, 18, 10]) U = transformPointsInverse (tform, X); assert (round (U), [1 2 3; 4 5 6; 7 8 9]) assert (isRigid (tform)) assert (isTranslation (tform)) assert (isSimilarity (tform)) ***** test Sx = 1.2; Sy = 1.6; Sz = 2.4; A = [Sx 0 0 0; 0 Sy 0 0; 0 0 Sz 0; 0 0 0 1]; tform = affine3d (A); [xlim, ylim, zlim] = outputLimits (tform, [1 128], [1 128], [1 27]); assert (xlim, [ 1.2000 153.6000],1e-8) assert (ylim, [1.6000 204.8000], 1e-8) assert (zlim, [2.4000 64.8000], 1e-8) ***** error affine3d (1, 2) ***** error outputLimits (affine2d()) ***** test a = 23; M = [cosd(a) 0 sind(a) 0; 0 1 0 0; -sind(a) 0 cosd(a) 0; 0 0 0 1]; tform = affine3d (M); tform2 = invert (tform); assert (tform.T * tform2.T, diag([1 1 1 1]), eps); ***** test tform = affine3d; assert (tform.T, eye (4)) assert (tform.Dimensionality, 3) 8 tests, 8 passed, 0 known failure, 0 skipped [inst/xyz2lab.m] >>>>> /<>/inst/xyz2lab.m ***** assert (xyz2lab ([0, 0, 0]), [0 0 0], 5e-2) ***** assert (xyz2lab ([0.4125, 0.2127, 0.0193]), [53.24, 80.09, 67.20], 5e-2) ***** assert (xyz2lab ([0.7700, 0.9278, 0.1385]), [97.14, -21.55, 94.48], 5e-2) ***** assert (xyz2lab ([0.3576, 0.7152, 0.1192]), [87.74, -86.18, 83.18], 5e-2) ***** assert (xyz2lab ([0.5380, 0.7873, 1.0694]), [91.11, -48.09, -14.13], 5e-2) ***** assert (xyz2lab ([0.1804, 0.07217, 0.9502]), [32.30, 79.19, -107.86], 5e-2) ***** assert (xyz2lab ([0.5929, 0.28484, 0.9696]), [60.32, 98.24, -60.83], 5e-2) ***** assert (xyz2lab ([0.9505, 1.0000, 1.0888]), [100, 0.00, 0.00], 5e-2) ***** assert (xyz2lab ([0.2034, 0.2140, 0.2330]), [53.39, 0.00, 0.00], 5e-2) ***** assert (xyz2lab ([0.2155, 0.1111, 0.0101]), [39.77, 64.51, 54.13], 5e-2) ***** assert (xyz2lab ([0.0883, 0.0455, 0.0041]), [25.42, 47.91, 37.91], 5e-2) ***** assert (xyz2lab ([0.02094, 0.0108, 0.00098]), [9.66, 29.68, 15.24], 5e-2) ***** assert (xyz2lab ([0.5276, 0.3812, 0.2482]), [68.11, 48.39, 22.83], 5e-2) ***** assert (xyz2lab ([1.5 1 1]), [100, 82.15, 5.60], 5e-2) xyz_map = rand (64, 3); assert (lab2xyz (xyz2lab (xyz_map)), xyz_map, 1e-5); ***** test xyz_img = rand (64, 64, 3); assert (lab2xyz (xyz2lab (xyz_img)), xyz_img, 1e-5); ***** assert (xyz2lab (sparse ([0 0 0])), [0 0 0], 5e-2) ***** assert (class (xyz2lab (single([0.5 0.5 0.5]))), 'single') ***** error xyz2lab () ***** error xyz2lab (1,2) ***** error xyz2lab ({1}) ***** error xyz2lab (ones (2,2)) ***** test xyz = rand (16, 16, 3, 5); lab = zeros (size (xyz)); for i = 1:5 lab(:,:,:,i) = xyz2lab (xyz(:,:,:,i)); endfor assert (xyz2lab (xyz), lab) 22 tests, 22 passed, 0 known failure, 0 skipped [inst/mat2gray.m] >>>>> /<>/inst/mat2gray.m ***** assert(mat2gray([1 2 3]), [0 0.5 1]); # standard use ***** assert(mat2gray(repmat ([1 2; 3 3], [1 1 3])), repmat ([0 0.5; 1 1], [1 1 3])); # setting min and max ***** assert(mat2gray([1 2 3], [2 2]), [1 1 1]); # equal min and max ***** assert(mat2gray([-1 0 0.5 3], [2 2]), [0 0 0.5 1]); # equal min and max ***** test ## SCALE is unset and all values in the input IMAGE are the same: ## case 1: all values are in the [0 1] range] assert (mat2gray ([.5 .5; .5 .5]), [.5 .5; .5 .5]) ## case 2: all values are above the [0 1] range assert (mat2gray ([3 3; 3 3]), [1 1; 1 1]) ## case 2: all values are below the [0 1] range assert (mat2gray ([-3 -3; -3 -3]), [0 0; 0 0]) ***** assert(mat2gray([1 2 3], [3 1]), [1 0.5 0]); # max and min inverted ***** assert (mat2gray ([-3 -2 -1]), [0 0.5 1]) 7 tests, 7 passed, 0 known failure, 0 skipped [inst/fspecial.m] >>>>> /<>/inst/fspecial.m ***** test for i = 1:9 n = 2^i; assert (sum (fspecial ("disk", n)(:)), 1, eps*n*n); endfor ***** test for r = [3 5 9 17] f = fspecial ("disk", r); [X, Y] = meshgrid (-r:r, -r:r); rhi = (abs (X) + 0.5).^2 + (abs (Y) + 0.5).^2; rlo = (abs (X) - 0.5).^2 + (abs (Y) - 0.5).^2; fhi = (rhi <= (r^2)); flo = (rlo >= (r^2)); for i = 1:(2*r+1) for j = 1:(2*r+1) if (fhi(i,j)) assert (f(i,j), 1/(pi*r^2), eps); endif if (flo(i,j)) assert (f(i,j), 0); endif endfor endfor endfor ***** error fspecial ("gaussian", 0) ***** error fspecial ("gaussian", 3.9) ***** assert (fspecial ("gaussian"), fspecial ("gaussian", 3, 0.5)) ***** assert (fspecial ("gaussian"), fspecial ("gaussian", [3 3], 0.5)) ***** test c = ([-1:1].^2) + ([-1:1]'.^2); gauss = exp (- (c / (2 * (0.5 ^ 2)))); f = gauss / sum (gauss(:)); assert (fspecial ("gaussian"), f) expected = [ 0.01134373655849507 0.08381950580221061 0.01134373655849507 0.08381950580221061 0.61934703055717721 0.08381950580221061 0.01134373655849507 0.08381950580221061 0.01134373655849507]; assert (f, expected, eps) ***** function f = f_gaussian_2d (hsize, sigma) c = ([(-hsize(1)):(hsize(1))]'.^2) + ([(-hsize(2)):(hsize(2))].^2); gauss = exp (- (c ./ (2 * (sigma .^ 2)))); f = gauss ./ sum (gauss(:)); ***** endfunction ***** test f = fspecial ("gaussian"); assert (f, f_gaussian_2d ([1 1], .5)) expected = [ 0.01134373655849507 0.08381950580221061 0.01134373655849507 0.08381950580221061 0.61934703055717721 0.08381950580221061 0.01134373655849507 0.08381950580221061 0.01134373655849507]; assert (f, expected, eps) ***** test f = fspecial ("gaussian", 7, 2); assert (f, f_gaussian_2d ([3 3], 2)) expected = [ 0.00492233115934352 0.00919612528958620 0.01338028334410124 0.01516184737296414 0.01338028334410124 0.00919612528958620 0.00492233115934352 0.00919612528958620 0.01718062389630964 0.02499766026691484 0.02832606006174462 0.02499766026691484 0.01718062389630964 0.00919612528958620 0.01338028334410124 0.02499766026691484 0.03637138107390363 0.04121417419979795 0.03637138107390363 0.02499766026691484 0.01338028334410124 0.01516184737296414 0.02832606006174462 0.04121417419979795 0.04670177773892775]; expected = reshape ([expected; expected((end-1):-1:1)], [7 7]); assert (f, expected, eps) ***** test f = fspecial ("gaussian", [7 5], 2); assert (f, f_gaussian_2d ([3 2], 2)) expected = [ 0.01069713252648568 0.01998487459872362 0.02907782096336423 0.03294948784319031 0.02907782096336423 0.01998487459872362 0.01069713252648568 0.01556423598706978 0.02907782096336423 0.04230797985750011 0.04794122192790870 0.04230797985750011 0.02907782096336423 0.01556423598706978 0.01763658993191515 0.03294948784319031 0.04794122192790870 0.05432452146574315]; expected = reshape ([expected; expected((end-1):-1:1)], [7 5]); assert (f, expected, eps) ***** test f = fspecial ("gaussian", [4 2], 2); expected = [0.10945587477855045 0.14054412522144952]; expected = expected([1 1; 2 2; 2 2; 1 1]); assert (f, expected, eps) ***** test expected =[0.04792235409415088 0.06153352068439959 0.07901060453704994]; expected = expected([1 2 2 1; 2 3 3 2; 2 3 3 2; 1 2 2 1]); assert (fspecial ("gaussian", 4, 2), expected) ***** function f = f_gaussian_3d (lengths, sigma) [x, y, z] = ndgrid (-lengths(1):lengths(1), -lengths(2):lengths(2), -lengths(3):lengths(3)); sig_22 = 2 * (sigma.^2); f = exp (-((x.^2)/sig_22 + (y.^2)/sig_22 + (z.^2)/sig_22)); f = f / sum (f(:)); ***** endfunction ***** test obs = fspecial ("gaussian", [5 5 5]); assert (obs, f_gaussian_3d ([2 2 2], .5)) u_values = [ 0.00000000001837155 0.00000000741161178 0.00000005476481523 0.00000299005759843 0.00002209370333384 0.00016325161336690 0.00120627532940896 0.00891323607975882 0.06586040141635063 0.48664620076350640]; expected = zeros (5, 5, 5); expected([1 5 21 25 101 105 121 125]) = u_values(1); expected([2 4 6 10 16 20 22 24 26 30 46 50 76 80 96 100 102 104 106 110 116 120 122 124]) = u_values(2); expected([3 11 15 23 51 55 71 75 103 111 115 123]) = u_values(3); expected([7 9 17 19 27 29 31 35 41 45 47 49 77 79 81 85 91 95 97 99 107 109 117 119]) = u_values(4); expected([8 12 14 18 28 36 40 48 52 54 56 60 66 70 72 74 78 86 90 98 108 112 114 118]) = u_values(5); expected([13 53 61 65 73 113]) = u_values(6); expected([32 34 42 44 82 84 92 94]) = u_values(7); expected([33 37 39 43 57 59 67 69 83 87 89 93]) = u_values(8); expected([38 58 62 64 68 88]) = u_values(9); expected([63]) = u_values(10); assert (obs, expected, 4 * eps) ***** test obs = fspecial ("gaussian", [5 5 5], 1); assert (obs, f_gaussian_3d ([2 2 2], 1)) u_values = [ 0.00016177781678373 0.00072503787330278 0.00119538536377748 0.00324939431236223 0.00535734551968363 0.00883276951279243 0.01456277497493249 0.02400995686159072 0.03958572658629712 0.06526582943894763]; expected = zeros (5, 5, 5); expected([1 5 21 25 101 105 121 125]) = u_values(1); expected([2 4 6 10 16 20 22 24 26 30 46 50 76 80 96 100 102 104 106 110 116 120 122 124]) = u_values(2); expected([3 11 15 23 51 55 71 75 103 111 115 123]) = u_values(3); expected([7 9 17 19 27 29 31 35 41 45 47 49 77 79 81 85 91 95 97 99 107 109 117 119]) = u_values(4); expected([8 12 14 18 28 36 40 48 52 54 56 60 66 70 72 74 78 86 90 98 108 112 114 118]) = u_values(5); expected([13 53 61 65 73 113]) = u_values(6); expected([32 34 42 44 82 84 92 94]) = u_values(7); expected([33 37 39 43 57 59 67 69 83 87 89 93]) = u_values(8); expected([38 58 62 64 68 88]) = u_values(9); expected([63]) = u_values(10); assert (obs, expected, eps) ***** test obs = fspecial ("gaussian", [3 4 1 5], 3); assert (find (obs == max (obs(:))), [29; 32]) assert (size (obs), [3 4 1 5]) assert (obs(:)(1:30), obs(:)(end:-1:31)) ***** test f = repmat (1/9, [3 3]); assert (fspecial ("average", [3 3]), f) ## Test default assert (fspecial ("average"), fspecial ("average", [3 3])) assert (fspecial ("average"), fspecial ("average", [3])) f = repmat (1/21, [3 7]); assert (fspecial ("average", [3 7]), f) f = repmat (1/40, [4 5 1 2]); assert (fspecial ("average", [4 5 1 2]), f) ## Behave even if it's a column vector assert (fspecial ("average", [4 5 1 2]'), f) 16 tests, 16 passed, 0 known failure, 0 skipped [inst/hough.m] >>>>> /<>/inst/hough.m ***** shared BW0, BW1, BW2, BWx, BWy BW0 = false (5); BW0(2,2) = true; BW1 = zeros (100, 100); BW1(1,1) = 1; BW1(100,100) = 1; BW1(1,100) = 1; BW1(100, 1) = 1; BW1(50,50) = 1; n = 100; BW2 = false (n); a = 50; # line starts at left side at row a b = 3; # slope of line is 1:b for column = 1:n if (rem (column, b) == 0) row = a - column/b; BW2(row, column) = true; endif endfor BWx = false (10); BWx(:,5) = true; BWy = false (10); BWy(5,:) = true; ***** test [H, T, R] = hough (BW1); assert (size (H), [283 180]); ***** test [H, T, R] = hough (BW1, "Theta", [-90 0 45 79]); assert (size (H), [283 4]); ***** test [H, T, R] = hough (BW1, "ThetaResolution", 0.5); assert (size (H), [283 360]); ***** error hough ("foo") ***** test I = [0 0 1 0; 1 1 1 1; 0 0 1 1; 0 0 1 0]; I2 = I; for v = [0.7 0.2 5] I2(1,3) = v; assert (hough (I2), hough (I)) endfor ***** error [H, T, R] = hough (BW0, "Theta"); ***** error [H, T, R] = hough (BW0, "Theta", ones (10)); ***** error [H, T, R] = hough (BW0, "Theta", [5 -i 7]); ***** error [H, T, R] = hough (BW0, "RhoResolution", 0.5); ***** test [Hd, Td, Rd] = hough (BW0); [H1, T1, R1] = hough (BW0, "RhoResolution", 1); assert (Hd, H1) assert (Td, T1) assert (Rd, R1) ***** test [H, theta, rho] = hough (BW2); H_max = max (H(:)); H_size = size (H); [~, max_idx_lin] = max (H(:)); [max_row, max_column] = ind2sub (size (H), max_idx_lin); theta_max = theta(max_column); rho_max = rho(max_row); assert (H_max , 33); assert (H_size, [283 180]); assert (max_row, 188); assert (max_column, 163); assert (theta_max, 72); assert (rho_max, 46); ***** test [H, theta, rho] = hough (BW2, "Theta", [65:1:75]); H_max = max (H(:)); H_size = size (H); [~, max_idx_lin] = max (H(:)); [max_row, max_column] = ind2sub (size (H), max_idx_lin); theta_max = theta(max_column); rho_max = rho(max_row); assert (H_max , 33); assert (H_size, [283 11]); assert (max_row, 188); assert (max_column, 8); assert (theta_max, 72); assert (rho_max, 46); ***** test [H, theta, rho] = hough (BW2, "Theta", [-90:0.5:89.5]); H_max = max (H(:)); H_size = size (H); [~, max_idx_lin] = max (H(:)); [max_row, max_column] = ind2sub (size (H), max_idx_lin); theta_max = theta(max_column); rho_max = rho(max_row); assert (H_max , 33); assert (H_size, [283 360]); assert (max_row, 188); assert (max_column, 324); assert (theta_max, 71.5); assert (rho_max, 46); ***** test [H, theta, rho] = hough (BW2, "ThetaResolution", 0.5); H_max = max (H(:)); H_size = size (H); [~, max_idx_lin] = max (H(:)); [max_row, max_column] = ind2sub (size (H), max_idx_lin); theta_max = theta(max_column); rho_max = rho(max_row); assert (H_max , 33); assert (H_size, [283 360]); assert (max_row, 188); assert (max_column, 324); assert (theta_max, 71.5); assert (rho_max, 46); ***** test [H, theta, rho] = hough (BWx); H_max = max (H(:)); [~, max_idx_lin] = max (H(:)); [max_row, max_column] = ind2sub (size (H), max_idx_lin); theta_max = theta(max_column); rho_max = rho(max_row); assert (H_max , 10); assert (max_column, 88); assert (theta_max, -3); assert (rho_max, 4); ***** test [H, theta, rho] = hough (BWx); H_size = size (H); [~, max_idx_lin] = max (H(:)); [max_row, max_column] = ind2sub (size (H), max_idx_lin); assert (H_size, [27 180]); assert (max_row, 18); ***** test [H, theta, rho] = hough (BWy); H_max = max (H(:)); [~, max_idx_lin] = max (H(:)); [max_row, max_column] = ind2sub (size (H), max_idx_lin); theta_max = theta(max_column); rho_max = rho(max_row); assert (H_max , 10); assert (max_column, 1); assert (theta_max, -90); assert (rho_max, -4); ***** test [H, theta, rho] = hough (BWy); H_size = size (H); [~, max_idx_lin] = max (H(:)); [max_row, max_column] = ind2sub (size (H), max_idx_lin); assert (H_size, [27 180]); assert (max_row, 10); ***** demo BW = zeros (100, 150); BW(30,:) = 1; BW(:, 65) = 1; BW(35:45, 35:50) = 1; for i = 1:90 BW(i,i) = 1; endfor BW = imnoise (BW, "salt & pepper"); figure (); imshow (BW); title ("BW"); [H, theta, rho] = hough (BW); H /= max (H(:)); figure (); imshow (H, "XData", theta, "YData", rho); title ("hough transform of BW"); axis on; xlabel ("angle \\theta [degrees]"); ylabel ("distance \\rho to origin [pixels]"); 18 tests, 18 passed, 0 known failure, 0 skipped [inst/nlfilter.m] >>>>> /<>/inst/nlfilter.m ***** demo ## creates a "wide" diagonal (although it can be performed more ## efficiently with "imdilate (A, true (3))") nlfilter (eye (10), [3 3], @(x) any (x(:) > 0)) ***** assert (nlfilter (eye (4), [2 3], @(x) sum (x(:))), [2 2 1 0 1 2 2 1 0 1 2 2 0 0 1 1]); ***** assert (nlfilter (eye (4), "indexed", [2 3], @(x) sum (x(:))), [4 2 1 2 3 2 2 3 2 1 2 4 4 3 4 5]); ***** assert (nlfilter (eye (4), "indexed", [2 3], @(x, y) sum (x(:)) == y, 2), logical ([0 1 0 1 0 1 1 0 1 0 1 0 0 0 0 0])); ***** assert (nlfilter (uint8 (eye (4)), "indexed", [2 3], @(x) sum (x(:))), [2 2 1 0 1 2 2 1 0 1 2 2 0 0 1 1]); ***** assert (nlfilter (int16 (eye (4)), "indexed", [2 3], @(x) sum (x(:))), [4 2 1 2 3 2 2 3 2 1 2 4 4 3 4 5]); ***** assert (nlfilter (uint8 (eye (4)), "indexed", [2 3], @(x) int8 (sum (x(:)))), int8 ([2 2 1 0 1 2 2 1 0 1 2 2 0 0 1 1])); ***** test ## Effect of out of border elements. expected = [ 0.5 6.0 6.0 0.5 0 5.5 10.5 13.5 10.5 4.0 6.5 12.5 13.5 13.5 1.5 10.5 12.5 15.5 11.0 1.0 5.0 10.5 6.0 1.0 0 ]; assert (nlfilter (magic (5), [3 4], @(x) median (x(:))), expected) ***** test ## The center pixel of a sliding window when its length is even ## sized is ceil ((size (NHOOD) +1) /2) expected = [ 24 24 24 16 16 24 24 24 22 22 23 23 22 22 22 25 25 25 25 22 25 25 25 25 21 ]; assert (nlfilter (magic (5), [3 4], @(x) max (x(:))), expected) ***** function dilated = imdilate_like_nlfilter (im, nhood) even_nhood_dims = find (mod (size (nhood), 2) == 0); for i = 1:even_nhood_dims im = flip (im, i); endfor dilated = imdilate (im, nhood); for i = 1:even_nhood_dims dilated = flip (dilated, i); endfor ***** endfunction ***** test a = randi (65535, 20, 20, 20, "uint16"); ## extra dimensions on matrix only assert (nlfilter (a, [5 5], @(x) max(x(:))), imdilate (a, ones (5))) ## extra dimensions on both matrix and block assert (nlfilter (a, [5 5 5], @(x) max(x(:))), imdilate (a, ones ([5 5 5]))) ## extra dimensions and padding assert (nlfilter (a, [3 7], @(x) max(x(:))), imdilate (a, ones ([3 7]))) assert (nlfilter (a, [3 7 3], @(x) max(x(:))), imdilate (a, ones ([3 7 3]))) ***** test a = randi (65535, 15, 15, 4, 8, 3, "uint16"); assert (nlfilter (a, [3 4 7 5], @(x) max(x(:))), imdilate_like_nlfilter (a, ones ([3 4 7 5]))) ***** test a = randi (65535, 15, 15, 4, 3, 8, "uint16"); ord = ordfiltn (a, 3, ones ([3 7 3 1 5])); assert (nlfilter (a, [3 7 3 1 5], @(x) sort (x(:))(3)), ord) assert (nlfilter (a, [3 7 3 1 5], @(x, y) sort (x(:))(y), 3), ord) 11 tests, 11 passed, 0 known failure, 0 skipped [inst/imextendedmin.m] >>>>> /<>/inst/imextendedmin.m ***** shared im0, bw0_h2_out im0 = uint8 ([5 5 5 5 5; 5 4 3 4 5; 5 3 0 3 5; 5 4 3 4 5; 5 5 5 5 5]); bw0_h2_out = false (5); bw0_h2_out(3,3) = true; ***** error imextendedmin () ***** error imextendedmin (im0) ***** error imextendedmin ("hello", 2) ***** error imextendedmin (i.*im0, 2) ***** error imextendedmin (sparse (im0), 2) ***** error imextendedmin (im0, -2) ***** error imextendedmin (im0, 'a') ***** error imextendedmin (im0, ones (2)) ***** error imextendedmin (im0, 2*i) ***** assert (imextendedmin (im0, 2), bw0_h2_out) ***** assert (imextendedmin (double (im0), 2), bw0_h2_out) ***** assert (imextendedmin (im0, 2, 8), bw0_h2_out) ***** assert (imextendedmin (im0, 2, 4), bw0_h2_out) ***** assert (imextendedmin (im0, 2, true (3)), bw0_h2_out) ***** test out = imextendedmin (im0, 2); assert (size (out), size (im0)) assert (class (out), "logical") ***** test out = imextendedmin (single (im0), 2); assert (size (out), size (im0)) assert (class (out), "logical") ***** test out = imextendedmin (uint8 (im0), 2); assert (size (out), size (im0)) assert (class (out), "logical") ***** test out = imextendedmin (uint16 (im0), 2); assert (size (out), size (im0)) assert (class (out), "logical") ***** test im = cat (3, im0, im0, im0, im0); out = imextendedmin (im, 2); assert (size (out), size (im)) ***** test im = 10 .* ones (10); im(2:4, 2:4) = 7; im(6:8, 6:8) = 2; expected_4 = false (10); expected_4(6:8, 6:8) = true; expected_2 = expected_4; expected_2(2:4, 2:4) = true; out = imextendedmin (im, 4); assert (out, expected_4, eps) out = imextendedmin (0.1.*im, 0.4); assert (out, expected_4, eps) out = imextendedmin (im, 2); assert (out, expected_2, eps) ***** test im2 = 10 .* ones (10); im2(2:4, 2:4) = 7; im2(6:9, 6:9)=2; im2(5, 5)=2; im2(6, 7)=10; im2(7, 8)=10; expected_8 = false (10); expected_8(6:9, 6:9) = true; expected_8(5, 5) = true; expected_8(6, 7) = false; expected_8(7, 8) = false; expected_4 = expected_8; expected_4(2:4, 2:4) = true; out2 = imextendedmin (im2, 2); assert (out2, expected_8, eps) out2 = imextendedmin (im2, 2, 4); assert (out2, expected_4, eps) out2 = imextendedmin (im2, 2, 8); assert (out2, expected_8, eps) 21 tests, 21 passed, 0 known failure, 0 skipped [inst/iptnum2ordinal.m] >>>>> /<>/inst/iptnum2ordinal.m ***** assert (strcmp (iptnum2ordinal (1), 'first')); # simple works ***** assert (strcmp (iptnum2ordinal (21), '21st')); # after 20, goes stupid ***** assert (strcmp (iptnum2ordinal (100), '100th')); # use th correctly ***** fail ("iptnum2ordinal (inf)"); # must be real ***** fail ("iptnum2ordinal (0)"); # must be positive ***** fail ("iptnum2ordinal (-1)"); # must be positive ***** fail ("iptnum2ordinal (3.4)"); # must be integer 7 tests, 7 passed, 0 known failure, 0 skipped [inst/im2int16.m] >>>>> /<>/inst/im2int16.m ***** assert (im2int16 (int16 ([-2 2 3])), int16 ([-2 2 3])); ***** assert (im2int16 (uint16 ([0 65535])), int16 ([-32768 32767])); ***** assert (im2int16 ([false true]), int16 ([-32768 32767])); ***** assert (im2int16 ([true false]), int16 ([32767 -32768])); ***** assert (im2int16 (uint8 ([0 127 128 255])), int16 ([-32768 -129 128 32767])); ***** assert (im2int16 ([0 1.4/65535 1.5/65535 2/65535 1]), int16 ([-32768 -32767 -32766 -32766 32767])); ***** assert (im2int16 ([0 0.5 1]), int16 ([-32768 0 32767])); ***** assert (im2int16 ([-1 0 1 2]), int16 ([-32768 -32768 32767 32767])); ***** error im2int16 ([1 2], "indexed"); 9 tests, 9 passed, 0 known failure, 0 skipped [inst/imnoise.m] >>>>> /<>/inst/imnoise.m ***** assert(var(imnoise(ones(10)/2,'gaussian')(:)),0.01,0.005) # probabilistic ***** assert(length(find(imnoise(ones(10)/2,'salt & pepper')~=0.5)),5,10) # probabilistic ***** assert(var(imnoise(ones(10)/2,'speckle')(:)),0.01,0.005) # probabilistic ***** test A = imnoise (.5 * ones (100), 'poisson'); assert (class (A), 'double') ***** test A = imnoise (.5 * ones (100, 'single'), 'poisson'); assert (class (A), 'single') ***** test A = imnoise (128 * ones (100, 'uint8'), 'poisson'); assert (class (A), 'uint8') ***** test A = imnoise (256 * ones (100, 'uint16'), 'poisson'); assert (class (A), 'uint16') ***** demo A = imnoise (2^7 * ones (100, 'uint8'), 'poisson'); subplot (2, 2, 1) imshow (A) title ('uint8 image with poisson noise') A = imnoise (2^15 * ones (100, 'uint16'), 'poisson'); subplot (2, 2, 2) imshow (A) title ('uint16 image with poisson noise') A = imnoise (.5 * ones (100), 'poisson'); subplot (2, 2, 3) imshow (A) title ('double image with poisson noise') A = imnoise (.5 * ones (100, 'single'), 'poisson'); subplot (2, 2, 4) imshow (A) title ('single image with poisson noise') 7 tests, 7 passed, 0 known failure, 0 skipped [inst/edgetaper.m] >>>>> /<>/inst/edgetaper.m ***** assert (class (edgetaper (rand (100), rand (16))), "double") ***** assert (class (edgetaper (randi (255, 100, "uint8"), rand (16))), "uint8") 2 tests, 2 passed, 0 known failure, 0 skipped [inst/imfill.m] >>>>> /<>/inst/imfill.m ***** test I = uint8 (5.*[1 1 1; 1 0 1; 1 1 1]); bw = logical ([1 1 1; 1 0 1; 1 1 1]); I2 = uint8 (5.*ones (3)); bw2 = logical (ones (3)); assert (imfill (int8 (I)), int8 (I2)) assert (imfill (int16 (I)), int16 (I2)) assert (imfill (int32 (I)), int32 (I2)) assert (imfill (int64 (I)), int64 (I2)) assert (imfill (uint8 (I)), uint8 (I2)) assert (imfill (uint16 (I)), uint16 (I2)) assert (imfill (uint32 (I)), uint32 (I2)) assert (imfill (uint64 (I)), uint64 (I2)) assert (imfill (single (I)), single (I2)) assert (imfill (double (I)), double (I2)) assert (imfill (bw, "holes"), bw2) assert (imfill (uint8 (bw)), uint8 (bw2)) ***** error imfill (i + ones (3, 3)); # complex input ***** error imfill (sparse (double (I))); # sparse input ***** error imfill (); ***** error imfill (true (3), 4, "holes", 5) ***** error imfill (false (3), ones (2, 3)) ***** error imfill (false (3), ones (2, 3), 4) ***** error imfill (false (3)) ***** error imfill (false (3), 0, 4) ***** warning bw = logical ([1 1 1; 1 0 1; 1 1 1]); assert (imfill (bw, [5 5]), bw) assert (imfill (bw, 15), bw) bw = repmat (bw, [1 1 3]); assert (imfill (bw, 30), bw) assert (imfill (bw, [2 2 5]), bw) ***** test bw = logical ([1 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 1 0 0 0 1 0 1 0 1 0 0 0 1 1 1 0 1 1 1 1 0 1 1 1 1 0 0 1 1 0 1 0 1 0 0 0 1 0 1 0 1 0 0 0 1 1 1 0]); bw2 = logical ([1 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 0 1 0 0 0 1 1 1 0 1 0 0 0 1 1 1 0]); bw3 = logical ([1 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 0 1 1 1 1 0 1 1 1 1 0 0 1 1 0 1 0 1 0 0 0 1 0 1 0 1 0 0 0 1 1 1 0]); assert (imfill (bw, "holes"), bw2) assert (imfill (bw, 8, "holes"), bw2) assert (imfill (bw, 4, "holes"), bw2) assert (imfill (bw, [3 3]), bw3) assert (imfill (bw, 19), bw3) assert (imfill (bw, [3 3], 4), bw3) assert (imfill (bw, 19, 4), bw3) assert (imfill (bw, [3 3], 8), bw2) assert (imfill (bw, 19, 8), bw2) assert (imfill (bw, [19; 20]), bw3) assert (imfill (bw, [19; 20], 4), bw3) assert (imfill (bw, [19; 20], 8), bw2) ***** warning bw = logical ([1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 0 1 1 1 0 1 1 0 1 0 1 0 1 1 0 1 1 1 0 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1]); bw44 = logical ([1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 0 1 1 1 0 1 1 0 1 1 1 0 1 1 0 1 1 1 0 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1]); bw9 = logical ([1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1]); assert (imfill (bw, "holes"), logical (ones (7))) assert (imfill (bw, [4 4]), bw44) assert (imfill (bw, 9), bw9) assert (imfill (bw, [4 4; 10 10]), bw44) ***** test bw = logical ([1 1 0 1 1]); assert (imfill (bw, "holes"), bw) bw = logical([1 1 0 1 1; 1 1 1 1 1]); assert (imfill (bw, "holes"), bw) ***** test I = zeros (5); I(:, [2 4]) = 1; I2_expected = [0 1 1 1 0 0 1 1 1 0 0 1 1 1 0 0 1 1 1 0 0 1 1 1 0]; I2 = imfill (I, [0 0 0; 1 1 1; 0 0 0], "holes"); assert (I2, I2_expected) ***** test I = zeros (5); I(:, [2 4]) = 1; I2_expected = I; I2 = imfill (I, [0 1 0; 0 1 0; 0 1 0], "holes"); assert (I2, I2_expected) ***** test # this test is Matlab compatible I = zeros (5); I(:, [2 4]) = 1; I2_expected = inf .* ones (5); I2 = imfill (I, [0 0 0; 0 1 0; 0 0 0], "holes"); assert (I2, I2_expected) ***** test I = false (5); I(:, [2 4]) = true; I2_expected = true (5); I2 = imfill (I, [0 0 0; 0 1 0; 0 0 0], "holes"); assert (I2, I2_expected) ***** test I = uint8 ([10 20 80 85 20 15 90 03 25 88 05 85 02 50 83 90 04 03 80 80 10 81 83 85 30]); I2 = uint8 ([10 20 80 85 20 15 90 80 80 88 05 85 80 80 83 90 80 80 80 80 10 81 83 85 30]); I3 = uint8 ([10 20 80 85 20 15 90 05 25 88 05 85 05 50 83 90 05 05 80 80 10 81 83 85 30]); assert (imfill (I), I2) assert (imfill (I, 4), I2) assert (imfill (I, 4, "holes"), I2) assert (imfill (I, 8), I3) assert (imfill (I, "holes"), I2) ***** test v_line = [0 1 0; 0 1 0; 0 1 0]; h_line = [0 0 0; 1 1 1; 0 0 0]; im = [0 1 0 0 1 0]; assert (imfill (im, h_line, "holes"), [0 1 1 1 1 0]) assert (imfill (im, v_line, "holes"), [0 1 0 0 1 0]) assert (imfill (im', h_line, "holes"), [0 1 0 0 1 0]') assert (imfill (im', v_line, "holes"), [0 1 1 1 1 0]') im = repmat (im, [1 1 5]); assert (imfill (im, h_line, "holes"), repmat ([0 1 1 1 1 0], [1 1 5])) assert (imfill (im, v_line, "holes"), im) im = permute (im, [2 1 3]); assert (imfill (im, h_line, "holes"), im) assert (imfill (im, v_line, "holes"), repmat ([0 1 1 1 1 0]', [1 1 5])) ***** test im = logical ([0 0 0 0 0 0 0 1 1 1 1 0 0 1 0 0 1 0 0 1 1 1 1 0 0 0 0 0 0 0]); fi = logical ([0 0 0 0 0 0 0 1 1 1 1 0 0 1 1 1 1 0 0 1 1 1 1 0 0 0 0 0 0 0]); assert (imfill (cat (3, im, im, im), 8, 'holes'), cat (3, fi, fi, fi)) assert (imfill (cat (3, im, im, im), 'holes'), cat (3, im, im, im)) assert (imfill (cat (3, fi, im, fi), 'holes'), cat (3, fi, fi, fi)) ***** test emp = false (5, 6); im = logical ([0 0 0 0 0 0 0 1 1 1 1 0 0 1 0 1 0 1 0 1 1 1 1 0 0 0 0 0 0 0]); fi = logical ([0 0 0 0 0 0 0 1 1 1 1 0 0 1 1 1 1 1 0 1 1 1 1 0 0 0 0 0 0 0]); fi1 = logical ([0 0 0 0 0 0 0 1 1 1 1 0 0 1 1 1 0 1 0 1 1 1 1 0 0 0 0 0 0 0]); fi2 = logical ([0 0 0 0 0 0 0 1 1 1 1 0 0 1 0 1 1 1 0 1 1 1 1 0 0 0 0 0 0 0]); assert (imfill (cat (3, im, im, im), [3 3 2]), cat (3, fi1, fi1, fi1)) assert (imfill (cat (3, im, im, im), [3 5 2]), cat (3, fi2, fi2, fi2)) assert (imfill (cat (3, im, im, im), [3 3 2; 3 5 2]), cat (3, fi, fi, fi)) assert (imfill (cat (3, emp, im, emp), [3 3 2]), true (5, 6, 3)) 21 tests, 21 passed, 0 known failure, 0 skipped [inst/label2rgb.m] >>>>> /<>/inst/label2rgb.m ***** function map = test_colormap (unused) map = [0 0 0; 0.5 0.5 0.5; 0.125 0.125 0.125]; ***** endfunction ***** shared in, out, cmap in = [ 0 1 1 0 2 2 0 3 3 0 1 1 0 2 2 0 3 3]; out = [255 0 0 255 128 128 255 32 32 255 0 0 255 128 128 255 32 32]; out(:,:,2) = out(:,:,3) = out(:,:,1); out = uint8(out); cmap = [0 0 0; 0.5 0.5 0.5; 0.125 0.125 0.125]; ***** assert (label2rgb (in, cmap), out); ***** assert (label2rgb (uint8 (in), cmap), out); ***** assert (label2rgb (in, "test_colormap"), out); ***** assert (label2rgb (in, @test_colormap), out); out(find (in == 0)) = 0; ***** assert (label2rgb (in, cmap, "cyan"), out); ***** assert (label2rgb (in, cmap, [0 1 1]), out); in(1) = 10; ***** error label2rgb (in, cmap); ***** error label2rgb (in, cmap, 89); ***** error label2rgb (in, cmap, "g", "wrong"); 9 tests, 9 passed, 0 known failure, 0 skipped [inst/imtransform.m] >>>>> /<>/inst/imtransform.m ***** demo ## Various linear transforms figure (); im = [checkerboard(20, 2, 4); checkerboard(40, 1, 2)]; %input space corners incp = [1 1; 160 1; 160 160; 1 160]; udata = [min(incp(:,1)) max(incp(:,1))]; vdata = [min(incp(:,2)) max(incp(:,2))]; subplot (2,3,1); imshow (im) hold on plot (incp(:,1), incp(:,2), 'ob') axis on xlabel ('Original') % Translation and scaling outcp = incp * 2; outcp(:,1) += 200; outcp(:,2) += 500; T = maketform ('affine', incp(1:3,:), outcp(1:3,:)); subplot (2,3,2); [im2 xdata ydata] = imtransform (im, T, 'udata', udata, 'vdata', vdata, 'fillvalues', 1); imh = imshow (im2); set (imh, 'xdata', xdata, 'ydata', ydata) set (gca, 'xlim', xdata, 'ylim', ydata) axis on, hold on, xlabel ('Translation / Scaling'); plot (outcp(:,1), outcp(:,2), 'or') % Shear outcp = [1 1; 160 1; 140 160; -19 160]; % affine only needs 3 control points T = maketform ('affine', incp(1:3,:), outcp(1:3,:)); subplot (2,3,3); [im2 xdata ydata] = imtransform (im, T, 'udata', udata, 'vdata', vdata, 'fillvalues', 1); imh = imshow (im2); set (imh, 'xdata', xdata, 'ydata', ydata) set (gca, 'xlim', xdata, 'ylim', ydata) axis on, hold on, xlabel ('Shear'); plot (outcp(:,1), outcp(:,2), 'or') % Rotation theta = pi/4; T = maketform ('affine', [cos(theta) -sin(theta); ... sin(theta) cos(theta); 0 0]); outcp = tformfwd (T, incp); subplot (2,3,4); [im2 xdata ydata] = imtransform (im, T, 'udata', udata, 'vdata', vdata, 'fillvalues', 1 ); imh = imshow (im2); set (imh, 'xdata', xdata, 'ydata', ydata) set (gca, 'xlim', xdata, 'ylim', ydata) axis on, hold on, xlabel ('Rotation'); plot (outcp(:,1), outcp(:,2), 'or') % Reflection around x axis outcp = incp; outcp(:,2) *= -1; T = cp2tform (incp, outcp, 'similarity'); subplot (2,3,5); [im2 xdata ydata] = imtransform (im, T, 'udata', udata, 'vdata', vdata, 'fillvalues', 1 ); imh = imshow (im2); set (imh, 'xdata', xdata, 'ydata', ydata) set (gca, 'xlim', xdata, 'ylim', ydata) axis on, hold on, xlabel ('Reflection'); plot (outcp(:,1), outcp(:,2), 'or') % Projection outcp = [1 1; 160 -40; 220 220; 12 140]; T = maketform ('projective', incp, outcp); subplot (2,3,6); [im2 xdata ydata] = imtransform (im, T, 'udata', udata, 'vdata', vdata, 'fillvalues', 1 ); imh = imshow (im2); set (imh, 'xdata', xdata, 'ydata', ydata) set (gca, 'xlim', xdata, 'ylim', ydata) axis on, hold on, xlabel ('Projection'); plot (outcp(:,1), outcp(:,2), 'or') ***** demo ## Streched image rad = 2; % minimum value: 4/pi [uu vv] = meshgrid ((-2:2)/rad, (-2:2)/rad); rescfactor = sin ((uu.^2 + vv.^2).^.5); inpts = [(reshape (uu, numel (uu), 1)), (reshape (vv, numel (uu), 1))]; xx = rescfactor .* sign(uu); yy = rescfactor .* sign(vv); outpts = [reshape(xx, numel (xx), 1) reshape(yy, numel (yy), 1)]; T = cp2tform (inpts, outpts, "polynomial", 4); figure; subplot (1,2,1) im = zeros (800, 800, 3); im(:,:,1) = checkerboard (100) > 0.2; im(:,:,3) = checkerboard (100) < 0.2; [im2 xdata ydata] = imtransform (im, T, 'udata', [-2 2], 'vdata', [-2 2], 'fillvalues', [0 1 0]); imh = imshow (im2); set (imh, 'xdata', xdata, 'ydata', ydata) set (gca, 'xlim', xdata, 'ylim', ydata) [im cmap] = imread ('default.img'); subplot (1,2,2) [im2 xdata ydata] = imtransform (im, T, 'udata', [-1 1], 'vdata', [-1 1], 'fillvalues', round (length (cmap) / 2)); imh = imshow (im2, cmap); ***** test im = checkerboard (); incp = [0 0; 0 1; 1 1]; scl = 10; outcp = scl * incp; T = maketform ('affine', incp, outcp); [im2 xdata ydata] = imtransform (im, T, 'udata', [0 1], 'vdata', [0 1], 'size', [500 500]); assert (xdata, scl * ([0 1])) assert (ydata, scl * ([0 1])) assert (size (im2), [500 500]) ***** test im = checkerboard (); incp = [0 0; 0 1; 1 1]; scl = 10; outcp = scl * incp; xyscale = scl; T = maketform ('affine', incp, outcp); [im2 xdata ydata] = imtransform (im, T, 'xyscale', xyscale); assert (size (im2), size (im), 1) ***** test im = checkerboard (100, 10, 4); theta = 2 * pi; T = maketform ("affine", [cos(theta) -sin(theta); ... sin(theta) cos(theta); 0 0]); im2 = imtransform (im, T, "nearest", "xdata", [1 800], "ydata", [1 2000]); im = im(2:end-1, 2:end-1); %avoid boundaries im2 = im2(2:end-1, 2:end-1); assert (im, im2) ***** test im = checkerboard (20, 10, 4); theta = pi/6; T = maketform ('affine', [cos(theta) -sin(theta); ... sin(theta) cos(theta); 0 0]); [im2, xdata] = imtransform (im, T); nu = columns(im); nv = rows(im); nx = xdata(2); diag = sqrt (nu^2 + nv^2); ang = atan (nv / nu); assert (nx, diag * abs (cos (theta - ang)), diag * 1 / size (im2, 2)) ***** test im = rand (2); tmat = [eye(2); 0 0]; T = maketform ("affine", tmat); im2 = imtransform (im, T, "xdata", [1 3]); assert (im2(:,3), zeros (2,1)) ***** test im = rand (2); tmat = [eye(2); 0 0]; T = maketform ('affine', tmat); im2 = imtransform (im, T, "xdata", [1 3]); assert (size (im2), [2 3]) ***** test im = rand (2); tmat = [eye(2); 0 0]; T = maketform ('affine', tmat); im2 = imtransform (im, T, "xyscale", [0.5 0.5]); assert (size (im2), [3 3]) ***** test im = [1,2,3,4; 5,6,7,8; 9,10,11,12; 13,14,15,16]; tmat = [eye(2); 0 0]; T = maketform ('affine', tmat); im2 = imtransform (im, T, 'xdata', [1 4], 'ydata', [4 1]); assert (im2, [13,14,15,16; 9,10,11,12; 5,6,7,8; 1,2,3,4]) im2 = imtransform (im, T, 'xdata', [4 1], 'ydata', [1 4]); assert (im2, [4,3,2,1; 8,7,6,5; 12,11,10,9; 16,15,14,13]) [im2, xd, yd] = imtransform (im, T, 'xdata', [4 1], 'ydata', [4 1]); assert (im2, [16,15,14,13; 12,11,10,9; 8,7,6,5; 4,3,2,1]) assert (xd, [4 1]) assert (yd, [4 1]) ***** error imtransform () ***** error imtransform (rand(2)) ***** error ... imtransform (rand(2), maketform ('affine', [eye(2); 0 0]), ... 'udata', [1 2], 'vdata', [2 1]); ***** error ... imtransform (rand(2), maketform ('affine', [eye(2); 0 0]), ... 'udata', [2 1], 'vdata', [1 2]); 12 tests, 12 passed, 0 known failure, 0 skipped [inst/regionprops.m] >>>>> /<>/inst/regionprops.m ***** shared bw2d, gray2d, bw2d_over_bb, bw2d_insides bw2d = logical ([ 0 1 0 1 1 0 0 1 1 0 1 1 0 1 0 0 0 0 0 0 0 1 1 1 0 0 1 1 0 1]); gray2d = [ 2 4 0 7 5 2 3 0 4 9 3 7 0 5 3 4 8 1 9 2 0 5 8 6 8 9 7 2 2 5]; ## For testing overlapping bounding boxes bw2d_over_bb = logical ([ 0 1 1 1 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 0 1 1 0 0 1 1 0 0 0 0 0 1 1 1 1]); ## For testing when there's regions inside regions bw2d_insides = logical ([ 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 1 0 0 0 0 1 0 0 1 0 1 1 0 1 0 0 1 0 1 1 0 1 0 0 1 0 0 0 0 1 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0]); ***** function c = get_2d_centroid_for (idx) subs = ind2sub ([5 6], idx); m = false ([5 6]); m(idx) = true; y = sum ((1:5)' .* sum (m, 2) /sum (m(:))); x = sum ((1:6) .* sum (m, 1) /sum (m(:))); c = [x y]; ***** endfunction ***** assert (regionprops (bw2d, "Area"), struct ("Area", {8; 6})) ***** assert (regionprops (double (bw2d), "Area"), struct ("Area", {14})) ***** assert (regionprops (bwlabel (bw2d, 4), "Area"), struct ("Area", {4; 6; 4})) ***** assert (regionprops (bw2d, "PixelIdxList"), struct ("PixelIdxList", {[6; 7; 12; 8; 16; 21; 22; 27] [15; 19; 20; 24; 29; 30]})) ***** assert (regionprops (bwlabel (bw2d, 4), "PixelIdxList"), struct ("PixelIdxList", {[6; 7; 8; 12] [15; 19; 20; 24; 29; 30] [16; 21; 22; 27]})) ***** assert (regionprops (bw2d, "PixelList"), struct ("PixelList", {[2 1; 2 2; 3 2; 2 3; 4 1; 5 1; 5 2; 6 2] [3 5; 4 4; 4 5; 5 4; 6 4; 6 5]})) ***** assert (regionprops (bwlabel (bw2d, 4), "PixelList"), struct ("PixelList", {[2 1; 2 2; 2 3; 3 2] [3 5; 4 4; 4 5; 5 4; 6 4; 6 5] [4 1; 5 1; 5 2; 6 2]})) ***** assert (regionprops (bw2d, gray2d, "PixelValues"), struct ("PixelValues", {[4; 0; 4; 5; 7; 5; 3; 7] [7; 5; 2; 8; 6; 5]})) ***** assert (regionprops (bw2d, gray2d, "MaxIntensity"), struct ("MaxIntensity", {7; 8})) ***** assert (regionprops (bw2d, gray2d, "MinIntensity"), struct ("MinIntensity", {0; 2})) ***** assert (regionprops (bw2d, "BoundingBox"), struct ("BoundingBox", {[1.5 0.5 5 3]; [2.5 3.5 4 2]})) ***** assert (regionprops (bw2d, "Centroid"), struct ("Centroid", {get_2d_centroid_for([6 7 8 12 16 21 22 27]) get_2d_centroid_for([15 19 20 24 29 30])}), 5 * eps) ***** test props = struct ("Area", {8; 6}, "Centroid", {get_2d_centroid_for([6 7 8 12 16 21 22 27]) get_2d_centroid_for([15 19 20 24 29 30])}, "BoundingBox", {[1.5 0.5 5 3]; [2.5 3.5 4 2]}); assert (regionprops (bw2d, "basic"), props, 5 * eps) assert (regionprops (bwconncomp (bw2d, 8), "basic"), props, 5 * eps) assert (regionprops (bwlabeln (bw2d, 8), "basic"), props, 5 * eps) ***** test props = struct ("Area", {4; 6; 4}, "Centroid", {get_2d_centroid_for([6 7 8 12]) get_2d_centroid_for([15 19 20 24 29 30]) get_2d_centroid_for([16 21 22 27])}, "BoundingBox", {[1.5 0.5 2 3]; [2.5 3.5 4 2]; [3.5 0.5 3 2]}); assert (regionprops (bwconncomp (bw2d, 4), "basic"), props, 5 * eps) assert (regionprops (bwlabeln (bw2d, 4), "basic"), props, 5 * eps) ***** assert (regionprops (double (bw2d), "basic"), struct ("Area", 14, "Centroid", get_2d_centroid_for (find (bw2d)), "BoundingBox", [1.5 0.5 5 5]), eps*1000) ***** assert (regionprops ([0 0 1], "Centroid").Centroid, [3 1]) ***** assert (regionprops ([0 0 1; 0 0 0], "Centroid").Centroid, [3 1]) ***** assert (regionprops ([0 1 1], "Centroid").Centroid, [2.5 1]) ***** assert (regionprops ([0 1 1; 0 0 0], "Centroid").Centroid, [2.5 1]) ***** test a = zeros (2, 3, 3); a(:, :, 1) = [0 1 0; 0 0 0]; a(:, :, 3) = a(:, :, 1); c = regionprops (a, "centroid"); assert (c.Centroid, [2 1 2]) ***** test d1=2; d2=4; d3=6; a = ones (d1, d2, d3); c = regionprops (a, "centroid"); assert (c.Centroid, [mean(1:d2), mean(1:d1), mean(1:d3)], eps*1000) ***** test a = [0 0 2 2; 3 3 0 0; 0 1 0 1]; c = regionprops (a, "centroid"); assert (c(1).Centroid, [3 3]) assert (c(2).Centroid, [3.5 1]) assert (c(3).Centroid, [1.5 2]) ***** test ***** assert (regionprops (bw2d, gray2d, "WeightedCentroid"), struct ("WeightedCentroid", {sum([2 1; 2 2; 3 2; 2 3; 4 1; 5 1; 5 2; 6 2] .* ([4; 0; 4; 5; 7; 5; 3; 7] / 35)) sum([3 5; 4 4; 4 5; 5 4; 6 4; 6 5] .* ([7; 5; 2; 8; 6; 5] / 33))}), 5 * eps) ***** test img = zeros (3, 9); img(2, 1:9) = 0:0.1:0.8; bw = im2bw (img, 0.5); props = regionprops (bw, img, "WeightedCentroid"); ix = 7:9; x = sum (img(2,ix) .* (ix)) / sum (img(2,ix)); assert (props(1).WeightedCentroid(1), x, 10*eps) assert (props(1).WeightedCentroid(2), 2, 10*eps) ***** assert (regionprops (bw2d, gray2d, "MeanIntensity"), struct ("MeanIntensity", {mean([4 0 5 4 7 5 3 7]) mean([7 5 2 8 6 5])})) ***** assert (regionprops (bwlabel (bw2d, 4), gray2d, "MeanIntensity"), struct ("MeanIntensity", {mean([4 0 5 4]) mean([7 5 2 8 6 5]) mean([7 5 3 7])})) ***** assert (regionprops (bw2d, "SubarrayIdx"), struct ("SubarrayIdx", {{[1 2 3], [2 3 4 5 6]} {[4 5], [3 4 5 6]}})) ***** assert (regionprops (bwlabel (bw2d, 4), "SubarrayIdx"), struct ("SubarrayIdx", {{[1 2 3], [2 3]} {[4 5], [3 4 5 6]} {[1 2], [4 5 6]}})) ***** test out = struct ("Image", {logical([1 0 1 1 0; 1 1 0 1 1; 1 0 0 0 0]) logical([0 1 1 1; 1 1 0 1])}); assert (regionprops (bw2d, "Image"), out) assert (regionprops (bw2d, gray2d, "Image"), out) assert (regionprops (bwlabel (bw2d), "Image"), out) ***** assert (regionprops (bwlabel (bw2d, 4), "Image"), struct ("Image", {logical([1 0; 1 1; 1 0]) logical([0 1 1 1; 1 1 0 1]) logical([1 1 0; 0 1 1])})) ***** test out = struct ("Image", {logical([0 1 1 1; 1 1 0 0; 1 0 0 0; 1 0 0 0]) logical([1 1 0 0; 1 1 0 0; 1 1 1 1]) logical([1 1; 0 1; 0 1])}); assert (regionprops (bw2d_over_bb, "Image"), out) assert (regionprops (bwlabel (bw2d_over_bb), "Image"), out) ***** test out = struct ("Image", {logical([1 1 1 1 1 1 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 1 1 1 1 1 1 1]) logical([1 1; 1 1])}); assert (regionprops (bw2d_insides, "Image"), out) assert (regionprops (bwlabel (bw2d_insides), "Image"), out) ***** test l = uint8 ([ 0 0 0 0 0 0 0 1 1 1 1 0 0 1 2 2 1 0 0 1 2 2 1 0 0 1 1 1 1 0 0 0 0 0 0 0 ]); assert (regionprops (l, "EulerNumber"), struct ("EulerNumber", {0; 1})) l = uint8 ([ 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 1 2 2 2 1 0 0 1 2 3 2 1 0 0 1 2 2 2 1 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 ]); assert (regionprops (l, "EulerNumber"), struct ("EulerNumber", {0; 0; 1})) ***** test l = uint8 ([ 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 1 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 0 0 1 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 ]); assert (regionprops (l, "EulerNumber"), struct ("EulerNumber", 1)) ***** test l = uint8 ([ 1 1 1 1 1 1 1 1 1 2 1 2 2 1 1 2 1 2 1 2 1 1 1 2 1 2 1 1 1 2 1 2 1 2 1 1 2 2 1 2 1 1 1 1 1 1 1 1 1 ]); assert (regionprops (l, "EulerNumber"), struct ("EulerNumber", {-9; -4})) ***** test l = uint8 ([ 1 1 1 1 1 1 1 1 1 4 1 5 5 1 1 3 1 4 1 5 1 1 1 3 1 4 1 1 1 2 1 3 1 4 1 1 2 2 1 3 1 1 1 1 1 1 1 1 1 ]); assert (regionprops (l, "EulerNumber"), struct ("EulerNumber", {-9; 1; 1; 1; 1})) ***** test l = uint8 ([ 1 1 1 1 1 1 1 0 1 2 1 2 2 1 1 2 1 2 1 2 1 1 1 2 1 2 1 1 1 2 1 2 1 2 1 1 2 2 1 2 1 1 1 1 1 1 1 1 1 ]); filled = { logical([ 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ]); logical([ 0 1 0 1 1 1 1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 0 1 0 ]); }; assert (regionprops (l, {"FilledImage", "FilledArea"}), struct ("FilledImage", filled, "FilledArea", {48; 19})) ***** test l = uint8 ([ 0 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 0 1 0 0 0 0 0 0 0 0 ]); filled = logical ([ 1 0 1 0 1 1 0 1 0 1 ]); assert (regionprops (l, {"FilledImage", "FilledArea"}), struct ("FilledImage", filled, "FilledArea", 6)) l = uint8 ([ 2 2 2 2 2 2 2 2 1 2 1 2 1 2 2 1 2 1 2 1 2 2 2 2 2 2 2 2 ]); filled = { logical([ 1 0 1 0 1 1 0 1 0 1 ]); true(4, 7) }; assert (regionprops (l, {"FilledImage", "FilledArea"}), struct ("FilledImage", filled, "FilledArea", {6; 28})) ***** test l = uint8 ([ 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 1 2 2 2 1 0 0 1 2 3 2 1 0 0 1 2 2 2 1 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 ]); filled = {true(5, 5); true(3, 3); true}; assert (regionprops (l, {"FilledImage", "FilledArea"}), struct ("FilledImage", filled, "FilledArea", {25; 9; 1})) ***** test l = uint8 ([ 1 1 1 2 0 0 1 0 2 1 2 0 1 2 0 1 0 2 1 2 1 1 0 2 0 1 2 2 2 2 ]); filled = { logical([ 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 0 ]); logical([ 0 0 1 0 0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 ]) }; assert (regionprops (l, {"FilledImage", "FilledArea"}), struct ("FilledImage", filled, "FilledArea", {16; 18})) ***** test bw = false (5, 5, 5); bw(2:4, 2:4, [1 5]) = true; bw(2:4, [1 5], 2:4) = true; bw([1 5], 2:4, 2:4) = true; filled = bw; filled(2:4, 2:4, 2:4) = true; assert (regionprops (bw, {"FilledImage", "FilledArea"}), struct ("FilledImage", filled, "FilledArea", 81)) ***** test l = uint8 ([ 1 1 1 2 0 0 1 0 2 1 2 0 1 2 0 1 0 2 1 2 1 1 0 2 0 1 2 2 2 2 ]); assert (regionprops (l, {"Extent"}), struct ("Extent", {0.55; 0.44})) ***** test bw = logical ([0 0 0; 0 1 0; 0 0 0]); assert (regionprops (bw, {"MinorAxisLength", "MajorAxisLength", ... "Eccentricity", "Orientation"}), struct ("MajorAxisLength", 4 .* sqrt (1/12), "MinorAxisLength", 4 .* sqrt (1/12), "Eccentricity", 0, "Orientation", 0)) ***** test a = eye (4); t = regionprops (a, "majoraxislength"); assert (t.MajorAxisLength, 6.4291, 1e-3); t = regionprops (a, "minoraxislength"); assert(t.MinorAxisLength, 1.1547 , 1e-3); t = regionprops (a, "eccentricity"); assert (t.Eccentricity, 0.98374 , 1e-3); t = regionprops (a, "orientation"); assert (t.Orientation, -45); t = regionprops (a, "equivdiameter"); assert (t.EquivDiameter, 2.2568, 1e-3); ***** test b = ones (5); t = regionprops (b, "majoraxislength"); assert (t.MajorAxisLength, 5.7735 , 1e-3); t = regionprops (b, "minoraxislength"); assert (t.MinorAxisLength, 5.7735 , 1e-3); t = regionprops (b, "eccentricity"); assert (t.Eccentricity, 0); t = regionprops (b, "orientation"); assert (t.Orientation, 0); t = regionprops (b, "equivdiameter"); assert (t.EquivDiameter, 5.6419, 1e-3); ***** test c = [0 0 1; 0 1 1; 1 1 0]; t = regionprops (c, "minoraxislength"); assert (t.MinorAxisLength, 1.8037 , 1e-3); t = regionprops (c, "majoraxislength"); assert (t.MajorAxisLength, 4.1633 , 1e-3); t = regionprops (c, "eccentricity"); assert (t.Eccentricity, 0.90128 , 1e-3); t = regionprops (c, "orientation"); assert (t.Orientation, 45); t = regionprops (c, "equivdiameter"); assert (t.EquivDiameter, 2.5231, 1e-3); ***** test bw = logical ([0 0 0 0; 0 1 1 0; 0 0 0 0]); props = regionprops (bw, "Orientation"); assert ([props.Orientation], 0, 0) props = regionprops (bw', "Orientation"); assert ([props.Orientation], 90, 0) bw = logical ([0 0 0 0; 0 1 1 0; 0 1 1 0; 0 0 0 0]); props = regionprops (bw, "Orientation"); assert ([props.Orientation], 0, 0) bw = logical ([1 1 0 0 0 ; 0 0 1 1 0 ; 0 0 0 0 0; 0 0 0 0 0]); props = regionprops (bw, "Orientation"); assert ([props.Orientation], -22.5, eps (22.5)) bw = logical ([ 1 1 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 1 0 1 1 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0 0]); props = regionprops (bw, "Orientation"); assert ([props.Orientation], [0 -67.5 0 90]) ***** test f = [0 0 0 0; 1 1 1 1; 0 1 1 1; 0 0 0 0]; t = regionprops (f, "Extrema"); shouldbe = [0.5 1.5; 4.5 1.5; 4.5 1.5; 4.5 3.5; 4.5 3.5; 1.5 3.5; 0.5 2.5; 0.5 1.5]; assert (t.Extrema, shouldbe, eps); ***** test bw = false (5); bw([8 12 13 14 18]) = true; extrema = [2 1; 3 1; 4 2; 4 3; 3 4; 2 4; 1 3; 1 2] + 0.5; assert (regionprops (bw, "extrema"), struct ("Extrema", extrema)) ***** test ext1 = [1 0; 5 0; 6 1; 6 2; 2 3; 1 3; 1 3; 1 0] + 0.5; ext2 = [3 3; 6 3; 6 3; 6 5; 6 5; 2 5; 2 5; 2 4] + 0.5; assert (regionprops (bw2d, "extrema"), struct ("Extrema", {ext1; ext2})) ***** assert (regionprops (bw2d, "equivDiameter"), struct ("EquivDiameter", {sqrt(4*8/pi); sqrt(4*6/pi)})) ***** assert (regionprops (bw2d_over_bb, "equivDiameter"), struct ("EquivDiameter", {sqrt(4*7/pi); sqrt(4*8/pi); sqrt(4*4/pi)})) ***** assert (regionprops (bw2d_insides, "equivDiameter"), struct ("EquivDiameter", {sqrt(4*20/pi); sqrt(4*4/pi)})) ***** test I = zeros (40); disk = fspecial ("disk",10); disk = disk ./ max (disk(:)); I(10:30, 10:30) = disk; bw = im2bw (I, 0.5); props = regionprops (bw, "PerimeterOld"); assert (props.PerimeterOld, 10*4 + (sqrt (2) * 4)*4, eps*100) props = regionprops (bw, "Perimeter"); assert (props.Perimeter, 59.876) props = regionprops (bwconncomp (bw), "PerimeterOld"); assert (props.PerimeterOld, 10*4 + (sqrt (2) * 4)*4, eps*100) props = regionprops (bwconncomp (bw), "Perimeter"); assert (props.Perimeter, 59.876) ***** assert (regionprops (bw2d, "PerimeterOld"), struct ("PerimeterOld", {(sqrt (2)*6 + 4); (sqrt (2)*3 + 4)}), eps*10) ***** assert (regionprops (bw2d, "Perimeter"), struct ("Perimeter", {11.81; 7.683})) ***** assert (regionprops (bw2d_insides, "PerimeterOld"), struct ("PerimeterOld", {20; 4})) ***** assert (regionprops (bw2d_insides, "Perimeter"), struct ("Perimeter", {19.236; 3.556})) ***** assert (regionprops (bwconncomp (bw2d_insides), "PerimeterOld"), struct ("PerimeterOld", {20; 4})) ***** assert (regionprops (bwconncomp (bw2d_insides), "Perimeter"), struct ("Perimeter", {19.236; 3.556})) ***** test BW = false (5); BW(2:4, 2:4) = true; # region with simple shape hull_test = [4.5 4; 4.5 2; 4 1.5; 2 1.5; 1.5 2; 1.5 4; 2 4.5; 4 4.5]; cimage_test = true(3); carea_test = 9; csolid_test = 1; props = regionprops (BW, {'ConvexHull', 'ConvexImage', 'ConvexArea', 'Solidity'}); hull = props.ConvexHull; # test only for existence of the correct corner points # because Matlab returns more points (than necessary) # (The correct shape of the ConvexHull results will only # be tested indirectly via the tests of ConvexArea.) assert (sum (ismember (hull_test, hull, "rows")), rows (hull_test)) assert (all (hull(1,:) == hull(end,:))) cimage = props.ConvexImage; assert (cimage, cimage_test); carea = props.ConvexArea; assert (carea, carea_test); csolid = props.Solidity; assert (csolid, csolid_test); ***** test BW = logical ([... # region with non-trivial shape 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 0 1 1 1 1 0 0 0 0 0 0 0 1 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]); hull_test = [4 1.5; 1.5 4; 7 9.5; 13 9.5; 13.5 9; 13.5 7; 11 4.5; 7 1.5]; cimage_test = logical ([... 0 0 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1]); carea_test = 62; csolid_test = 0.8548; props = regionprops (BW, {'ConvexHull', 'ConvexImage', 'ConvexArea', 'Solidity'}); hull = props.ConvexHull; assert (sum (ismember (hull_test, hull, "rows")), rows (hull_test)) assert (all (hull(1,:) == hull(end,:))) cimage = props.ConvexImage; assert (cimage, cimage_test); carea = props.ConvexArea; assert (carea, carea_test); csolid = props.Solidity; assert (csolid, csolid_test, 1e-4); ***** test BW = false (7); BW(2:6, 2:6) = true; BW(4,4) = false; # region with hole hull_test = [6.5 6; 6.5 2; 6 1.5; 2 1.5; 1.5 2; 1.5 6; 2 6.5; 6 6.5]; cimage_test = true(5); carea_test = 25; csolid_test = 0.96; props = regionprops (BW, {'ConvexHull', 'ConvexImage', 'ConvexArea', 'Solidity'}); hull = props.ConvexHull; assert (sum (ismember (hull_test, hull, "rows")), rows (hull_test)) assert (all (hull(1,:) == hull(end,:))) cimage = props.ConvexImage; assert (cimage, cimage_test); carea = props.ConvexArea; assert (carea, carea_test); csolid = props.Solidity; assert (csolid, csolid_test, 1e-4); ***** test BW = false (5); BW(3, 3) = true; # region with single pixel hull_test = [3.5 3; 3 2.5; 2.5 3]; cimage_test = true; carea_test = 1; csolid_test = 1; props = regionprops (BW, {'ConvexHull', 'ConvexImage', 'ConvexArea', 'Solidity'}); hull = props.ConvexHull; assert (sum (ismember (hull_test, hull, "rows")), rows (hull_test)) assert (all (hull(1,:) == hull(end,:))) cimage = props.ConvexImage; assert (cimage, cimage_test); carea = props.ConvexArea; assert (carea, carea_test); csolid = props.Solidity; assert (csolid, csolid_test); ***** test BW = false (5); BW(3, 2:4) = true; # regions with pixel line BW2 = BW'; hull_test = [2 2.5; 1.5 3; 2 3.5; 4 3.5; 4.5 3; 4 2.5]; hull_test2 = fliplr (hull_test); cimage_test = true(1,3); cimage_test2 = cimage_test'; carea_test = 3; csolid_test = 1; props = regionprops (BW, {'ConvexHull', 'ConvexImage', 'ConvexArea', 'Solidity'}); hull = props.ConvexHull; assert (sum (ismember (hull_test, hull, "rows")), rows (hull_test)) assert (all (hull(1,:) == hull(end,:))) cimage = props.ConvexImage; assert (cimage, cimage_test); carea = props.ConvexArea; assert (carea, carea_test); csolid = props.Solidity; assert (csolid, csolid_test); props2 = regionprops (BW2, {'ConvexHull', 'ConvexImage', 'ConvexArea', 'Solidity'}); hull2 = props2.ConvexHull; assert (sum (ismember (hull_test2, hull2, "rows")), rows (hull_test2)) assert (all (hull2(1,:) == hull2(end,:))) cimage2 = props2.ConvexImage; assert (cimage2, cimage_test2); carea2 = props2.ConvexArea; assert (carea2, carea_test); csolid2 = props2.Solidity; assert (csolid2, csolid_test); ***** test BW = logical ([ ... 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0]); # two seperate regions hull_test_1 = [1.5 1; 1 0.5; 0.5 1; 0.5 4; 1 4.5; 1.5 4]; hull_test_2 = [3.5 1; 3 0.5; 2.5 1; 2.5 4; 3 4.5; 3.5 4]; cimage_test_1 = true(4,1); cimage_test_2 = true(4,1); carea_test1 = 4; carea_test2 = 4; csolid_test1 = 1; csolid_test2 = 1; props = regionprops (BW, {'ConvexHull', 'ConvexImage', 'ConvexArea', 'Solidity'}); hull1 = {props.ConvexHull}{1}; assert (sum (ismember (hull_test_1, hull1, "rows")), rows (hull_test_1)) assert (all (hull1(1,:) == hull1(end,:))) hull2 = {props.ConvexHull}{2}; assert (sum (ismember (hull_test_2, hull2, "rows")), rows (hull_test_2)) assert (all (hull2(1,:) == hull2(end,:))) cimage1 = {props.ConvexImage}{1}; assert (cimage1, cimage_test_1); cimage2 = {props.ConvexImage}{2}; assert (cimage2, cimage_test_2); carea1 = {props.ConvexArea}{1}; assert (carea1, carea_test1); carea2 = {props.ConvexArea}{2}; assert (carea2, carea_test2); csolid1 = {props.Solidity}{1}; assert (csolid1, csolid_test1); csolid2 = {props.Solidity}{2}; assert (csolid2, csolid_test2); ***** test L = zeros (5); L(1:2:5, :) = 1; # labelled region with 3 disconnected parts hull_test = [5.5 5; 5.5 1; 5 0.5; 1 0.5; 0.5 1; 0.5 5; 1 5.5; 5 5.5]; cimage_test = true(5); carea_test = 25; csolid_test = 0.6; props = regionprops (L, {'ConvexHull', 'ConvexImage', 'ConvexArea', 'Solidity'}); hull = props.ConvexHull; assert (sum (ismember (hull_test, hull, "rows")), rows (hull_test)) assert (all (hull(1,:) == hull(end,:))) cimage = props.ConvexImage; assert (cimage, cimage_test); carea = props.ConvexArea; assert (carea, carea_test); csolid = props.Solidity; assert (csolid, csolid_test); ***** xtest ## Matlab compatible, currently fails because of bug #50188 BW = false(4,16); BW(2,2) = true; BW(3,2:end-1) = true; # L-shaped region (small angle) hull_test = [2 1.5; 1.5 2; 1.5 3; 2 3.5; 15 3.5; 15.5 3; 15 2.5]; cimage_test = true (2,14); cimage_test(1, 8:end) = false; # this is the Matlab result carea_test = 21; csolid_test = 0.7143; props = regionprops (BW, {'ConvexHull', 'ConvexImage', 'ConvexArea', 'Solidity'}); hull = props.ConvexHull; assert (sum (ismember (hull_test, hull, "rows")), rows (hull_test)) assert (all (hull(1,:) == hull(end,:))) cimage = props.ConvexImage; assert (cimage, cimage_test); carea = props.ConvexArea; assert (carea, carea_test); csolid = props.Solidity; assert (csolid, csolid_test, 1e-4); !!!!! known failure ASSERT errors for: assert (cimage,cimage_test) Location | Observed | Expected | Reason (1,8) 1 0 Abs err 1 exceeds tol 0 by 1 ***** assert (regionprops ([1 0 1; 1 0 1], "Area"), struct ("Area", 4)) ***** assert (regionprops ([1 0 2; 1 1 2], "Area"), struct ("Area", {3; 2})) ***** assert (regionprops ([1 0 3; 1 1 3], "Area"), struct ("Area", {3; 0; 2})) ***** assert (size (regionprops ([1 0 0; 0 0 2], "Area")), [2, 1]) ***** error regionprops ([1 -2 0 3]) ***** error regionprops ([1 1.5 0 3]) ***** test im = rand (5); ## First do this so we get a list of all supported properties and don't ## have to update the list each time. bw = false (5); bw(13) = true; props = regionprops (bw, im, "all"); all_props = fieldnames (props); bw = false (5); props = regionprops (bw, im, "all"); assert (size (props), [0 1]) assert (sort (all_props), sort (fieldnames (props))) ***** test im = rand (5); ## First do this so we get a list of all supported properties and don't ## have to update the list each time. labeled = zeros (5); labeled(13) = 1; props = regionprops (labeled, im, "all"); all_props = fieldnames (props); labeled = zeros (5); props = regionprops (labeled, im, "all"); assert (size (props), [0 1]) assert (sort (all_props), sort (fieldnames (props))) ***** test im = rand (5); ## First do this so we get a list of all supported properties and don't ## have to update the list each time. bw = false (5); bw(13) = true; props = regionprops (bwconncomp (bw), im, "all"); all_props = fieldnames (props); bw = false (5); props = regionprops (bwconncomp (bw), im, "all"); assert (size (props), [0 1]) assert (sort (all_props), sort (fieldnames (props))) ***** test bw = logical ([ 0 1 1 1 1 0 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 0]); props = regionprops (bw, "MajorAxisLength", "MinorAxisLength", "Orientation"); assert ([props.MajorAxisLength] ,[4.51354115 3.65148372], 1.e-8) assert ([props.MinorAxisLength], [2.01801654 1.82574186], 1.e-8) assert ([props.Orientation], [12.93317840 18.43494882], 1.e-8) ***** warning regionprops (rand (5, 5, 5) > 0.5, {"perimeter", "extrema"}); ***** warning regionprops (rand (5, 5) > 0.5, {"minintensity", "weightedcentroid"}); ***** error regionprops ([0 -1 3 4; 0 -1 3 4]) ***** error regionprops ([0 1.5 3 4; 0 1.5 3 4]) ***** error regionprops (int8 ([0 -1 3 4; 0 -1 3 4])) ***** test # bug #52926 ## Perimeter of objects that would be connected with connectivity 8 ## but have been labeled with connectivity 4. BW = logical ([1 1 1 0 0 0 0 0 1 1 1 0 1 1 0 0 1 1 1 0 1 1 0 0 1 1 1 0 0 0 1 0 1 1 1 0 0 0 1 0 1 1 1 0 0 0 1 0 1 1 1 0 0 1 1 0 1 1 1 0 0 0 0 0]); L = bwlabel (BW, 4); props = regionprops(L, "PerimeterOld"); assert ([props.PerimeterOld], [18 4 6+sqrt(2)]) props = regionprops(L, "Perimeter"); assert ([props.Perimeter], [17.276 3.556 7.013]) L = bwlabel (BW, 8); props = regionprops(L, "PerimeterOld"); assert ([props.PerimeterOld], [18 10+3*sqrt(2)]) props = regionprops(L, "Perimeter"); assert ([props.Perimeter], [17.276 13.108]) ***** test I = zeros(5); I(3,3) = 1; props = regionprops(I, "Perimeter"); assert ([props.Perimeter], [0]) I = zeros(5); I(3,3:4) = 1; props = regionprops (I, "Perimeter"); assert ([props.Perimeter], [1.96]) I = zeros(5); I(3:4,3) = 1; props = regionprops (I, "Perimeter"); assert ([props.Perimeter], [1.96]) I = zeros(5); I(3,3) = 1; I(4,4) = 1; props = regionprops (I, "Perimeter"); assert ([props.Perimeter], [2.812]) I = zeros(5); I(3,4) = 1; I(4,3) = 1; props = regionprops (I, "Perimeter"); assert ([props.Perimeter], [2.812]) I = zeros(5); I(3:4,3:4) = 1; props = regionprops (I, "Perimeter"); assert ([props.Perimeter], [3.556]) I = zeros(5); I(3:4,3:4) = 1; I(4,5) = 1; props=regionprops (I, "Perimeter"); assert ([props.Perimeter], [4.962]) I = zeros(5); I(3:4,3:4) = 1; I(5,5) = 1; props = regionprops (I, "Perimeter"); assert ([props.Perimeter], [6.277], 4*eps) I = zeros(5); I(2,3) = 1; I(3,2:4) = 1; I(4,3) = 1; props = regionprops (I, "Perimeter"); assert ([props.Perimeter], [5.624]) I = zeros(5); I(2,3) = 1; I(3,2:4) = 1; I(4,3) = 1; I(5,3) = 1; props = regionprops (I, "Perimeter"); assert ([props.Perimeter], [7.402], 4*eps) I = zeros(5); I(2,3) = 1; I(3,2:4) = 1; I(4,3) = 1; I(5,4) = 1; props = regionprops (I, "Perimeter"); assert ([props.Perimeter], [8.436]) I = zeros(5); I(2,1:4) = 1; I(3,4) = 1; props = regionprops (I, "Perimeter"); assert ([props.Perimeter], [7.013]) ***** test # bug #61827 L = uint8 (checkerboard); props = regionprops (L, "Centroid"); assert ([props.Centroid], [40.5, 40.5], 1e-10) 87 tests, 86 passed, 1 known failure, 0 skipped [inst/bwperim.m] >>>>> /<>/inst/bwperim.m ***** test in = [ 1 1 1 1 0 1 1 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 0 1 0 1 1 0]; out = [1 1 1 1 0 1 1 0 1 1 1 1 0 1 1 0 0 1 1 0 1 0 1 0 1 0 0 0 1 1 1 0 0 1 0 1 0 1 0 1 1 0 1 0 1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1 1 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 1 1 0 1 1 0 0 0 1 1 0 0 1 1 1 1 1 1 0 1 0 1 1 0]; assert (bwperim (in), logical (out)) assert (bwperim (in, 4), logical (out)) out = [1 1 1 1 0 1 1 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 0 1 1 0 1 1 1 1 0 1 1 0 1 0 1 0 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 0 1 0 1 1 0 0 0 0 1 1 1 1 0 1 0 0 0 0 1 1 1 1 1 1 0 0 1 1 1 0 0 1 1 1 1 1 1 0 1 0 1 1 0]; assert (bwperim (in, 8), logical (out)) out = [1 1 1 1 0 1 1 0 1 1 1 0 0 0 0 1 0 0 1 0 1 0 0 0 0 0 0 1 0 1 1 0 1 0 0 0 0 0 0 1 1 0 0 0 0 1 0 1 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 1 0 0 0 0 1 1 0 0 1 1 0 0 1 0 1 0 0 1 1 1 1 1 1 0 1 0 1 1 0]; assert (bwperim (in, [1 0 0; 0 1 0; 0 0 1]), logical (out)) ***** test in = [ 0 0 0 0 0 0 0 0 0 5 0 0 1 9 0 Inf 9 7 0 0 0 0 1.5 5 7 1 0 0 0 0.5 -1 89 i 0 0 0 4 10 15 1 0 0 0 0 0 0 0 0 0]; out = [0 0 0 0 0 0 0 0 0 1 0 0 1 1 0 1 0 1 0 0 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0]; assert (bwperim (in), logical (out)) ***** test in = reshape (magic(16), [8 8 4]) > 50; out(:,:,1) = [ 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0]; out(:,:,2) = [ 1 1 0 1 0 1 1 1 0 1 1 0 1 1 0 1 0 1 0 0 0 1 0 1 1 0 1 0 0 0 1 1 1 0 0 1 0 1 0 1 1 0 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0]; out(:,:,3) = [ 1 1 0 1 0 1 1 1 0 1 1 0 1 1 0 1 0 1 0 0 0 1 0 1 1 0 0 0 0 0 1 1 1 0 0 1 0 1 0 1 1 0 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0]; out(:,:,4) = [ 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0]; assert (bwperim (in), logical (out)) out(:,:,1) = [ 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0]; out(:,:,2) = [ 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 0 1 1 0 0 1 0 1 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0]; out(:,:,3) = [ 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 0 1 0 0 0 1 0 1 1 1 0 0 0 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0]; out(:,:,4) = [ 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0]; assert (bwperim (in, 18), logical (out)) ***** error bwperim ("text") ***** error bwperim (rand (10), 5) ***** error bwperim (rand (10), "text") ***** test a = false (5); a(1:4,2:4) = true; p = false (5); p(1:4,[2 4]) = true; assert (bwperim (a, [0 0 0; 1 1 1; 0 0 0]), p) ***** test a = false (8, 8, 5); a(4:5,4:5,2:4) = true; a(2:7,2:7,3) = true; assert (bwperim (a, 26), a) ## It is easy to forget that is correct b = a; b(4:5, 4:5, 3) = false; assert (bwperim (a), b) c = a; c(3:6,3:6,3) = false; assert (bwperim (a, 4), c) ***** test conn_self = logical ([0 0 0; 0 1 0; 0 0 0]); assert (bwperim (true), true) assert (bwperim (true, conn_self), false) assert (bwperim (true (1, 6)), true (1, 6)) assert (bwperim (true (1, 6), conn_self), false (1, 6)) assert (bwperim (true (6, 1)), true (6, 1)) bw_3d = true (1, 1, 6); assert (bwperim (bw_3d), bw_3d) assert (bwperim (bw_3d, conn_self), false (1, 1, 6)) assert (bwperim (bw_3d, true (3)), bw_3d) perim_3d = bw_3d; perim_3d(1, 1, 2:end-1) = false; conn_3d = false (3, 3, 3); conn_3d(2, 2, :) = true; assert (bwperim (true (1, 1, 6), conn_3d), perim_3d) 9 tests, 9 passed, 0 known failure, 0 skipped [inst/qtdecomp.m] >>>>> /<>/inst/qtdecomp.m ***** demo full(qtdecomp(eye(8))) %It finds 2 big blocks of 0 and it decomposes further where 0 and 1 are mixed. ***** # Test if odd-sized limits split ***** assert(full(qtdecomp(eye(5))), reshape([5,zeros(1,24)],5,5)); ***** assert(full(qtdecomp(eye(6))), repmat(reshape([3,zeros(1,8)],3,3),2,2)); ***** # Test 'equal' method ***** test a=ones(2,2); b=[2,0;0,0]; assert(full(qtdecomp(eye(4))), [a,b;b,a]); ***** shared A, B2, B4 A=[ 1, 4, 2, 5,54,55,61,62; 3, 6, 3, 1,58,53,67,65; 3, 6, 3, 1,58,53,67,65; 3, 6, 3, 1,58,53,67,65; 23,42,42,42,99,99,99,99; 27,42,42,42,99,99,99,99; 23,22,26,25,99,99,99,99; 22,22,24,22,99,99,99,99]; B2=[2,0;0,0]; B4=zeros(4); B4(1,1)=4; ***** test R=[ones(4,8); [ones(2),B2;ones(2,4)], B4]; assert(full(qtdecomp(A)), R); assert(full(qtdecomp(A,0)), R); ***** # Test 'threshold' method ***** test R=[ones(4,8); [ones(2),B2;B2,ones(2)],B4]; assert(full(qtdecomp(A,1)), R); ***** test R=[[B4,[B2,B2;B2,B2]]; [[ones(2),B2;B2,B2],B4]]; assert(full(qtdecomp(A,10)), R); ***** test R=[[B4,[B2,B2;B2,B2]]; [[B2,B2;B2,B2],B4]]; assert(full(qtdecomp(A,10,2)), R); assert(full(qtdecomp(A,100,[2, 4])), [B4,B4;B4,B4]); ***** test f = @(A, c1 = 54, c2 = 0, c3 = 0) (A (1, 1, :) != ((c1+c2+c3) * ones (1, 1, size (A, 3))))(:); assert(full(qtdecomp(A,f)),[ones(4),B4;ones(4,8)]); assert(full(qtdecomp(A,f,54)),[ones(4),B4;ones(4,8)]); assert(full(qtdecomp(A,f,4,40,10)),[ones(4),B4;ones(4,8)]); ***** test ***** # no params first_eq=inline("(A(1,1,:)!=(54*ones(1,1,size(A,3))))(:)","A"); assert(full(qtdecomp(A,first_eq)),[ones(4),B4;ones(4,8)]); ***** test ***** # 1 param first_eq=inline("(A(1,1,:)!=(c*ones(1,1,size(A,3))))(:)","A","c"); assert(full(qtdecomp(A,first_eq,54)),[ones(4),B4;ones(4,8)]); ***** test ***** # 3 params first_eq=inline("(A(1,1,:)!=((c1+c2+c3)*ones(1,1,size(A,3))))(:)","A","c1","c2","c3"); assert(full(qtdecomp(A,first_eq,4,40,10)),[ones(4),B4;ones(4,8)]); 11 tests, 11 passed, 0 known failure, 0 skipped [inst/imlincomb.m] >>>>> /<>/inst/imlincomb.m ***** assert (imlincomb (0.5, uint8 ([255 10]), 0.5, uint8 ([50 20])), uint8 ([153 15])); # default to first class and truncate ***** assert (imlincomb (0.5, uint8 ([255 10]), 0.5, uint8 ([50 20]), "uint16"), uint16 ([153 15])); # defining output class works ***** assert (imlincomb (0.5, uint8 ([255 10]), 0.5, uint8 ([50 20]), 10), uint8 ([163 25])); # default to first class and truncate ***** assert (imlincomb (0.5, uint8 ([255 10]), 0.5, uint8 ([50 20]), 1000, "uint16"), uint16 ([1153 1015])); # defining output class works ***** assert (imlincomb (0.5, uint8 ([255 10]), 0.5, uint8 ([50 20]), 1000), uint8 ([255 255])); # defining output class works 5 tests, 5 passed, 0 known failure, 0 skipped [inst/bweuler.m] >>>>> /<>/inst/bweuler.m ***** demo A=zeros(9,10); A([2,5,8],2:9)=1; A(2:8,[2,9])=1 bweuler(A) # Euler number (objects minus holes) is 1-2=-1 in an 8-like object ***** test A=zeros(10,10); A(2:9,3:8)=1; A(4,4)=0; A(8,8)=0; # not a hole A(6,6)=0; assert(bweuler(A),-1); ***** test A=zeros(10,10); A(2:4,2:4)=1; A(5:8,5:8)=1; assert(bweuler(A,4),2); assert(bweuler(A,8),1); assert(bweuler(A),1); ***** error <2 dimensions> bweuler (true (5, 5, 1, 5)) 3 tests, 3 passed, 0 known failure, 0 skipped [inst/imhist.m] >>>>> /<>/inst/imhist.m ***** shared nn, bb, enn, ebb [nn, bb] = imhist(logical([0 1 0 0 1])); ***** assert({nn, bb}, {[3 2]', [0 1]'}) [nn, bb] = imhist([0 0.2 0.4 0.9 1], 5); ***** assert({nn, bb}, {[1 1 1 0 2]', [0 0.25 0.5 0.75 1]'}) [nn, bb] = imhist([-2 0 0.2 0.4 0.9 1 5], 5); ***** assert({nn, bb}, {[2 1 1 0 3]', [0 0.25 0.5 0.75 1]'}) [nn, bb] = imhist(uint8([0 32 255]), 256); enn = zeros(256, 1); enn([1, 33, 256]) = 1; ebb = 0:255; ***** assert({nn, bb}, {enn, ebb'}) [nn, bb] = imhist(int8([-50 0 100]), 31); enn = zeros(31, 1); enn([10, 16, 28]) = 1; ebb = -128:8.5:127; ***** assert({nn, bb}, {enn, ebb'}) 5 tests, 5 passed, 0 known failure, 0 skipped [inst/imadd.m] >>>>> /<>/inst/imadd.m ***** assert (imadd (uint8 ([23 250]), uint8 ([23 250])), uint8 ([46 255])); # default to first class and truncate ***** assert (imadd (uint8 ([23 250]), 10), uint8 ([33 255])); # works adding a scalar ***** assert (imadd (uint8 ([23 250]), uint8 ([23 250]), "uint16"), uint16 ([46 500])); # defining output class works ***** assert (imadd (logical ([ 1 0]), logical ([ 1 1])), double ([ 2 1])); # return double for two logical images ***** assert (imadd (logical ([ 1 0]), logical ([ 1 1]), "logical"), logical ([ 1 1])); # this is matlab incompatible on purpose ***** fail ("imadd (uint8 ([23 250]), uint16 ([23 250]))"); # input need to have same class 6 tests, 6 passed, 0 known failure, 0 skipped [inst/imgetfile.m] >>>>> /<>/inst/imgetfile.m ***** assert (1) 1 test, 1 passed, 0 known failure, 0 skipped [inst/lab2xyz.m] >>>>> /<>/inst/lab2xyz.m ***** assert (lab2xyz ([0, 0, 0]), [0 0 0], 1e-3) ***** assert (lab2xyz ([53.24, 80.09, 67.20]), [0.4125, 0.2127, 0.0193], 1e-3) ***** assert (lab2xyz ([97.14, -21.55, 94.48]), [0.7700, 0.9278, 0.1385], 1e-3) ***** assert (lab2xyz ([87.74, -86.18, 83.18]), [0.3576, 0.7152, 0.1192], 1e-3) ***** assert (lab2xyz ([91.11, -48.09, -14.13]), [0.5380, 0.7873, 1.0694], 1e-3) ***** assert (lab2xyz ([32.30, 79.19, -107.86]), [0.1804, 0.07217, 0.9502], 1e-3) ***** assert (lab2xyz ([60.32, 98.24, -60.83]), [0.5929, 0.28484, 0.9696], 1e-3) ***** assert (lab2xyz ([100, 0.00, 0.00]), [0.9505, 1.0000, 1.0888], 1e-3) ***** assert (lab2xyz ([53.39, 0.00, 0.00]), [0.2034, 0.2140, 0.2330], 1e-3) ***** assert (lab2xyz ([39.77, 64.51, 54.13]), [0.2155, 0.1111, 0.0101], 1e-3) ***** assert (lab2xyz ([25.42, 47.91, 37.91]), [0.0883, 0.0455, 0.0041], 1e-3) ***** assert (lab2xyz ([9.66, 29.68, 15.24]), [0.02094, 0.0108, 0.00098], 1e-3) ***** assert (lab2xyz ([68.11, 48.39, 22.83]), [0.5276, 0.3812, 0.2482], 1e-3) ***** assert (lab2xyz ([150 130 130]), [4.596, 2.931, 0.519], 1e-3) ***** test lab_map = rand (64, 3); lab_map(:,1) = lab_map(:,1) .* 100; lab_map(:,2) = lab_map(:,2) .* 254 - 127; lab_map(:,3) = lab_map(:,3) .* 254 - 127; assert (xyz2lab (lab2xyz (lab_map)), lab_map, 1e-5); ***** test lab_img = rand (64, 64, 3); lab_img(:,:,1) = lab_img(:,:,1) .* 100; lab_img(:,:,2) = lab_img(:,:,2) .* 254 - 127; lab_img(:,:,3) = lab_img(:,:,3) .* 254 - 127; assert (xyz2lab (lab2xyz (lab_img)), lab_img, 1e-5); ***** assert (lab2xyz (sparse ([0 0 0])), [0 0 0], 1e-3) ***** assert (lab2xyz (sparse ([100, 0.00, 0.00])), [0.9505, 1.0000, 1.0888], 1e-3) ***** assert (class (lab2xyz (single([50 50 50]))), 'single') ***** error lab2xyz () ***** error lab2xyz (1,2) ***** error lab2xyz ({1}) ***** error lab2xyz (ones (2,2)) ***** test lab = rand (16, 16, 3, 5); lab(:,:,1,:) = lab(:,:,1,:) .* 100; lab(:,:,2,:) = lab(:,:,2,:) .* 254 - 127; lab(:,:,3,:) = lab(:,:,3,:) .* 254 - 127; xyz = zeros (size (lab)); for i = 1:5 xyz(:,:,:,i) = lab2xyz (lab(:,:,:,i)); endfor assert (lab2xyz (lab), xyz) 24 tests, 24 passed, 0 known failure, 0 skipped [inst/bwpack.m] >>>>> /<>/inst/bwpack.m ***** error id=Octave:invalid-fun-call bwpack () ***** error id=Octave:invalid-input-arg bwpack ("text") ***** xtest ## bug #55521 assert (bwpack (eye (5)), uint32 ([1 2 4 8 16])) !!!!! known failure ASSERT errors for: assert (bwpack (eye (5)),uint32 ([1, 2, 4, 8, 16])) Location | Observed | Expected | Reason (1) 16777216 1 Abs err 1.6777e+07 exceeds tol 0 by 2e+07 (2) 33554432 2 Abs err 3.3554e+07 exceeds tol 0 by 3e+07 (3) 67108864 4 Abs err 6.7109e+07 exceeds tol 0 by 7e+07 (4) 134217728 8 Abs err 1.3422e+08 exceeds tol 0 by 1e+08 (5) 268435456 16 Abs err 2.6844e+08 exceeds tol 0 by 3e+08 ***** xtest ## bug #55521 assert (bwpack (repmat (eye (4), 15, 1)), uint32 ([286331153 572662306 1145324612 2290649224 17895697 35791394 71582788 143165576])) !!!!! known failure ASSERT errors for: assert (bwpack (repmat (eye (4), 15, 1)),uint32 ([286331153, 572662306, 1145324612, 2290649224; 17895697, 35791394, 71582788, 143165576])) Location | Observed | Expected | Reason (2,1) 286331137 17895697 Abs err 2.6844e+08 exceeds tol 0 by 3e+08 (2,2) 572662274 35791394 Abs err 5.3687e+08 exceeds tol 0 by 5e+08 (2,3) 1145324548 71582788 Abs err 1.0737e+09 exceeds tol 0 by 1e+09 (2,4) 2290649096 143165576 Abs err 2.1475e+09 exceeds tol 0 by 2e+09 ***** xtest ## bug #55521 assert (bwpack (ones (3, 3, 3, 3)), repmat (uint32 (7), 1, 3, 3, 3)) !!!!! known failure ASSERT errors for: assert (bwpack (ones (3, 3, 3, 3)),repmat (uint32 (7), 1, 3, 3, 3)) Location | Observed | Expected | Reason (1,1,1,1) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,2,1,1) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,3,1,1) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,1,2,1) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,2,2,1) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,3,2,1) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,1,3,1) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,2,3,1) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,3,3,1) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,1,1,2) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,2,1,2) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,3,1,2) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,1,2,2) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,2,2,2) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,3,2,2) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,1,3,2) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,2,3,2) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,3,3,2) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,1,1,3) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,2,1,3) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,3,1,3) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,1,2,3) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,2,2,3) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,3,2,3) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,1,3,3) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,2,3,3) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 (1,3,3,3) 117440512 7 Abs err 1.1744e+08 exceeds tol 0 by 1e+08 ***** assert (bwpack (false (0, 10)), uint32 (zeros (0, 10))) ***** assert (bwpack (false (0, 0)), uint32 (zeros (0, 0))) ***** assert (bwpack (false (32, 0)), uint32 (zeros (1, 0))) ***** assert (bwpack (false (33, 0)), uint32 (zeros (2, 0))) ***** assert (bwpack (false (0, 10, 3)), uint32 (zeros (0, 10, 3))) ***** assert (bwpack (false (33, 0, 3)), uint32 (zeros (2, 0, 3))) ***** assert (bwpack (i), bwpack (logical (i))) 12 tests, 9 passed, 3 known failures, 0 skipped [inst/histeq.m] >>>>> /<>/inst/histeq.m ***** assert (histeq ([]), []); ***** assert (histeq (0), 1); ***** assert (histeq (1), 1); ***** assert (histeq (1.5), 1); ***** assert (histeq (zeros (100, 200)), ones (100, 200)); # matrix ***** xtest assert (histeq ([0 1]), [0.4920634921 1], 10^-8); !!!!! known failure ASSERT errors for: assert (histeq ([0, 1]),[0.4920634921, 1],10 ^ -8) Location | Observed | Expected | Reason (1) 0.5 0.49206 Abs err 0.0079365 exceeds tol 1e-08 by 0.008 ***** xtest assert (histeq ([0 1]'), [0.4920634921 1]', 10^-8); # column array !!!!! known failure ASSERT errors for: assert (histeq ([0, 1]'),[0.4920634921, 1]',10 ^ -8) Location | Observed | Expected | Reason (1) 0.5 0.49206 Abs err 0.0079365 exceeds tol 1e-08 by 0.008 ***** xtest assert (histeq ([0 255]), [0.4920634921 1], 10^-8); !!!!! known failure ASSERT errors for: assert (histeq ([0, 255]),[0.4920634921, 1],10 ^ -8) Location | Observed | Expected | Reason (1) 0.5 0.49206 Abs err 0.0079365 exceeds tol 1e-08 by 0.008 ***** xtest assert (histeq (uint8 ([0 1])), [ 125 190]); # uint8 !!!!! known failure ASSERT errors for: assert (histeq (uint8 ([0, 1])),[125, 190]) Location | Observed | Expected | Reason (1) 0.5 125 Abs err 124.5 exceeds tol 0 by 1e+02 (2) 1 190 Abs err 189 exceeds tol 0 by 2e+02 ***** xtest assert (histeq (uint8 ([0 255])), [ 125 255]); !!!!! known failure ASSERT errors for: assert (histeq (uint8 ([0, 255])),[125, 255]) Location | Observed | Expected | Reason (1) 0.5 125 Abs err 124.5 exceeds tol 0 by 1e+02 (2) 1 255 Abs err 254 exceeds tol 0 by 3e+02 ***** xtest assert (histeq (uint16 ([0 1])), [65535 65535]); # uint16 !!!!! known failure ASSERT errors for: assert (histeq (uint16 ([0, 1])),[65535, 65535]) Location | Observed | Expected | Reason (1) 0.5 65535 Abs err 65534 exceeds tol 0 by 7e+04 (2) 1 65535 Abs err 65534 exceeds tol 0 by 7e+04 ***** xtest assert (histeq (uint16 ([0 255])), [32247 48891]); !!!!! known failure ASSERT errors for: assert (histeq (uint16 ([0, 255])),[32247, 48891]) Location | Observed | Expected | Reason (1) 0.5 32247 Abs err 32246 exceeds tol 0 by 3e+04 (2) 1 48891 Abs err 48890 exceeds tol 0 by 5e+04 ***** xtest assert (histeq (uint16 ([0 256])), [32247 48891]); !!!!! known failure ASSERT errors for: assert (histeq (uint16 ([0, 256])),[32247, 48891]) Location | Observed | Expected | Reason (1) 0.5 32247 Abs err 32246 exceeds tol 0 by 3e+04 (2) 1 48891 Abs err 48890 exceeds tol 0 by 5e+04 ***** xtest assert (histeq (uint16 ([0 65535])), [32247 65535]); !!!!! known failure ASSERT errors for: assert (histeq (uint16 ([0, 65535])),[32247, 65535]) Location | Observed | Expected | Reason (1) 0.5 32247 Abs err 32246 exceeds tol 0 by 3e+04 (2) 1 65535 Abs err 65534 exceeds tol 0 by 7e+04 ***** test assert (histeq ([0 1 1] ), [ 1/3 1 1] , 10^-8); ***** test assert (histeq ([0 0 1]'), [ 2/3 2/3 1]', 10^-8); ***** xtest assert (histeq ([0 1 2] ), [ 1/3 1 1] , 10^-8); !!!!! known failure ASSERT errors for: assert (histeq ([0, 1, 2]),[1 / 3, 1, 1],10 ^ -8) Location | Observed | Expected | Reason (2) 0.66667 1 Abs err 0.33333 exceeds tol 1e-08 by 0.3 ***** xtest assert (histeq (uint8 ([0 1 2])), [ 85 125 215]); !!!!! known failure ASSERT errors for: assert (histeq (uint8 ([0, 1, 2])),[85, 125, 215]) Location | Observed | Expected | Reason (1) 0.33333 85 Abs err 84.667 exceeds tol 0 by 8e+01 (2) 0.66667 125 Abs err 124.33 exceeds tol 0 by 1e+02 (3) 1 215 Abs err 214 exceeds tol 0 by 2e+02 ***** xtest assert (histeq (uint16 ([0 1 2])), [65535 65535 65535]); !!!!! known failure ASSERT errors for: assert (histeq (uint16 ([0, 1, 2])),[65535, 65535, 65535]) Location | Observed | Expected | Reason (1) 0.33333 65535 Abs err 65535 exceeds tol 0 by 7e+04 (2) 0.66667 65535 Abs err 65534 exceeds tol 0 by 7e+04 (3) 1 65535 Abs err 65534 exceeds tol 0 by 7e+04 ***** xtest assert (histeq (uint16 ([0 100 200])), [43690 43690 55133]); !!!!! known failure ASSERT errors for: assert (histeq (uint16 ([0, 100, 200])),[43690, 43690, 55133]) Location | Observed | Expected | Reason (1) 0.33333 43690 Abs err 43690 exceeds tol 0 by 4e+04 (2) 0.66667 43690 Abs err 43689 exceeds tol 0 by 4e+04 (3) 1 55133 Abs err 55132 exceeds tol 0 by 6e+04 ***** xtest J = [20 32 57 81 105 125 150 174 198 223 247]; assert (histeq (uint8 (0:10:100)), J); !!!!! known failure ASSERT errors for: assert (histeq (uint8 (0:10:100)),J) Location | Observed | Expected | Reason (1) 0.090909 20 Abs err 19.909 exceeds tol 0 by 2e+01 (2) 0.18182 32 Abs err 31.818 exceeds tol 0 by 3e+01 (3) 0.27273 57 Abs err 56.727 exceeds tol 0 by 6e+01 (4) 0.36364 81 Abs err 80.636 exceeds tol 0 by 8e+01 (5) 0.45455 105 Abs err 104.55 exceeds tol 0 by 1e+02 (6) 0.54545 125 Abs err 124.45 exceeds tol 0 by 1e+02 (7) 0.63636 150 Abs err 149.36 exceeds tol 0 by 1e+02 (8) 0.72727 174 Abs err 173.27 exceeds tol 0 by 2e+02 (9) 0.81818 198 Abs err 197.18 exceeds tol 0 by 2e+02 (10) 0.90909 223 Abs err 222.09 exceeds tol 0 by 2e+02 (11) 1 247 Abs err 246 exceeds tol 0 by 2e+02 ***** xtest J = [0.0793650794 0.1269841270 0.2222222222 0.3174603175 0.4126984127 0.4920634921 0.5873015873 0.6825396825 0.7777777778 0.8730158730 1.0000000000]; assert (histeq (0:0.1:1), J', 10^-8); !!!!! known failure ASSERT errors for: assert (histeq (0:0.1:1),J',10 ^ -8) Location | Observed | Expected | Reason (1) 0.090909 0.079365 Abs err 0.011544 exceeds tol 1e-08 by 0.01 (2) 0.18182 0.12698 Abs err 0.054834 exceeds tol 1e-08 by 0.05 (3) 0.27273 0.22222 Abs err 0.050505 exceeds tol 1e-08 by 0.05 (4) 0.36364 0.31746 Abs err 0.046176 exceeds tol 1e-08 by 0.05 (5) 0.45455 0.4127 Abs err 0.041847 exceeds tol 1e-08 by 0.04 (6) 0.54545 0.49206 Abs err 0.053391 exceeds tol 1e-08 by 0.05 (7) 0.63636 0.5873 Abs err 0.049062 exceeds tol 1e-08 by 0.05 (8) 0.72727 0.68254 Abs err 0.044733 exceeds tol 1e-08 by 0.04 (9) 0.81818 0.77778 Abs err 0.040404 exceeds tol 1e-08 by 0.04 (10) 0.90909 0.87302 Abs err 0.036075 exceeds tol 1e-08 by 0.04 22 tests, 7 passed, 15 known failures, 0 skipped [inst/labelmatrix.m] >>>>> /<>/inst/labelmatrix.m ***** test cc = struct (); cc.Connectivity = 8; cc.ImageSize = [7 7]; cc.NumObjects = 4; cc.PixelIdxList = {[1;2], [5;7;12;13;14], [22;23], [26;32;33;36;37;38]}; l = uint8 ([ 1 0 0 3 0 4 0 1 0 0 3 0 4 0 0 0 0 0 0 4 0 0 0 0 0 4 0 0 2 2 0 4 4 0 0 0 2 0 0 0 0 0 2 2 0 0 0 0 0 ]); assert (labelmatrix (cc), l) 1 test, 1 passed, 0 known failure, 0 skipped [inst/col2im.m] >>>>> /<>/inst/col2im.m ***** demo ## Divide A using distinct blocks and then reverse the operation A = [ 1:10 11:20 21:30 31:40]; B = im2col (A, [2 5], "distinct") C = col2im (B, [2 5], [4 10], "distinct") ***** demo ## Get sliding blocks of size from A into columns, calculate the ## mean of each block (mean of each column), and reconstruct A ## after a median filter. A = reshape (1:24, [4 6]) B = im2col (A, [2 3], "sliding") C = mean (B); col2im (C, [1 1], [3 4], "sliding") ***** error col2im (ones (10), [5 5], [10 10], "wrong_block_type"); ***** error col2im (ones (10), [1 1], [ 7 7], "sliding"); ***** error col2im (ones (10), [3 3], [10 10], "distinct") ***** error col2im (ones (10), [5 5], [10 11], "distinct"); ***** assert (col2im (sum (im2col (magic (10), [3 3], "sliding")), [1 1], [8 8]), convn (magic (10), ones (3, 3), "valid")); ***** test B = ones (1, (10-2+1)*(7-3+1)); A = ones ((10-2+1), (7-3+1)); assert (col2im (B, [2 3], [10 7]), A); ## same but different classes assert (col2im (int16 (B), [2 3], [10 7]), int16 (A)); assert (col2im (single (B), [2 3], [10 7]), single (A)); assert (col2im (logical (B), [2 3], [10 7]), logical (A)); ***** test a = rand (10)(:); assert (col2im (a, [1 1], [10 10]), col2im (a, [1 1], [10 10], "sliding")) ***** shared A, B v = [1:10]'; r = reshape (1:10, [2 5]); B = [v v+10 v+20 v+30 v+40 v+50]; A = [r r+30 r+10 r+40 r+20 r+50]; assert (col2im (B, [2 5], [6 10], "distinct"), A); ***** assert (col2im (int16 (B), [2 5], [6 10], "distinct"), int16 (A)); ***** assert (col2im (logical (B), [2 5], [6 10], "distinct"), logical (A)); ***** assert (col2im (single (B), [2 5], [6 10], "distinct"), single (A)); ***** test a = rand (10, 8); b = im2col (a, [5 5], "distinct"); assert (col2im (b, [5 5], [10 8], "distinct"), a); a = rand (8); b = im2col (a, [5 5], "distinct"); assert (col2im (b, [5 5], [8 8], "distinct"), a); ***** shared a, b ## Same number of multiple dimensions a = rand (10, 10, 10); b = im2col (a, [5 5 5], "distinct"); ***** assert (col2im (b, [5 5 5], [10 10 10], "distinct"), a); ## Different number of dimensions a = rand (10, 10, 10); b = im2col (a, [5 5], "distinct"); ***** assert (col2im (b, [5 5], [10 10 10], "distinct"), a); ## Removing padding from multiple dimensions a = rand (10, 10, 7); b = im2col (a, [5 5 3], "distinct"); ***** assert (col2im (b, [5 5 3], [10 10 7], "distinct"), a); a = rand (10, 10, 7); b = im2col (a, [5 5 5 2], "distinct"); ***** assert (col2im (b, [5 5 5 2], [10 10 7], "distinct"), a); 15 tests, 15 passed, 0 known failure, 0 skipped [inst/rangefilt.m] >>>>> /<>/inst/rangefilt.m ***** test im = rangefilt (ones (5)); assert (im, zeros (5)); ***** test A = zeros (3,3); B = ones (3,3); C = [1 1 1; 2 2 2; 3 3 3]; D = C'; E = ones (3,3); E(2,2) = 2; F = 3 .* ones (3,3); F(2,2) = 1; G = [-1 2 7; -5 2 8; -7 pi 9]; H = [5 2 8; 1 -3 1; 5 1 0]; A_out = [0 0 0; 0 0 0; 0 0 0]; B_out = [0 0 0; 0 0 0; 0 0 0]; C_out = [1 1 1; 2 2 2; 1 1 1]; D_out = [1 2 1; 1 2 1; 1 2 1]; E_out = [1 1 1; 1 1 1; 1 1 1]; F_out = [2 2 2; 2 2 2; 2 2 2]; G_out = [7 13 6; 7+pi 16 7; 7+pi 16 7]; H_out = [8 11 11; 8 11 11; 8 8 4]; assert (rangefilt (A), A_out) assert (rangefilt (B), B_out) assert (rangefilt (C), C_out) assert (rangefilt (D), D_out) assert (rangefilt (E), E_out) assert (rangefilt (F), F_out) assert (rangefilt (G), G_out, eps) assert (rangefilt (H), H_out) 2 tests, 2 passed, 0 known failure, 0 skipped [inst/imopen.m] >>>>> /<>/inst/imopen.m ***** shared in, out in = [ 0 0 0 1 1 1 0 0 1 1 0 1 0 1 1 1 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0 1 0 1 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0]; out = [ 0 0 0 1 1 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]; ***** assert (imopen (logical (in), ones (3)), logical (out)); out = [80 80 1 8 15 51 51 51 51 40 80 80 7 8 15 54 55 55 55 40 4 7 7 8 15 54 55 55 55 40 17 17 17 7 3 54 55 55 55 28 17 17 17 2 9 54 54 54 52 33 17 17 17 29 29 29 29 26 33 33 5 5 13 29 29 29 30 32 39 39 6 6 13 29 29 29 30 32 39 39 10 12 77 77 77 35 35 35 39 39 10 12 77 77 77 35 35 35 27 27]; ***** assert (imopen (magic (10), ones (3)), out); ***** assert (imopen (uint8 (magic (10)), strel ("square", 3)), uint8 (out)); ## using a se that will be decomposed in 2 pieces out =[ 1 1 1 8 15 40 40 40 40 40 4 4 4 8 15 40 40 40 40 40 4 4 4 8 15 40 40 40 40 40 5 5 5 3 3 28 28 28 28 28 5 5 5 2 9 28 28 28 28 28 5 5 13 26 26 26 26 26 26 26 5 5 13 29 29 29 29 29 27 27 6 6 13 29 29 29 29 29 27 27 6 6 13 29 29 29 29 29 27 27 6 6 13 29 29 29 29 29 27 27]; ***** assert (imopen (magic (10), ones(5)), out); ## using a weird non-symmetric and even-size se out =[ 7 7 1 8 15 55 51 51 41 40 7 7 7 8 16 55 55 55 51 41 4 9 7 7 16 54 55 54 55 47 25 25 9 9 3 52 54 52 54 28 25 24 25 2 9 33 52 34 52 34 17 24 29 31 29 30 33 26 33 34 17 5 29 31 31 31 30 32 39 33 10 6 13 35 35 29 31 32 45 39 10 12 77 36 36 35 35 31 45 45 11 12 77 77 77 36 36 35 27 45]; ***** assert (imopen (magic (10), [1 0 0 0; 1 1 1 0; 0 1 0 1]), out); 5 tests, 5 passed, 0 known failure, 0 skipped [inst/rgb2ntsc.m] >>>>> /<>/inst/rgb2ntsc.m ***** assert (rgb2ntsc ([1 0 0]), [.299 .596 .211]) ***** assert (rgb2ntsc ([0 1 0]), [.587 -.274 -.523]) ***** assert (rgb2ntsc ([0 0 1]), [.114 -.322 .312]) ***** test rgb_map = rand (64, 3); assert (ntsc2rgb (rgb2ntsc (rgb_map)), rgb_map, 1e-3); ***** test rgb_img = rand (64, 64, 3); assert (ntsc2rgb (rgb2ntsc (rgb_img)), rgb_img, 1e-3); assert (rgb2ntsc ([1.5 1 1]), [1.149 0.298 0.105], 1e-3); ***** error rgb2ntsc () ***** error rgb2ntsc (1,2) ***** error rgb2ntsc ({1}) ***** error rgb2ntsc (ones (2,2)) ***** test rgb = rand (16, 16, 3, 5); yiq = zeros (size (rgb)); for i = 1:5 yiq(:,:,:,i) = rgb2ntsc (rgb(:,:,:,i)); endfor assert (rgb2ntsc (rgb), yiq); ***** test ntsc = rgb2ntsc (rand (10, 10, 3)); assert (class (ntsc), "double"); assert (size (ntsc), [10 10 3]); ***** test ntsc = rgb2ntsc (rand (10, 10, 3, "single")); assert (class (ntsc), "single"); assert (size (ntsc), [10 10 3]); ***** test rgb = (rand (10, 10, 3) * 3 ) - 0.5; # values outside range [0 1] ntsc = rgb2ntsc (rgb); assert (class (ntsc), "double"); assert (size (ntsc), [10 10 3]); ***** test rgb = (rand (10, 10, 3, "single") * 3 ) - 0.5; # values outside range [0 1] ntsc = rgb2ntsc (rgb); assert (class (ntsc), "single"); assert (size (ntsc), [10 10 3]); ***** test ntsc = rgb2ntsc (randi ([0 255], 10, 10, 3, "uint8")); assert (class (ntsc), "double"); assert (size (ntsc), [10 10 3]); ***** test ntsc = rgb2ntsc (randi ([0 65535], 10, 10, 3, "uint16")); assert (class (ntsc), "double"); assert (size (ntsc), [10 10 3]); ***** test ntsc = rgb2ntsc (randi ([-128 127], 10, 10, 3, "int8")); assert (class (ntsc), "double"); assert (size (ntsc), [10 10 3]); ***** test rgb_double = reshape ([1 0 0 0 0 1 0 0 0 0 1 0], [2 2 3]); rgb_uint8 = reshape (uint8 ([255 0 0 0 0 255 0 0 0 0 255 0]), [2 2 3]); rgb_int16 = int16 (double (rgb_double * uint16 (65535)) -32768); expected = reshape ([.299 .587 .114 0 .596 -.274 -.322 0 .211 -.523 .312 0], [2 2 3]); assert (rgb2ntsc (rgb_double), expected); assert (rgb2ntsc (rgb_uint8), expected); assert (rgb2ntsc (single (rgb_double)), single (expected)); 18 tests, 18 passed, 0 known failure, 0 skipped [inst/qtgetblk.m] >>>>> /<>/inst/qtgetblk.m ***** demo [vals,r,c]=qtgetblk(eye(4),qtdecomp(eye(4)),2) % Returns 2 blocks, at [1,3] and [3,1] (2*2 zeros blocks) ***** shared A,S A=[ 1, 4, 2, 5,54,55,61,62; 3, 6, 3, 1,58,53,67,65; 3, 6, 3, 1,58,53,67,65; 3, 6, 3, 1,58,53,67,65; 23,42,42,42,99,99,99,99; 27,42,42,42,99,99,99,99; 23,22,26,25,99,99,99,99; 22,22,24,22,99,99,99,99]; S=qtdecomp(A,10); ***** test [va]=qtgetblk(A,S,8); [vb,r,c]=qtgetblk(A,S,8); [vc,i]=qtgetblk(A,S,8); assert(va, vb); assert(va, vc); assert(i,[]); assert(r,[]); assert(c,[]); R=[]; assert(va,R); ***** test [va]=qtgetblk(A,S,4); [vb,r,c]=qtgetblk(A,S,4); [vc,i]=qtgetblk(A,S,4); assert(va, vb); assert(va, vc); assert(i, find(full(S)==4)); assert(r,[1;5]); assert(c,[1;5]); R=zeros(4,4,2); R(:,:,1)=A(1:4,1:4); R(:,:,2)=A(5:8,5:8); assert(va,R); ***** test [va]=qtgetblk(A,S,2); [vb,r,c]=qtgetblk(A,S,2); [vc,i]=qtgetblk(A,S,2); assert(va, vb); assert(va, vc); assert(i, find(full(S)==2)); assert(r,[7;5;7;1;3;1;3]); assert(c,[1;3;3;5;5;7;7]); R=zeros(2,2,7); R(:,:,1)=A(7:8,1:2); R(:,:,2)=A(5:6,3:4); R(:,:,3)=A(7:8,3:4); R(:,:,4)=A(1:2,5:6); R(:,:,5)=A(3:4,5:6); R(:,:,6)=A(1:2,7:8); R(:,:,7)=A(3:4,7:8); assert(va,R); 3 tests, 3 passed, 0 known failure, 0 skipped [inst/integralImage.m] >>>>> /<>/inst/integralImage.m ***** test assert (integralImage (10), [0 0; 0 10]); assert (integralImage (10, "rotated"), [0 0 0; 0 10 0]); ***** test J = integralImage (10); assert (class(J), "double"); J = integralImage (uint8(10)); assert (class(J), "double"); ***** test I = [1, 2; 3, 4]; J = integralImage (I); J1 = [0 0 0; 0 1 3; 0 4 10]; assert (J, J1) J = integralImage (I, "rotated"); J1 = [0 0 0 0; 0 1 2 0; 1 6 7 2]; assert (J, J1) ***** test I1 = [1, 2; 3, 4]; I2 = [5, 6; 7, 8]; I3 = [9, 10; 11, 12]; I = cat (3, I1, I2, I3); J = integralImage (I); J1 = [0 0 0; 0 1 3; 0 4 10]; J2 = [0 0 0; 0 5 11; 0 12 26]; J3 = [0 0 0; 0 9 19; 0 20 42]; J0 = cat (3, J1, J2, J3); assert (J, J0) ***** test I1 = [1, 2; 3, 4]; I2 = [5, 6; 7, 8]; I3 = [9, 10; 11, 12]; I = cat (3, I1, I2, I3); J = integralImage (I, "rotated"); J1 = [0 0 0 0; 0 1 2 0; 1 6 7 2]; J2 = [0 0 0 0; 0 5 6 0; 5 18 19 6]; J3 = [0 0 0 0; 0 9 10 0; 9 30 31 10]; J0 = cat (3, J1, J2, J3); assert (J, J0) ***** test I = magic (5); J = integralImage (I); J_res = [0 0 0 0 0 0; 0 17 41 42 50 65; 0 40 69 77 99 130; 0 44 79 100 142 195; 0 54 101 141 204 260; 0 65 130 195 260 325]; assert (J, J_res) J = integralImage (I, "rotated"); J_res_R = [0 0 0 0 0 0 0; 0 17 24 1 8 15 0; 17 64 47 40 38 39 15; 64 74 91 104 105 76 39; 74 105 149 188 183 130 76; 105 170 232 272 236 195 130]; assert (J, J_res_R) ***** error integralImage (); ***** error integralImage (1, "xxx", 2); ***** error integralImage ("abcd"); ***** error integralImage ([1 2; 3 4], "xxx"); 10 tests, 10 passed, 0 known failure, 0 skipped [inst/applylut.m] >>>>> /<>/inst/applylut.m ***** demo lut = makelut (@(x) sum (x (:)) >= 3, 3); S = applylut (eye (5), lut); disp (S) ## Everything should be 0 despite a diagonal which doesn't reach borders. ***** assert (prod (applylut (eye (3), makelut (@(x) x(1) == 1, 2)) == eye (3)), [1 1 1]); ***** assert (prod (applylut (eye (3), makelut (@(x) x(2,2) == 1, 3)) == eye (3)), [1 1 1]); ***** assert (prod (applylut (eye (3), makelut (@(x) x(3,3) == 1, 3)) == applylut (eye (3), makelut (@(x) x(2,2) == 1, 2))), [1 1 1]); 3 tests, 3 passed, 0 known failure, 0 skipped [inst/otf2psf.m] >>>>> /<>/inst/otf2psf.m ***** function otf = rand_otf (varargin) otf = complex (rand (varargin{:}), rand (varargin{:})); ***** endfunction ***** test otf = rand_otf (6, 1); assert (otf2psf (otf), circshift (ifft (otf), 3), eps); ***** test otf = rand_otf (6, 6); assert (otf2psf (otf), circshift (ifft2 (otf), [3 3]), eps); ***** test otf = rand_otf (6, 6, 6); assert (otf2psf (otf), circshift (ifftn (otf), [3 3 3]), eps); ***** test otf = rand_otf (7, 1); assert (otf2psf (otf), circshift (ifft (otf), 3), eps); ***** test otf = rand_otf (7, 7); assert (otf2psf (otf), circshift (ifft2 (otf), [3 3]), eps); ***** test otf = rand_otf (6, 7, 8); assert (otf2psf (otf), circshift (ifftn (otf), [3 3 4]), eps); ***** test otf = rand_otf (7, 1); ppsf = circshift (ifft (otf), 3); assert (otf2psf (otf, 6), ppsf(1:6), eps); assert (otf2psf (otf, [6 1]), ppsf(1:6), eps); ***** test otf = rand_otf (7, 7); ppsf = circshift (ifft2 (otf), [3 3]); assert (otf2psf (otf, [6 1]), ppsf(1:6,4), eps); ***** test otf = rand_otf (6, 7); ppsf = circshift (ifft2 (otf), [3 3]); assert (otf2psf (otf, [6 6]), ppsf(:,1:6), eps); ***** error otf2psf ("not a otf") ***** error otf2psf (rand_otf (16), 18) ***** error otf2psf (rand_otf (16), [14 18]) ***** error otf2psf (rand_otf (16), [18 18]) ***** error otf2psf (rand_otf (16, 1), 18) ***** test psf = fspecial ("gaussian", 16); otf = psf2otf (psf); assert (otf2psf (otf), psf, eps); ***** xtest psf = rand (16); otf = psf2otf (psf); assert (otf2psf (otf), psf, 4*eps); ***** test psf = rand (8); otf = psf2otf (psf, [16 16]); assert (otf2psf (otf, [8 8]), psf, 2*eps); 17 tests, 17 passed, 0 known failure, 0 skipped [inst/stretchlim.m] >>>>> /<>/inst/stretchlim.m ***** error (stretchlim ()); ***** error (stretchlim ("bad parameter")); ***** error (stretchlim (zeros (10, 10), "bad parameter")); ***** error (stretchlim (zeros (10, 10), 0.01, 2)); ***** assert (stretchlim (0.01:.01:1), [0.02; 0.99]) ***** assert (stretchlim (0.01:.01:1), stretchlim (0.01:.01:1, [0.01 0.99])) ***** assert (stretchlim (0.01:.01:1, 0.15), stretchlim (0.01:.01:1, [0.15 0.85])) ***** assert (stretchlim (0.01:.01:1, [0.01,0.95]), [0.02; 0.95], eps) ***** assert (stretchlim (0.01:.01:1, 0), [0.01; 1]) ***** test im = rand (5); assert (stretchlim (im, 0), [min(im(:)); max(im(:))]) ***** test im = rand (5, 5, 3); assert (stretchlim (im, 0), [min(im(:,:,1)(:)) min(im(:,:,2)(:)) min(im(:,:,3)(:)); max(im(:,:,1)(:)) max(im(:,:,2)(:)) max(im(:,:,3)(:))]) ***** test im = rand (5); assert (stretchlim (im, 0.03), [min(im(:)); max(im(:))]) assert (stretchlim (im, 0.0399), [min(im(:)); max(im(:))]) ***** assert (stretchlim (uint8 (1:100)), im2double (uint8 ([2; 99]))) ***** assert (stretchlim (uint8 (1:100), .25), im2double (uint8 ([26; 75]))) ***** assert (stretchlim (uint16 (1:1000)), im2double (uint16 ([11; 990]))) ***** assert (stretchlim (int16 (-100:100)), im2double (int16 ([-98; 98]))) ***** assert (stretchlim (single (0.01:.01:1)), double (single (0.01:.01:1)([2; 99])).') ***** assert (stretchlim (uint8 ([1 repmat(2, [1, 90]) 92:100]), 0.05), im2double (uint8 ([2; 95]))) ***** assert (stretchlim (uint8 ([1 repmat(2, [1 4]) 6:100]), 0.05), im2double (uint8 ([6; 95]))) ***** assert (stretchlim (uint8 ([1 repmat(2, [1 5]) 7:100]), 0.05), im2double (uint8 ([2; 95]))) ***** assert (stretchlim (uint8 ([1 repmat(2, [1 6]) 8:100]), 0.05), im2double (uint8 ([2; 95]))) ***** assert (stretchlim (uint8 ([1 repmat(2, [1 7]) 9:100]), 0.05), im2double (uint8 ([2; 95]))) ***** assert (stretchlim (uint8 ([1 repmat(2, [1 8]) 10:100]), 0.05), im2double (uint8 ([2; 95]))) ***** assert (stretchlim (uint8 ([1 repmat(2, [1 5]) repmat(3, [1 5]) 9:100]), 0.04), im2double (uint8 ([2; 96]))) ***** assert (stretchlim (uint8 ([1 repmat(2, [1 5]) repmat(3, [1 5]) 9:100]), 0.05), im2double (uint8 ([2; 95]))) ***** assert (stretchlim (uint8 ([1 repmat(2, [1 5]) repmat(3, [1 5]) 9:100]), 0.06), im2double (uint8 ([3; 94]))) ***** assert (stretchlim (uint8 ([1 repmat(2, [1 5]) repmat(3, [1 5]) 9:100]), 0.07), im2double (uint8 ([3; 93]))) ***** assert (stretchlim (uint8 ([1 repmat(2, [1 5]) repmat(3, [1 5]) 9:100]), 0.08), im2double (uint8 ([3; 92]))) ***** test RGB = zeros (100, 1, 3, "uint16"); RGB(:,:,1) = [1:1:100]; RGB(:,:,2) = [2:2:200]; RGB(:,:,3) = [4:4:400]; assert (stretchlim (RGB) , im2double (uint16 ([2 4 8; 99 198 396]))) ***** test im6c = zeros (100, 1, 6, "uint16"); im6c(:,:,1) = [1:1:100]; im6c(:,:,2) = [2:2:200]; im6c(:,:,3) = [4:4:400]; im6c(:,:,4) = [8:8:800]; im6c(:,:,5) = [16:16:1600]; im6c(:,:,6) = [32:32:3200]; assert (stretchlim (im6c) , im2double (uint16 ([2 4 8 16 32 64; 99 198 396 792 1584 3168]))) ***** test im = [0 0 .1 .1 .1 .1 .2 .2 .2 .4 .4 .6 .6 .7 .7 .9 .9 .9 1 1]; assert (stretchlim (im), [0; 1]) ## Consider the returned lower limit in this test. A lower limit ## of 0.1 will saturate two elements (10%), while 0.2 will saturate ## 6 elements (30%). Both have the same distance to 20% but returning ## 0.1 is Matlab compatible. ## Now looking at the higher limit. A limit of .9 will saturate ## 2 elements (10%), while a limit of 0.7 will saturate 5 elements (25%). ## However, for Matlab compatibility we must return .9 even though ## 25% would be closer to 20%. ## Basically, it's not just rounded. assert (stretchlim (im, .2), [0.1; 0.9]) assert (stretchlim (im, .15), [0.1; 0.9]) assert (stretchlim (im, .1), [0.1; 0.9]) assert (stretchlim (im, .25), [0.1; 0.7]) ## Reorder the vector of values (real images don't have the values ## already sorted), just to be sure it all works. im([6 3 16 11 7 17 14 8 5 19 15 1 2 4 18 13 9 20 10 12]) = im; assert (stretchlim (im, .2), [0.1; 0.9]) assert (stretchlim (im, .15), [0.1; 0.9]) assert (stretchlim (im, .1), [0.1; 0.9]) assert (stretchlim (im, .25), [0.1; 0.7]) ***** assert (stretchlim (0.01:.001:1), [0.019; 0.991], eps) ***** assert (stretchlim (0.01:.001:1, [0.01,0.95]), [0.019; 0.951], eps) ***** assert (stretchlim (0.01:.001:1, 0), [0.01; 1]) ***** assert (stretchlim (single (0.01:.001:1)), double (single (0.01:.001:1)([10; 982])).') ***** xtest assert (stretchlim ([(.05:.05:1) (2:4)], 0.2), [0.25; 0.95], eps) assert (stretchlim ([(.05:.05:1) (2:5)], 0.2), [0.25; 1]) assert (stretchlim ([(.05:.05:1) (2:6)], 0.2), [0.3; 1]) assert (stretchlim ([(.05:.05:1) (2:7)], 0.2), [0.3; 1]) !!!!! known failure ASSERT errors for: assert (stretchlim ([(.05:.05:1), (2:6)], 0.2),[0.3; 1]) Location | Observed | Expected | Reason (1) 0.3 0.3 Abs err 5.5511e-17 exceeds tol 0 by 6e-17 ***** test assert (stretchlim ([(-6:0) (.05:.05:1)], 0.2), [0; 0.75], eps) assert (stretchlim ([(-5:0) (.05:.05:1)], 0.2), [0; 0.75], eps) ***** test im = rand (4, 4, 2, 3, 2); rv = zeros (2, 2, 3, 2); for p = 1:2 for q = 1:3 for r = 1:2 rv(:,p,q,r) = stretchlim (im(:,:,p,q,r), 0.25); endfor endfor endfor assert (stretchlim (im, 0.25), rv) ***** test im = rand (4, 4, 2, 3, 2); rv = zeros (2, 2, 3, 2); for p = 1:2 for q = 1:3 for r = 1:2 rv(:,p,q,r) = stretchlim (im(:,:,p,q,r), 0); endfor endfor endfor assert (stretchlim (im, 0), rv) ***** assert (stretchlim (zeros (5)), [0; 1]) ***** assert (stretchlim (ones (5)), [0; 1]) ***** assert (stretchlim (.6 * ones (5)), [0; 1]) ***** assert (stretchlim (zeros (3, 3, 3, 3)), repmat ([0; 1], [1 3 3])) ***** assert (stretchlim ([0 .5 .5 .5 .5 1], .2), [0; 1]) ***** test im = repmat ((magic (5) -1) / 24, [1 1 3 3]); im(:,:,1,1) = 0; im(:,:,2,2) = .5; im(:,:,3,3) = 1; lims = stretchlim (im, 0.2); assert (size (lims), [2 3 3]) assert (lims(:, [2 3 4 6 7 8]), repmat ([(1/24)*round(24*.2); 1-((1/24)*round(24*.2))], [1 6]), eps) assert (lims(:, [1 5 9]), repmat ([0; 1], [1 3])) 45 tests, 44 passed, 1 known failure, 0 skipped [inst/imfilter.m] >>>>> /<>/inst/imfilter.m ***** test img = [ 8 2 6 7 4 3 7 8 4 1 9 9 1 1 4 7 3 3 8 1 2 9 8 3 7 6 5 8 6 5 9 5 9 1 8 2 7 3 5 8 6 8 7 1 2 2 9 9 9 9 1 2 7 8 5 5 9 4 3 2 3 4 7 7 5 9 5 2 7 6 5 9 4 3 6 4 2 3 7 5 9 8 6 9 7 6 2 6 4 1 9 9 2 1 7 3 3 5 6 4]; expected_corr = [ 46 53 30 34 44 42 40 51 42 19 48 66 57 42 46 50 59 58 49 34 48 67 55 54 44 58 50 50 64 39 44 77 52 43 28 55 57 75 70 50 29 51 65 51 42 50 60 62 55 42 23 44 58 59 63 59 55 57 50 36 36 50 52 56 56 47 48 45 47 39 51 64 70 62 56 50 40 38 41 31 58 72 50 49 58 45 41 42 49 28 27 37 27 21 19 26 16 23 24 17]; assert (imfilter (img, [0 1 0; 2 1 1; 1 2 2]), expected_corr) ## test order of options (and matching with defaults) assert (imfilter (img, [0 1 0; 2 1 1; 1 2 2], 0), expected_corr) assert (imfilter (img, [0 1 0; 2 1 1; 1 2 2], "corr"), expected_corr) assert (imfilter (img, [0 1 0; 2 1 1; 1 2 2], "corr", 0), expected_corr) assert (imfilter (img, [0 1 0; 2 1 1; 1 2 2], 0, "corr"), expected_corr) expected_conv = [ 21 31 23 22 21 28 29 26 22 6 47 55 43 43 51 44 49 64 44 24 56 69 53 34 47 50 57 48 52 37 38 70 60 56 41 57 54 61 66 44 46 67 53 48 32 54 59 65 63 46 28 56 63 50 36 54 58 66 63 47 20 43 55 62 67 57 52 53 44 28 42 51 54 61 57 53 44 46 48 39 53 70 63 50 57 42 38 38 43 33 53 62 50 54 52 44 38 40 40 20]; assert (imfilter (img, [0 1 0; 2 1 1; 1 2 2], "conv"), expected_conv) ## alternative class assert (imfilter (single (img), [0 1 0; 2 1 1; 1 2 2]), single (expected_corr)) assert (imfilter (int8 (img), [0 1 0; 2 1 1; 1 2 2]), int8 (expected_corr)) assert (imfilter (uint8 (img), [0 1 0; 2 1 1; 1 2 2]), uint8 (expected_corr)) assert (imfilter (single (img), [0 1 0; 2 1 1; 1 2 2], "conv"), single (expected_conv)) assert (imfilter (int8 (img), [0 1 0; 2 1 1; 1 2 2], "conv"), int8 (expected_conv)) assert (imfilter (uint8 (img), [0 1 0; 2 1 1; 1 2 2], "conv"), uint8 (expected_conv)) ***** test I = zeros (6); I(2:3,2:3) = 1; F = zeros (4); F(2,2:3) = 1; result = [0 0 0 0 0 0 1 2 1 0 0 0 1 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]; assert (imfilter (I, F), result) 2 tests, 2 passed, 0 known failure, 0 skipped [inst/colorangle.m] >>>>> /<>/inst/colorangle.m ***** error id=Octave:invalid-fun-call colorangle () ***** error id=Octave:invalid-fun-call colorangle (1, 2, 3) ***** error colorangle (2, 3) ***** error colorangle ([1, 2], [3, 4]) ***** error id=Octave:expected-real colorangle ([1, 2, 3j], [4, 5, 6]) ***** error id=Octave:expected-real colorangle ([1, 2, 3], [4j, 5, 6]) ***** error id=Octave:invalid-type colorangle ("abc", "def") ***** test assert (colorangle ([0 0 0], [0 1 0]), NaN) assert (colorangle ([0 0 0], [0 1 1]), NaN) assert (colorangle ([0 1 0], [0 0 0]), NaN) assert (colorangle ([1 1 0], [0 0 0]), NaN) assert (colorangle ([1 1 1], [1 1 1]), 0) ***** assert (colorangle ([0 0 0], [0 0 0]), 0) ***** assert (colorangle ([1 0 0], [-1 0 0]), 180) ***** assert (colorangle ([0 0 1], [1 0 0]), 90) ***** assert (colorangle ([0; 0; 1], [1 0 0]), 90) ***** assert (colorangle ([0, 0, 1], [1; 0; 0]), 90) ***** assert (colorangle ([0.5 0.61237 -0.61237], [0.86603 0.35355 -0.35355]), 30.000270917, 1e-4) ***** assert (colorangle ([0.1582055390, 0.2722362096, 0.1620813305], [0.0717 0.1472 0.0975]), 5.09209927, 1e-6) ***** assert (colorangle ([0.0659838500, 0.1261619536, 0.0690643667], [0.0717 0.1472 0.0975]), 5.10358588, 1e-6) ***** assert (colorangle ([0.436871170, 0.7794672250, 0.4489702582], [0.0717 0.1472 0.0975]), 5.01339769, 1e-6) ***** test a = [1 0 0]; b = [1 1 0]; expected = colorangle (a, b); assert (colorangle (a.', b.'), expected) assert (colorangle (a, b.'), expected) assert (colorangle (a.', b), expected) assert (colorangle (vec (a, 3), b.'), expected) ***** assert (colorangle ([1 0 0; 0 1 1], [1 1 1; 2 3 4]), [colorangle([1 0 0], [1 1 1]); colorangle([0 1 1], [2 3 4])]) ***** test a = [1 0 0; 0.5 1 0; 0 1 1; 1 1 1]; b = [0 1 0]; expected = zeros (4, 1); for i = 1:4 expected(i) = colorangle (a(i,:), b); endfor assert (colorangle (a, b), expected) assert (colorangle (b, a), expected) ***** xtest a = [1 2 3]; b = [2 3 4]; c = [5 6 7]; d = [3 1 1]; ac = colorangle (c, a); bc = colorangle (b, c); ad = colorangle (a, d); bd = colorangle (b, d); assert (colorangle (a, cat (3, c, d)), cat (3, [ac ad])) assert (colorangle (cat (3, a, b), cat (3, c, d)), cat (3, [ac cd])) assert (colorangle (cat (1, a, b), cat (3, c, d)), reshape ([ac bc ad bd], [2 2])) !!!!! known failure dot: sizes of X and Y must match 21 tests, 20 passed, 1 known failure, 0 skipped [inst/colfilt.m] >>>>> /<>/inst/colfilt.m ***** demo ## Perform moving average filter with a 4x4 window A = magic (12) colfilt (A, [4 4], "sliding", @mean) ***** test A = reshape (1:36, [6 6]); assert (colfilt (A, [2 2], [3 3], "sliding", @sum), conv2 (A, ones (2), "same")); 1 test, 1 passed, 0 known failure, 0 skipped [inst/imextendedmax.m] >>>>> /<>/inst/imextendedmax.m ***** shared im0, bw0_h2_out im0 = uint8 ([0 0 0 0 0; 0 1 2 1 0; 0 2 5 2 0; 0 1 2 1 0; 0 0 0 0 0]); bw0_h2_out = false (5); bw0_h2_out(3,3) = true; ***** error imextendedmax () ***** error imextendedmax (im0) ***** error imextendedmax ("hello", 2) ***** error imextendedmax (i.*im0, 2) ***** error imextendedmax (sparse (im0), 2) ***** error imextendedmax (im0, -2) ***** error imextendedmax (im0, 'a') ***** error imextendedmax (im0, ones (2)) ***** error imextendedmax (im0, 2*i) ***** assert (imextendedmax (im0, 2), bw0_h2_out) ***** assert (imextendedmax (double (im0), 2), bw0_h2_out) ***** assert (imextendedmax (im0, 2, 8), bw0_h2_out) ***** assert (imextendedmax (im0, 2, 4), bw0_h2_out) ***** assert (imextendedmax (im0, 2, true (3)), bw0_h2_out) ***** test out = imextendedmax (im0, 2); assert (size (out), size (im0)) assert (class (out), "logical") ***** test out = imextendedmax (single (im0), 2); assert (size (out), size (im0)) assert (class (out), "logical") ***** test out = imextendedmax (uint8 (im0), 2); assert (size (out), size (im0)) assert (class (out), "logical") ***** test out = imextendedmax (uint16 (im0), 2); assert (size (out), size (im0)) assert (class (out), "logical") ***** test im = cat (3, im0, im0, im0, im0); out = imextendedmax (im, 2); assert (size (out), size (im)) ***** test im = zeros (10); im(2:4, 2:4) = 3; im(6:8, 6:8) = 8; expected_4 = false (10); expected_4(6:8, 6:8) = true; expected_2 = expected_4; expected_2(2:4, 2:4) = true; out = imextendedmax (im, 4); assert (out, expected_4, eps) out = imextendedmax (0.1.*im, 0.4); assert (out, expected_4, eps) out = imextendedmax (im, 2); assert (out, expected_2, eps) ***** test im2 = zeros (10); im2(2:4, 2:4) = 3; im2(6:9, 6:9)=8; im2(5, 5)=8; im2(6, 7)=0; im2(7, 8)=0; expected_8 = false (10); expected_8(6:9, 6:9) = true; expected_8(5, 5) = true; expected_8(6, 7) = false; expected_8(7, 8) = false; expected_4 = expected_8; expected_4(2:4, 2:4) = true; out2 = imextendedmax (im2, 2); assert (out2, expected_8, eps) out2 = imextendedmax (im2, 2, 4); assert (out2, expected_4, eps) out2 = imextendedmax (im2, 2, 8); assert (out2, expected_8, eps) 21 tests, 21 passed, 0 known failure, 0 skipped [inst/axes2pix.m] >>>>> /<>/inst/axes2pix.m ***** error id=Octave:invalid-fun-call axes2pix () ***** error id=Octave:invalid-fun-call axes2pix (42) ***** error id=Octave:invalid-fun-call axes2pix (42, [1, 2]) ***** error id=Octave:invalid-input-arg axes2pix ([42, 43], [1, 2], [1, 2, 3]) ***** error id=Octave:invalid-input-arg axes2pix (42, [1, 2; 3, 4], [1, 2, 3]) ***** assert (axes2pix (42, [1 42], []), []) ***** assert (axes2pix (240, [1, 240], 30), 30) ***** assert (axes2pix (291, [1, 291], 30), 30) ***** assert (axes2pix (240, [400.5, 520], 450), 100) ***** assert (axes2pix (291, [-19, 271], 90), 110) ***** assert (axes2pix (1, [1 1], [0, 1, 2, 3, 4]), [0, 1, 2, 3, 4]) ***** assert (axes2pix (5, [1 1], [0, 1, 2, 3, 4]), [0, 1, 2, 3, 4]) ***** assert (axes2pix (0, [1 1], [0, 1, 2, 3, 4]), [0, 1, 2, 3, 4]) ***** assert (axes2pix (5, [5 1], [1, 2, 3, 4, 5]), [5, 4, 3, 2, 1]) ***** assert (axes2pix (5, [3 -1], [1, 2, 3, 4, 5]), [3, 2, 1, 0, -1]) ***** assert (axes2pix (25, [5 1], [1, 2, 3, 4, 5]), [25, 19, 13, 7, 1]) ***** assert (axes2pix (1, [1 5], [1, 2, 3, 4, 5]), [1, 2, 3, 4, 5]) ***** assert (axes2pix (1, [5 1], [-1, 0, 1, 2.5]), [-5, -4, -3, -1.5]) ***** assert (axes2pix (1, [-10 -15], [-1, 0, 1.5]), [10, 11, 12.5]) ***** assert (axes2pix (5, [5; 1], [1, 2, 3, 4, 5]), [5, 4, 3, 2, 1]) ***** assert (axes2pix (5, [5; 1], [1; 2; 3; 4; 5]), [5; 4; 3; 2; 1]) 21 tests, 21 passed, 0 known failure, 0 skipped [inst/imresize.m] >>>>> /<>/inst/imresize.m ***** test in = [116 227 153 69 146 194 59 130 139 106 2 47 137 249 90 75 16 24 158 44 155 68 46 84 166 156 69 204 32 152 71 221 137 230 210 153 192 115 30 118 107 143 108 52 51 73 101 21 175 90 54 158 143 77 26 168 113 229 165 225 9 47 133 135 130 207 236 43 19 73]; assert (imresize (uint8 (in), 1, "nearest"), uint8 (in)) assert (imresize (uint8 (in), 1, "bicubic"), uint8 (in)) out = [116 116 227 227 153 153 69 69 146 146 194 194 59 59 130 130 139 139 106 106 116 116 227 227 153 153 69 69 146 146 194 194 59 59 130 130 139 139 106 106 2 2 47 47 137 137 249 249 90 90 75 75 16 16 24 24 158 158 44 44 2 2 47 47 137 137 249 249 90 90 75 75 16 16 24 24 158 158 44 44 155 155 68 68 46 46 84 84 166 166 156 156 69 69 204 204 32 32 152 152 155 155 68 68 46 46 84 84 166 166 156 156 69 69 204 204 32 32 152 152 71 71 221 221 137 137 230 230 210 210 153 153 192 192 115 115 30 30 118 118 71 71 221 221 137 137 230 230 210 210 153 153 192 192 115 115 30 30 118 118 107 107 143 143 108 108 52 52 51 51 73 73 101 101 21 21 175 175 90 90 107 107 143 143 108 108 52 52 51 51 73 73 101 101 21 21 175 175 90 90 54 54 158 158 143 143 77 77 26 26 168 168 113 113 229 229 165 165 225 225 54 54 158 158 143 143 77 77 26 26 168 168 113 113 229 229 165 165 225 225 9 9 47 47 133 133 135 135 130 130 207 207 236 236 43 43 19 19 73 73 9 9 47 47 133 133 135 135 130 130 207 207 236 236 43 43 19 19 73 73]; assert (imresize (uint8 (in), 2, "nearest"), uint8 (out)) assert (imresize (uint8 (in), 2, "neAreST"), uint8 (out)) assert (imresize (uint8 (in), [14 NaN], "nearest"), uint8 (out)) assert (imresize (uint8 (in), [NaN 20], "nearest"), uint8 (out)) out = [116 116 227 227 153 153 69 69 146 146 194 194 59 59 130 130 139 139 106 106 2 2 47 47 137 137 249 249 90 90 75 75 16 16 24 24 158 158 44 44 155 155 68 68 46 46 84 84 166 166 156 156 69 69 204 204 32 32 152 152 71 71 221 221 137 137 230 230 210 210 153 153 192 192 115 115 30 30 118 118 107 107 143 143 108 108 52 52 51 51 73 73 101 101 21 21 175 175 90 90 54 54 158 158 143 143 77 77 26 26 168 168 113 113 229 229 165 165 225 225 9 9 47 47 133 133 135 135 130 130 207 207 236 236 43 43 19 19 73 73]; assert (imresize (uint8 (in), [7 20], "nearest"), uint8 (out)) out = [116 227 153 69 146 194 59 130 139 106 116 227 153 69 146 194 59 130 139 106 2 47 137 249 90 75 16 24 158 44 2 47 137 249 90 75 16 24 158 44 155 68 46 84 166 156 69 204 32 152 155 68 46 84 166 156 69 204 32 152 71 221 137 230 210 153 192 115 30 118 71 221 137 230 210 153 192 115 30 118 107 143 108 52 51 73 101 21 175 90 107 143 108 52 51 73 101 21 175 90 54 158 143 77 26 168 113 229 165 225 54 158 143 77 26 168 113 229 165 225 9 47 133 135 130 207 236 43 19 73 9 47 133 135 130 207 236 43 19 73]; assert (imresize (uint8 (in), [14 10], "nearest"), uint8 (out)) assert (imresize (uint8 (in), 1.5, "box"), imresize (uint8 (in), 1.5, "MeTHoD", "nearest")) assert (imresize (uint8 (in), "Scale", 1.5, "Method", "box"), imresize (uint8 (in), 1.5, {@(h) -0.5 < h & h <= 0.5, 1})) assert (imresize (uint8 (in), 1.5, "bicubic"), imresize (uint8 (in), 1.5, "cubic")) assert (imresize (uint8 (in), [NaN, size(in,2)*1.5], "bicubic"), imresize (uint8 (in), 1.5, "cubic")) assert (imresize (uint8 (in), [size(in,1)*1.5, NaN], "bicubic"), imresize (uint8 (in), 1.5, "cubic")) assert (imresize (uint8 (in), "outputsize", [size(in,1)*1.5, NaN], "method", "bicubic"), imresize (uint8 (in), 1.5, "cubic")) assert (imresize (uint8 (in), 1.5, "linear"), imresize (uint8 (in), 1.5, "LIneAR")) assert (imresize (uint8 (in), 1.5, "linear"), imresize (uint8 (in), 1.5, "triangle")) ***** test in = [116 227 153 69 146 194 59 130 139 106 2 47 137 249 90 75 16 24 158 44 155 68 46 84 166 156 69 204 32 152 71 221 137 230 210 153 192 115 30 118 107 143 108 52 51 73 101 21 175 90 54 158 143 77 26 168 113 229 165 225 9 47 133 135 130 207 236 43 19 73 129 60 59 243 64 181 249 56 32 86]; out = imresize (in, 0.5, "nearest", "Antialiasing", false); for x = 1:columns (out) for y = 1:rows (out) x_in = 2 * (x-1) + 1; y_in = 2 * (y-1) + 1; sub = in(y_in:y_in+1, x_in:x_in+1); assert (any (any (sub == out(y, x)))) endfor endfor out = imresize (in, 0.5, "nearest", "Antialiasing", true); for x = 1:columns (out) for y = 1:rows (out) x_in = 2 * (x-1) + 1; y_in = 2 * (y-1) + 1; val = mean (mean (in(y_in:y_in+1, x_in:x_in+1))); assert (val, out(y, x)) endfor endfor out = imresize (in, "Scale", [0.5, 2], "Method", "nearest", "Antialiasing", true); for x = 1:columns (out) for y = 1:rows (out) x_in = floor (0.5 * (x-1) + 1); y_in = 2 * (y-1) + 1; val = mean (in(y_in:y_in+1, x_in)); assert (val, out(y, x)) endfor endfor out = imresize (in, "Scale", [2, 0.5], "Method", "nearest", "Antialiasing", true); for x = 1:columns (out) for y = 1:rows (out) x_in = 2 * (x-1) + 1; y_in = floor (0.5 * (y-1) + 1); val = mean (in(y_in, x_in:x_in+1)); assert (val, out(y, x)) endfor endfor ***** test assert (imresize (repmat (5, [3 3]), 2), repmat (5, [6 6]), eps*100) assert (imresize (repmat (5, [3 3 2]), 2), repmat (5, [6 6 2]), eps*100) ***** test for channels = 1:3 in = rand (5, 4, channels); for method = {"nearest", "bilinear", "bicubic"} out = imresize (in, 2, method{1}); for i = 1:size (in, 3) assert (out(:, :, i), imresize (in(:, :, i), 2, method{1})) endfor endfor endfor ***** test for channels = 1:3 in = rand (5, 4, channels); out = imresize (in, [1, columns(in)], "nearest", "Antialiasing", true); for i = 1:columns (in) assert (out(1, i, :), mean (in(:, i, :), 1), 10*eps) endfor endfor ***** test for channels = 1:3 in = rand (5, 4, channels); out = imresize (in, [rows(in), 1], "nearest", "Antialiasing", true); for i = 1:rows (in) assert (out(i, 1, :), mean (in(i, :, :), 2), 10*eps) endfor endfor ***** test for channels = 1:3 in = rand (5, 4, channels); out = imresize (in, [1, 1], "nearest", "Antialiasing", true); assert (out(1, 1, :), mean (mean (in(:, :, :))), 10*eps) endfor ***** test in = [116 227 153 69 146 194 59 130 139 106 2 47 137 249 90 75 16 24 158 44 155 68 46 84 166 156 69 204 32 152 71 221 137 230 210 153 192 115 30 118 107 143 108 52 51 73 101 21 175 90 54 158 143 77 26 168 113 229 165 225 9 47 133 135 130 207 236 43 19 73 129 60 59 243 64 181 249 56 32 86]; out = [115 208 134 100 163 117 101 136 109 103 26 61 149 182 95 53 41 116 73 60 133 101 82 140 167 125 152 71 126 144 88 184 137 164 142 145 110 81 104 108 86 146 109 55 73 110 111 156 153 150 33 104 131 100 130 184 147 97 133 142 84 59 114 164 133 219 120 33 72 81 126 60 104 181 116 218 125 38 77 86]; assert (imresize (uint8 (in), 0.91, "bilinear", "Antialiasing", false), uint8 (out), 1) out = [116 172 215 165 111 82 133 170 171 81 95 132 138 123 106 59 98 138 144 152 152 125 127 119 54 58 89 137 112 75 27 39 62 110 172 202 123 96 78 36 40 68 123 100 62 129 97 64 62 87 119 146 148 128 74 117 154 73 94 134 113 129 136 101 125 162 183 172 151 135 146 139 53 83 135 77 143 195 145 166 197 186 162 146 171 138 92 62 84 113 101 129 149 120 98 81 78 82 91 111 77 56 132 123 95 81 116 147 130 96 61 43 80 119 109 116 132 162 164 158 46 93 139 141 114 80 50 109 168 141 166 189 151 171 200 16 41 77 123 130 123 115 157 204 214 145 69 48 71 98 69 62 61 89 143 174 112 146 202 235 147 46 30 53 80 129 95 60 59 151 213 94 123 192 238 153 52 36 59 86]; assert (imresize (uint8 (in), 1.5, "bilinear"), uint8 (out), 1) out = [ 98 152 126 58 112 129 125 172 146 83 116 96 80 116 164 62 143 146 147 53]; assert (imresize (uint8 (in), 0.5, "bilinear", "Antialiasing", false), uint8 (out), 1) out = [108 136 125 89 107 111 132 143 114 99 106 110 106 127 136 75 124 154 142 75]; assert (imresize (uint8 (in), 0.5, "bilinear", "Antialiasing", true), uint8 (out), 1) out = [116 185 199 143 80 117 164 177 76 103 133 135 110 106 45 89 126 148 177 138 114 109 43 52 97 141 78 67 59 57 73 114 177 145 114 96 45 71 99 108 88 85 145 109 76 63 96 146 166 147 93 152 133 47 134 148 82 157 174 137 201 208 186 156 174 145 90 42 111 122 94 143 152 119 119 114 108 107 131 86 80 119 104 101 87 126 139 114 69 49 67 109 106 102 126 167 145 141 48 108 143 135 91 56 89 167 134 177 184 154 199 206 15 44 88 133 129 121 149 204 219 124 55 44 85 92 84 66 67 102 189 132 127 198 237 123 42 34 74 81 129 86 60 82 220 131 108 190 241 128 47 39 79 86]; assert (imresize (uint8 (in), 4/3, "bilinear"), uint8 (out), 1) lin = @(x) (1 - abs(x)) .* (abs(x) < 1); out = [ 47 90 24 44 143 51 21 90 60 64 56 86]; assert (imresize (uint8 (in), 1/3, "bilinear", "Antialiasing", false), uint8 (out), 1) assert (imresize (uint8 (in), 1/3, {lin, 2}, "Antialiasing", false), uint8 (out), 1) out = [115 131 101 102 114 117 120 121 91 147 116 76]; assert (imresize (uint8 (in), 1/3, "bilinear", "Antialiasing", true), uint8 (out), 1) assert (imresize (uint8 (in), 1/3, {lin, 2}, "Antialiasing", true), uint8 (out), 1) ***** test in = [116 227 153 69 146 194 59 130 139 106 2 47 137 249 90 75 16 24 158 44 155 68 46 84 166 156 69 204 32 152 71 221 137 230 210 153 192 115 30 118 107 143 108 52 51 73 101 21 175 90 54 158 143 77 26 168 113 229 165 225 9 47 133 135 130 207 236 43 19 73 129 60 59 243 64 181 249 56 32 86]; out = [116 187 237 171 94 61 135 191 187 75 91 142 140 124 108 43 92 143 149 164 163 119 123 118 44 38 80 151 118 62 13 21 47 107 195 228 115 81 70 24 19 56 137 105 48 146 98 49 49 71 107 148 159 132 58 124 176 61 85 146 118 139 144 92 116 168 201 188 159 140 167 158 27 69 153 61 151 218 145 174 219 201 164 146 187 148 84 48 76 115 102 132 151 119 90 72 72 72 83 114 60 31 144 130 80 81 121 154 133 87 41 19 67 116 95 108 140 183 180 163 37 95 152 150 117 73 35 108 179 130 174 214 153 176 219 3 29 73 131 136 120 116 162 214 229 147 54 35 62 96 67 54 51 83 153 187 111 141 210 255 149 22 13 42 74 142 99 53 43 164 237 77 103 197 254 159 42 31 59 91]; assert (imresize (uint8 (in), 1.5, "bicubic"), uint8 (out), 1) out = [ 92 164 123 38 118 139 116 188 167 69 121 87 67 108 180 54 153 141 149 42]; assert (imresize (uint8 (in), 0.5, "bicubic", "Antialiasing", false), uint8 (out), 1) out = [105 140 126 81 109 110 134 153 114 93 108 108 94 127 146 67 126 162 149 62]; assert (imresize (uint8 (in), 0.5, "bicubic", "Antialiasing", true), uint8 (out), 1) out = [116 203 221 141 62 110 180 191 70 104 143 136 111 106 26 78 126 156 200 139 103 103 33 28 92 158 67 46 51 35 51 112 195 146 101 87 29 57 100 114 81 74 159 110 63 50 82 148 179 152 83 173 147 27 143 170 70 171 189 134 217 226 193 158 186 157 83 25 114 135 91 152 162 116 118 114 102 98 138 65 60 127 92 84 90 130 144 111 52 24 50 101 94 86 129 190 146 135 41 114 157 139 89 37 82 178 125 192 203 154 213 227 4 33 89 141 127 118 151 213 232 119 35 34 81 92 88 61 54 97 203 129 115 203 255 119 18 24 70 81 147 91 43 68 247 125 80 191 255 130 33 37 83 94]; assert (imresize (uint8 (in), 4/3, "bicubic"), uint8 (out), 1) out = [ 47 90 24 44 143 51 21 90 60 64 56 86]; assert (imresize (uint8 (in), 1/3, "bicubic", "Antialiasing", false), uint8 (out), 1) out = [115 135 97 101 113 119 124 125 81 157 118 64]; assert (imresize (uint8 (in), 1/3, "bicubic", "Antialiasing", true), uint8 (out), 1) ***** test in = checkerboard (1, [2 2]); out = [0.5 0.35 0.5 0.35]; assert ( imresize (in, 0.5, "bilinear", "Antialiasing", false), out) ***** test in = ones (2) + 1i; out_nearest = imresize (in, 1.5, "nearest"); assert (out_nearest, ones (3) + 1i); out_linear = imresize (in, 1.5, "linear"); assert (out_linear, ones (3) + 1i); out_cubic = imresize (in, 1.5, "cubic"); assert (out_cubic, ones (3) + 1i, 1e-14); ***** test in = cat (3, 10, 10, 10); expected = 10 * ones (2, 2, 3); # consistent with MATLAB behaviour out_nearest = imresize (in, [2, 2], "nearest"); assert (out_nearest, expected); out_linear = imresize (in, [2, 2], "linear"); assert (out_linear, expected); out_cubic = imresize (in, [2, 2], "cubic"); assert (out_cubic, expected); ***** test in_row = cat(3, [10,6], [10,6], [10,6]); plane_expected_nearest = [1; 1; 1] * [10, 10, 6, 6]; out_expected = cat (3, plane_expected_nearest, plane_expected_nearest, plane_expected_nearest); out_nearest = imresize (in_row, [3, 4], "nearest"); assert (out_nearest, out_expected); plane_expected_linear = [1; 1; 1] * [10, 8, 6]; out_expected = cat (3, plane_expected_linear, plane_expected_linear, plane_expected_linear); out_linear = imresize (in_row, [3, 3], "linear"); assert (out_linear, out_expected); plane_expected_cubic = [1; 1; 1] * [10.27777777777777, 8, 5.72222222222222]; # values from MATLAB out_expected = cat (3, plane_expected_cubic, plane_expected_cubic, plane_expected_cubic); out_cubic = imresize (in_row, [3, 3], "cubic"); assert (out_cubic, out_expected, 1e-13); in_col = cat(3, [10;6], [10;6], [10;6]); plane_expected_nearest = [10; 10; 6; 6] * [1, 1, 1]; out_expected = cat (3, plane_expected_nearest, plane_expected_nearest, plane_expected_nearest); out_nearest = imresize (in_col, [4, 3], "nearest"); assert (out_nearest, out_expected); plane_expected_linear = [10; 8; 6] * [1, 1, 1]; out_expected = cat (3, plane_expected_linear, plane_expected_linear, plane_expected_linear); out_linear = imresize (in_col, [3, 3], "linear"); assert (out_linear, out_expected); plane_expected_cubic = [10.27777777777777; 8; 5.72222222222222] * [1, 1, 1]; # values from MATLAB out_expected = cat (3, plane_expected_cubic, plane_expected_cubic, plane_expected_cubic); out_cubic = imresize (in_col, [3, 3], "cubic"); assert (out_cubic, out_expected, 1e-13); ***** #test r_big_int16 = randi(16000, 8000, 8000, "int16"); r_big_double = randi(16000, 8000, 8000); tic; imresize (r_big_int16, 100/8000); toc; tic; imresize (r_big_double, 100/8000); toc; r_small_int16 = randi(16000, 100, 100, "int16"); r_small_double = randi(16000, 100, 100); tic; imresize (r_small_int16, 8000/100); toc; tic; imresize (r_small_double, 8000/100); toc; 13 tests, 13 passed, 0 known failure, 0 skipped [inst/imclearborder.m] >>>>> /<>/inst/imclearborder.m ***** test a = logical ([ 0 1 0 0 1 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 1 0 0 1 0 1 0 0 0 1 0 1 0 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 1 1 0 0 0 1 0]); a4 = logical ([ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 0 1 0 1 0 0 0 1 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0]); a8 = logical ([ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]); assert (imclearborder (a, 4), a4) assert (imclearborder (a, [0 1 0; 1 1 1; 0 1 0]), a4) assert (imclearborder (a), a8) assert (imclearborder (a, 8), a8) assert (imclearborder (a, ones (3)), a8) ***** test a = false (5, 5, 3); a(2:4,2:4,:) = true; assert (imclearborder (a, 4), a) a(1,2) = true; a4 = a; a4(:,:,1) = false; assert (imclearborder (a, 4), a4) 2 tests, 2 passed, 0 known failure, 0 skipped [inst/poly2mask.m] >>>>> /<>/inst/poly2mask.m ***** demo s = [0:pi/4:2*pi]; x = cos (s) * 90 + 101; y = sin (s) * 90 + 101; bw = poly2mask(x, y, 200, 200); imshow (bw); ***** demo s = [0:2*pi/5:pi*4]; s = s ([1, 3, 5, 2, 4, 6]); x = cos (s) * 90 + 101; y = sin (s) * 90 + 101; bw = poly2mask (x, y, 200, 200); imshow (bw); ***** # Convex polygons ***** shared xs, ys, Rs, xt, yt, Rt xs=[3,3,10,10]; ys=[4,12,12,4]; Rs=zeros(16,14); Rs(5:12,4:10)=1; Rs=logical(Rs); xt=[1,4,7]; yt=[1,4,1]; Rt=[0,0,0,0,0,0,0; 0,0,1,1,1,1,0; 0,0,0,1,1,0,0; 0,0,0,1,0,0,0; 0,0,0,0,0,0,0]; Rt=logical(Rt); ***** assert(poly2mask(xs,ys,16,14),Rs); # rectangle ***** assert(poly2mask(xs,ys,8,7),Rs(1:8,1:7)); # clipped ***** assert(poly2mask(xs-7,ys-8,8,7),Rs(9:16,8:14)); # more clipping ***** assert(poly2mask(xt,yt,5,7),Rt); # triangle ***** assert(poly2mask(xt,yt,3,3),Rt(1:3,1:3)); # clipped ***** # Concave polygons ***** test x=[3,3,5,5,8,8,10,10]; y=[4,12,12,8,8,11,11,4]; R=zeros(16,14); R(5:12,4:5)=1; R(5:8,6:8)=1; R(5:11,9:10)=1; R=logical(R); assert(poly2mask(x,y,16,14), R); ***** # Complex polygons ***** test x=[1,5,1,5]; y=[1,1,4,4]; R=[0,0,0,0,0,0; 0,0,1,1,0,0; 0,0,1,1,0,0; 0,1,1,1,1,0; 0,0,0,0,0,0]; R=logical(R); assert(poly2mask(x,y,5,6), R); 7 tests, 7 passed, 0 known failure, 0 skipped [inst/imbothat.m] >>>>> /<>/inst/imbothat.m ***** assert (imbothat (ones (3), [1 1; 0 1]), zeros (3)); ***** assert (imbothat (true (3), [1 1; 0 1]), false (3)); ***** shared in, out, se in = [ 0 0 0 1 1 1 0 0 1 1 0 1 0 1 1 1 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0 1 0 1 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0]; out = [ 1 1 1 0 0 0 1 1 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 1 1 1 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0]; ***** assert (imbothat (logical (in), ones (3)), logical (out)); out = [ 7 0 15 8 1 6 0 13 6 24 0 8 9 2 0 0 16 7 0 23 89 7 0 41 39 7 12 7 0 23 8 1 69 40 58 1 6 2 0 43 7 0 63 59 52 0 0 0 14 32 62 55 6 7 0 7 0 23 16 1 56 74 0 2 0 0 16 14 7 0 0 73 69 0 0 19 15 8 1 0 8 6 0 0 6 13 9 2 0 6 7 0 0 19 0 14 7 0 23 0]; ***** assert (imbothat (magic (10), ones (3)), out); ***** assert (imbothat (uint8 (magic (10)), strel ("square", 3)), uint8 (out)); ## using a se that will be decomposed in 2 pieces out =[ 7 0 87 66 59 7 0 19 12 30 0 13 81 60 58 1 19 13 6 29 89 12 0 54 52 20 18 7 0 23 8 6 69 53 71 14 12 2 0 43 7 0 63 73 66 14 7 0 23 41 76 69 14 7 0 30 23 46 39 7 70 88 9 2 0 24 42 40 33 6 14 87 80 0 0 43 41 34 27 0 84 82 0 0 19 37 35 28 26 19 89 82 0 20 13 36 29 22 45 13]; ***** assert (imbothat (magic (10), ones(5)), out); ## using a weird non-symmetric and even-size se out =[ 0 0 15 8 1 3 0 7 0 18 0 8 53 59 0 0 14 13 0 17 84 0 0 40 38 6 13 6 0 23 2 0 42 47 58 0 6 0 0 41 0 0 62 59 52 0 0 0 16 35 6 58 13 6 0 3 19 19 35 1 0 18 0 0 0 0 15 13 6 0 0 17 69 0 0 17 17 8 0 0 8 67 0 0 0 15 9 2 0 6 7 0 0 17 10 42 7 0 19 0]; ***** assert (imbothat (magic (10), [1 0 0 0; 1 1 1 0; 0 1 0 1]), out); ## N dimensional and weird se in = reshape (magic(16), [4 8 4 2]); se = ones (3, 3, 3); se(:,:,1) = [1 0 1; 0 1 1; 0 0 0]; se(:,:,3) = [1 0 1; 0 1 1; 0 0 1]; out = zeros (size (in)); out(:,:,1,1) = [ 0 17 81 145 237 146 64 0 205 128 64 0 0 37 83 147 175 111 47 0 0 64 117 181 0 64 128 209 173 109 45 0]; out(:,:,2,1) = [ 235 142 78 18 0 23 69 133 0 35 103 163 215 128 46 0 0 64 128 195 183 123 48 0 153 93 43 0 14 78 146 215]; out(:,:,3,1) = [ 0 25 89 153 229 142 64 0 201 128 64 0 0 41 91 155 167 103 57 0 0 64 125 189 0 64 146 217 165 101 37 0]; out(:,:,4,1) = [ 227 142 78 14 0 31 77 141 0 43 107 171 211 128 46 0 0 64 128 203 179 115 48 0 149 99 35 0 18 82 146 223]; out(:,:,1,2) = [ 0 33 97 161 221 146 64 0 189 125 61 0 0 53 99 163 159 95 31 0 0 64 128 197 0 64 128 225 157 93 29 0]; out(:,:,2,2) = [ 219 142 78 18 0 39 85 149 0 51 119 179 199 128 46 0 0 64 128 211 167 107 43 0 137 77 27 0 14 78 146 231]; out(:,:,3,2) = [ 0 41 105 169 213 142 64 0 185 121 64 0 0 57 107 171 151 87 41 0 0 64 128 205 0 64 146 233 149 85 21 0]; out(:,:,4,2) = [ 211 142 78 14 0 47 93 157 0 59 123 187 195 128 46 0 0 64 128 219 163 99 35 0 133 83 19 0 18 82 146 239]; ***** assert (imbothat (in, se), out); 8 tests, 8 passed, 0 known failure, 0 skipped [inst/grayslice.m] >>>>> /<>/inst/grayslice.m ***** test expected = uint8 ([0 4 5 5 9]); im = [0 0.45 0.5 0.55 1]; assert (grayslice (im), expected) assert (grayslice (im, 10), expected) assert (grayslice (im, uint8 (10)), expected) assert (grayslice (im, [.1 .2 .3 .4 .5 .6 .7 .8 .9]), expected) ***** test im = [0 0.45 0.5 0.55 1]; assert (grayslice (im, 2), uint8 ([0 0 1 1 1])) assert (grayslice (im, 3), uint8 ([0 1 1 1 2])) assert (grayslice (im, 4), uint8 ([0 1 2 2 3])) assert (grayslice (im, [0 0.5 1]), uint8 ([1 1 2 2 3])) assert (grayslice (im, [0.5 1]), uint8 ([0 0 1 1 2])) assert (grayslice (im, [0.6 1]), uint8 ([0 0 0 0 2])) ***** test im = [0 .55 1]; assert (grayslice (im, 9), uint8 ([0 4 8])) assert (grayslice (im, 9.1), uint8 ([0 5 8])) assert (grayslice (im, 10), uint8 ([0 5 9])) ***** assert (grayslice ([0 .5 1], [0 1 .5]), uint8 ([1 2 3])) ***** test ## 0 > N > 1 values are treated as if they are V and N=2 im = [0 .5 .55 .7 1]; assert (grayslice (im, .5), uint8 ([0 1 1 1 1])) assert (grayslice (im, .51), uint8 ([0 0 1 1 1])) assert (grayslice (im, .7), uint8 ([0 0 0 1 1])) assert (grayslice (im, 1), uint8 ([0 0 0 0 0])) assert (grayslice (im, 1.2), uint8 ([0 0 0 0 0])) ***** assert (grayslice ([0 .5 .7 1], [0 .5 1 2]), uint8 ([1 2 2 4])) ***** assert (grayslice ([0 .45 .5 .65 .7 1], [.4 .5 .5 .7 .7 1]), uint8 ([0 1 3 3 5 6])) ***** assert (grayslice ([-.5 .1 .8 1.2], [-1 -.4 .05 .6 .9 1.1 2]), uint8 ([1 3 4 7])) ***** assert (grayslice ([0 .5 1], [-1 .5 1 2]), uint8 ([1 2 4])) ***** assert (grayslice ([-2 -1 .5 1], [-1 .5 1]), uint8 ([0 1 2 3])) ***** test sliced = [ repmat(0, [26 1]) repmat(1, [25 1]) repmat(2, [26 1]) repmat(3, [25 1]) repmat(4, [26 1]) repmat(5, [25 1]) repmat(6, [26 1]) repmat(7, [25 1]) repmat(8, [26 1]) repmat(9, [26 1]) ]; sliced = uint8 (sliced(:).'); assert (grayslice (uint8 (0:255)), sliced) ***** assert (grayslice (uint8 (0:255), 255), uint8 ([0:254 254])) ***** assert (class (grayslice (uint8 (0:255), 256)), "double") ***** xtest assert (grayslice (uint8 (0:255), 256), [1:256]) ## While the above fails, this passes and should continue to do so ## since it's the actual formula in the documentation. assert (grayslice (uint8 (0:255), 256), grayslice (uint8 (0:255), (1:255)./256)) !!!!! known failure ASSERT errors for: assert (grayslice (uint8 (0:255), 256),[1:256]) Location | Observed | Expected | Reason (129) 130 129 Abs err 1 exceeds tol 0 by 1 (130) 131 130 Abs err 1 exceeds tol 0 by 1 (131) 132 131 Abs err 1 exceeds tol 0 by 1 (132) 133 132 Abs err 1 exceeds tol 0 by 1 (133) 134 133 Abs err 1 exceeds tol 0 by 1 (134) 135 134 Abs err 1 exceeds tol 0 by 1 (135) 136 135 Abs err 1 exceeds tol 0 by 1 (136) 137 136 Abs err 1 exceeds tol 0 by 1 (137) 138 137 Abs err 1 exceeds tol 0 by 1 (138) 139 138 Abs err 1 exceeds tol 0 by 1 (139) 140 139 Abs err 1 exceeds tol 0 by 1 (140) 141 140 Abs err 1 exceeds tol 0 by 1 (141) 142 141 Abs err 1 exceeds tol 0 by 1 (142) 143 142 Abs err 1 exceeds tol 0 by 1 (143) 144 143 Abs err 1 exceeds tol 0 by 1 (144) 145 144 Abs err 1 exceeds tol 0 by 1 (145) 146 145 Abs err 1 exceeds tol 0 by 1 (146) 147 146 Abs err 1 exceeds tol 0 by 1 (147) 148 147 Abs err 1 exceeds tol 0 by 1 (148) 149 148 Abs err 1 exceeds tol 0 by 1 (149) 150 149 Abs err 1 exceeds tol 0 by 1 (150) 151 150 Abs err 1 exceeds tol 0 by 1 (151) 152 151 Abs err 1 exceeds tol 0 by 1 (152) 153 152 Abs err 1 exceeds tol 0 by 1 (153) 154 153 Abs err 1 exceeds tol 0 by 1 (154) 155 154 Abs err 1 exceeds tol 0 by 1 (155) 156 155 Abs err 1 exceeds tol 0 by 1 (156) 157 156 Abs err 1 exceeds tol 0 by 1 (157) 158 157 Abs err 1 exceeds tol 0 by 1 (158) 159 158 Abs err 1 exceeds tol 0 by 1 (159) 160 159 Abs err 1 exceeds tol 0 by 1 (160) 161 160 Abs err 1 exceeds tol 0 by 1 (161) 162 161 Abs err 1 exceeds tol 0 by 1 (162) 163 162 Abs err 1 exceeds tol 0 by 1 (163) 164 163 Abs err 1 exceeds tol 0 by 1 (164) 165 164 Abs err 1 exceeds tol 0 by 1 (165) 166 165 Abs err 1 exceeds tol 0 by 1 (166) 167 166 Abs err 1 exceeds tol 0 by 1 (167) 168 167 Abs err 1 exceeds tol 0 by 1 (168) 169 168 Abs err 1 exceeds tol 0 by 1 (169) 170 169 Abs err 1 exceeds tol 0 by 1 (170) 171 170 Abs err 1 exceeds tol 0 by 1 (171) 172 171 Abs err 1 exceeds tol 0 by 1 (172) 173 172 Abs err 1 exceeds tol 0 by 1 (173) 174 173 Abs err 1 exceeds tol 0 by 1 (174) 175 174 Abs err 1 exceeds tol 0 by 1 (175) 176 175 Abs err 1 exceeds tol 0 by 1 (176) 177 176 Abs err 1 exceeds tol 0 by 1 (177) 178 177 Abs err 1 exceeds tol 0 by 1 (178) 179 178 Abs err 1 exceeds tol 0 by 1 (179) 180 179 Abs err 1 exceeds tol 0 by 1 (180) 181 180 Abs err 1 exceeds tol 0 by 1 (181) 182 181 Abs err 1 exceeds tol 0 by 1 (182) 183 182 Abs err 1 exceeds tol 0 by 1 (183) 184 183 Abs err 1 exceeds tol 0 by 1 (184) 185 184 Abs err 1 exceeds tol 0 by 1 (185) 186 185 Abs err 1 exceeds tol 0 by 1 (186) 187 186 Abs err 1 exceeds tol 0 by 1 (187) 188 187 Abs err 1 exceeds tol 0 by 1 (188) 189 188 Abs err 1 exceeds tol 0 by 1 (189) 190 189 Abs err 1 exceeds tol 0 by 1 (190) 191 190 Abs err 1 exceeds tol 0 by 1 (191) 192 191 Abs err 1 exceeds tol 0 by 1 (192) 193 192 Abs err 1 exceeds tol 0 by 1 (193) 194 193 Abs err 1 exceeds tol 0 by 1 (194) 195 194 Abs err 1 exceeds tol 0 by 1 (195) 196 195 Abs err 1 exceeds tol 0 by 1 (196) 197 196 Abs err 1 exceeds tol 0 by 1 (197) 198 197 Abs err 1 exceeds tol 0 by 1 (198) 199 198 Abs err 1 exceeds tol 0 by 1 (199) 200 199 Abs err 1 exceeds tol 0 by 1 (200) 201 200 Abs err 1 exceeds tol 0 by 1 (201) 202 201 Abs err 1 exceeds tol 0 by 1 (202) 203 202 Abs err 1 exceeds tol 0 by 1 (203) 204 203 Abs err 1 exceeds tol 0 by 1 (204) 205 204 Abs err 1 exceeds tol 0 by 1 (205) 206 205 Abs err 1 exceeds tol 0 by 1 (206) 207 206 Abs err 1 exceeds tol 0 by 1 (207) 208 207 Abs err 1 exceeds tol 0 by 1 (208) 209 208 Abs err 1 exceeds tol 0 by 1 (209) 210 209 Abs err 1 exceeds tol 0 by 1 (210) 211 210 Abs err 1 exceeds tol 0 by 1 (211) 212 211 Abs err 1 exceeds tol 0 by 1 (212) 213 212 Abs err 1 exceeds tol 0 by 1 (213) 214 213 Abs err 1 exceeds tol 0 by 1 (214) 215 214 Abs err 1 exceeds tol 0 by 1 (215) 216 215 Abs err 1 exceeds tol 0 by 1 (216) 217 216 Abs err 1 exceeds tol 0 by 1 (217) 218 217 Abs err 1 exceeds tol 0 by 1 (218) 219 218 Abs err 1 exceeds tol 0 by 1 (219) 220 219 Abs err 1 exceeds tol 0 by 1 (220) 221 220 Abs err 1 exceeds tol 0 by 1 (221) 222 221 Abs err 1 exceeds tol 0 by 1 (222) 223 222 Abs err 1 exceeds tol 0 by 1 (223) 224 223 Abs err 1 exceeds tol 0 by 1 (224) 225 224 Abs err 1 exceeds tol 0 by 1 (225) 226 225 Abs err 1 exceeds tol 0 by 1 (226) 227 226 Abs err 1 exceeds tol 0 by 1 (227) 228 227 Abs err 1 exceeds tol 0 by 1 (228) 229 228 Abs err 1 exceeds tol 0 by 1 (229) 230 229 Abs err 1 exceeds tol 0 by 1 (230) 231 230 Abs err 1 exceeds tol 0 by 1 (231) 232 231 Abs err 1 exceeds tol 0 by 1 (232) 233 232 Abs err 1 exceeds tol 0 by 1 (233) 234 233 Abs err 1 exceeds tol 0 by 1 (234) 235 234 Abs err 1 exceeds tol 0 by 1 (235) 236 235 Abs err 1 exceeds tol 0 by 1 (236) 237 236 Abs err 1 exceeds tol 0 by 1 (237) 238 237 Abs err 1 exceeds tol 0 by 1 (238) 239 238 Abs err 1 exceeds tol 0 by 1 (239) 240 239 Abs err 1 exceeds tol 0 by 1 (240) 241 240 Abs err 1 exceeds tol 0 by 1 (241) 242 241 Abs err 1 exceeds tol 0 by 1 (242) 243 242 Abs err 1 exceeds tol 0 by 1 (243) 244 243 Abs err 1 exceeds tol 0 by 1 (244) 245 244 Abs err 1 exceeds tol 0 by 1 (245) 246 245 Abs err 1 exceeds tol 0 by 1 (246) 247 246 Abs err 1 exceeds tol 0 by 1 (247) 248 247 Abs err 1 exceeds tol 0 by 1 (248) 249 248 Abs err 1 exceeds tol 0 by 1 (249) 250 249 Abs err 1 exceeds tol 0 by 1 (250) 251 250 Abs err 1 exceeds tol 0 by 1 (251) 252 251 Abs err 1 exceeds tol 0 by 1 (252) 253 252 Abs err 1 exceeds tol 0 by 1 (253) 254 253 Abs err 1 exceeds tol 0 by 1 (254) 255 254 Abs err 1 exceeds tol 0 by 1 (255) 256 255 Abs err 1 exceeds tol 0 by 1 ***** test ## Use of threshold in the [0 1] range for images of integer type does ## not really work despite the Matlab documentation. It's Matlab ## documentation that is wrong, see bug #55059 assert (grayslice (uint8([0 100 200 255]), [.1 .4 .5]), uint8 ([0 3 3 3])) assert (grayslice (uint8([0 100 200 255]), [100 199 200 210]), uint8 ([0 1 3 4])) ## P (penny) is a 2d image of class double in [1 255] range q = warning ("query", "Octave:data-file-in-path"); warning ("off", "Octave:data-file-in-path"); load ("penny.mat"); warning (q.state, "Octave:data-file-in-path"); assert (grayslice (P), repmat (uint8 (9), size (P))) ***** function gs = test_grayslice_v (I, v) ## This is effectively what grayslice does but slower with a for ## loop internally. gs = zeros (size (I)); for idx = 1:numel (v) gs(I >= v(idx)) = idx; endfor if (numel (v) >= 256) gs = gs +1; else gs = uint8 (gs); endif ***** endfunction ***** test q = warning ("query", "Octave:data-file-in-path"); warning ("off", "Octave:data-file-in-path"); load ("penny.mat"); warning (q.state, "Octave:data-file-in-path"); ## The loaded P in penny.mat is of size 128x128, class double, and ## with values in the [1 255] range penny_uint8 = uint8 (P); penny_double = im2double (penny_uint8); # rescales to [0 1] range] ## default of N = 10 expected = test_grayslice_v (penny_uint8, [26 51 77 102 128 153 179 204 230]); assert (grayslice (penny_uint8, 10), expected) assert (grayslice (penny_uint8), expected) expected = test_grayslice_v (penny_double, [.1 .2 .3 .4 .5 .6 .7 .8 .9]); assert (grayslice (penny_double, 10), expected) assert (grayslice (penny_double), expected) ***** test ## For images with more than 2d q = warning ("query", "Octave:data-file-in-path"); warning ("off", "Octave:data-file-in-path"); load ("penny.mat"); warning (q.state, "Octave:data-file-in-path"); penny_double = im2double (uint8 (P)); P_3d = repmat (penny_double, [1 1 3]); P_5d = repmat (penny_double, [1 1 3 2 3]); v = [.3 .5 .7]; expected_2d = test_grayslice_v (penny_double, v); assert (grayslice (P_3d, v), repmat (expected_2d, [1 1 3])) assert (grayslice (P_5d, v), repmat (expected_2d, [1 1 3 2 3])) ***** test q = warning ("query", "Octave:data-file-in-path"); warning ("off", "Octave:data-file-in-path"); load ("penny.mat"); warning (q.state, "Octave:data-file-in-path"); penny_double = uint8 (P); ## Test that change from uint8 to double happens at 256 exactly assert (class (grayslice (penny_double, 255)), "uint8") assert (class (grayslice (penny_double, 256)), "double") ## If returns in class double, it's +1. v = [10 150 200]; v_long = [v 256:600]; assert (double (grayslice (penny_double, v)) +1, grayslice (penny_double, v_long)) ***** test ## If there's a vector for floating point and goes outside the ## range, it uses the last index of the vector. q = warning ("query", "Octave:data-file-in-path"); warning ("off", "Octave:data-file-in-path"); load ("penny.mat"); warning (q.state, "Octave:data-file-in-path"); penny_double = im2double (uint8 (P)); v = [.3 .5 .7 2:10]; idx_1 = find (penny_double == 1); assert (grayslice (penny_double, v)(idx_1), uint8 ([12; 12])) ***** error x = grayslice ([1 2; 3 4], 0) ***** error x = grayslice ([1 2; 3 4], -1) ***** error x = grayslice ([1 2; 3 4], "foo") ***** test ## test output values for all input classes klasse = "uint8"; im = cast ([intmin(klasse): intmax(klasse)], klasse); erg05 = grayslice (im, 0.5); first1_erg05 = im(find (erg05)(1)); assert (first1_erg05, cast (1, klasse)); erg5 = grayslice (im, 5); first1_erg5 = im(find (erg5)(1)); assert (first1_erg5, cast (51, klasse)); ergint5 = grayslice (im, uint8 (5)); first1_ergint5 = im(find (ergint5)(1)); assert (first1_ergint5, cast (51, klasse)); klasse = "uint16"; im = cast ([intmin(klasse): intmax(klasse)], klasse); erg05 = grayslice (im, 0.5); first1_erg05 = im(find (erg05)(1)); assert (first1_erg05, cast (1, klasse)); erg5 = grayslice (im, 5); first1_erg5 = im(find (erg5)(1)); assert (first1_erg5, cast (13107, klasse)); ergint5 = grayslice (im, uint8 (5)); first1_ergint5 = im(find (ergint5)(1)); assert (first1_ergint5, cast (13107, klasse)); klasse = "int16"; im = cast ([intmin(klasse): intmax(klasse)], klasse); erg05 = grayslice (im, 0.5); first1_erg05 = im(find (erg05)(1)); assert (first1_erg05, cast (-32767, klasse)); erg5 = grayslice (im, 5); first1_erg5 = im(find (erg5)(1)); assert (first1_erg5, cast (-19661, klasse)); ergint5 = grayslice (im, uint8 (5)); first1_ergint5 = im(find (ergint5)(1)); assert (first1_ergint5, cast (-19661, klasse)); klasse = "single"; im = cast ([0:0.001:1], klasse); erg05 = grayslice (im, 0.5); first1_erg05 = im(find (erg05)(1)); assert (first1_erg05, cast (0.5, klasse)); erg5 = grayslice (im, 5); first1_erg5 = im(find (erg5)(1)); assert (first1_erg5, cast (0.2, klasse)); ergint5 = grayslice (im, uint8 (5)); first1_ergint5 = im(find (ergint5)(1)); assert (first1_ergint5, cast (0.2, klasse)); klasse = "double"; im = cast ([0:0.001:1], klasse); erg05 = grayslice (im, 0.5); first1_erg05 = im(find (erg05)(1)); assert (first1_erg05, cast (0.5, klasse)); erg5 = grayslice (im, 5); first1_erg5 = im(find (erg5)(1)); assert (first1_erg5, cast (0.2, klasse)); ergint5 = grayslice (im, uint8 (5)); first1_ergint5 = im(find (ergint5)(1)); assert (first1_ergint5, cast (0.2, klasse)); 23 tests, 22 passed, 1 known failure, 0 skipped [inst/houghpeaks.m] >>>>> /<>/inst/houghpeaks.m ***** shared im1 im1 = magic (5); ***** error houghpeaks () ***** error houghpeaks (1, 2, 3, 4, 5, 6, 7) ***** assert (houghpeaks (im1)) ***** assert (houghpeaks (im1, 2)) ***** assert (houghpeaks (im1, "Threshold", 10)) ***** assert (houghpeaks (im1, 2, "Threshold", 10)) ***** assert (houghpeaks (im1, "NHoodSize", [3 3])) ***** assert (houghpeaks (im1, 2, "NHoodSize", [3 3])) ***** assert (houghpeaks (im1, "Threshold", 10, "NHoodSize", [3 3])) ***** assert (houghpeaks (im1, "NHoodSize", [3 3], "Threshold", 10)) ***** assert (houghpeaks (im1, 2, "Threshold", 10, "NHoodSize", [3 3])) ***** assert (houghpeaks (im1, 2, "NHoodSize", [3 3], "Threshold", 10)) ***** error houghpeaks (ones (5, 5, 5)) ***** error houghpeaks ("hello") ***** error houghpeaks (im1, 1.5) ***** error houghpeaks (im1, -2) ***** error houghpeaks (im1, [1 1]) ***** error houghpeaks (im1, "Threshold", "hello") ***** error houghpeaks (im1, "Threshold", -2) ***** error houghpeaks (im1, "Threshold", [1 1]) ***** error houghpeaks (im1, "NHoodSize", [3 3 3]) ***** error houghpeaks (im1, "NHoodSize", "hello") ***** error houghpeaks (im1, "NHoodSize", [-3 -3]) ***** error houghpeaks (im1, "NHoodSize", [4 4]) ***** test out = houghpeaks (im1); assert (size (out), [1 2]) assert (class (out), "double") ***** test out = houghpeaks (im1, 3); assert (size (out), [3 2]) ***** test expected = [5 3; 1 2; 3 5; 1 5]; assert (houghpeaks (im1, 4), expected) # this checks for undocumented nhood >=3 assert (houghpeaks (im1, 4, "nhoodsize", [3,3]), expected) assert (houghpeaks (im1, 4, "threshold", 10), expected) assert (houghpeaks (im1, 4, "threshold", 24), expected(1:2,:)) ***** test im2 = magic (7); expected_a = [7 4; 1 3; 3 1; 5 6]; expected_b = [7 4; 1 3; 4 7; 1 7]; assert (houghpeaks (im2, 4), expected_a) assert (houghpeaks (im2, 4, "nhoodsize", [5,5]), expected_b) assert (houghpeaks (im2, 4, "threshold", 24), expected_a) assert (houghpeaks (im2, 4, "threshold", 47), expected_a(1:2,:)) ***** test im3 = magic (99); expected_a = [99 50; 1 49; 3 47; 5 45; 7 43; 9 41; 11 39]; expected_b = [99 50; 1 49; 7 43; 13 37; 19 31; 25 25; 31 19]; expected_c = [99 50; 1 49; 2 48; 3 47; 4 46; 5 45; 6 44]; assert (houghpeaks (im3, 7), expected_a) assert (houghpeaks (im3, 7, "nhoodsize", [11 11]), expected_b) assert (houghpeaks (im3, 7, "nhoodsize", [11 1]), expected_c) assert (houghpeaks (im3, 7, "nhoodsize", [11 1]), expected_c) ***** test im4 = double (im2uint16 (peaks ())); expected_a = [37 15; 39 15; 41 15; 15 16; 17 16]; expected_b = [37 15; 15 16; 26 21; 37 26; 20 32]; expected_c = [37 15; 15 16; 35 16; 15 17; 35 17]; expected_d = [37 15; 38 15; 39 15; 40 15; 41 15]; assert (houghpeaks (im4, 5), expected_a) assert (houghpeaks (im4, 5, "nhoodsize", [21 21]), expected_b) assert (houghpeaks (im4, 5, "nhoodsize", [21 1]), expected_c) assert (houghpeaks (im4, 5, "nhoodsize", [1 21]), expected_d) ***** test # tests use of anti-symmetry in H im5 = zeros (6,4); im5(2,1) = 1; im5(5,4) = 2; expected = [5 4; 2 1]; assert (houghpeaks (im5, 2, "nhoodsize", [1 1]), expected); assert (houghpeaks (im5, 2, "nhoodsize", [3 3]), expected(1,:)); ***** test #test use of anti-symmetry in the other direction im6 = magic (100); expected_a = [1 1; 100 99; 1 4; 100 95; 1 8; 100 91; 1 12]; expected_b = [1 1; 100 95; 1 8; 100 87; 1 16; 100 79; 1 24]; expected_c = [1 1; 100 99; 100 98; 1 4; 1 5; 100 95; 100 94]; expected_d = expected_b; assert (houghpeaks (im6, 7), expected_a) assert (houghpeaks (im6, 7, "nhoodsize", [11 11]), expected_b) assert (houghpeaks (im6, 7, "nhoodsize", [11 1]), expected_c) assert (houghpeaks (im6, 7, "nhoodsize", [1 11]), expected_d) ***** test # test undocumented Matlab default value for nhoodsize im = zeros (723, 180); im(585,136) = 8; im(593,135) = 7; im(310,46) = 6; expected = [585, 136; 310, 46]; assert (houghpeaks (im, 2), expected) ***** test I = max (0, phantom ()); H = hough (I); P0 = [585, 136; 310, 46; 595, 136; 522, 104; 373, 46]; assert (houghpeaks (H, 5), P0) ***** demo I = checkerboard (30, 1, 1); I = imnoise(I, "salt & pepper", 0.2); figure, imshow (I); title ("noisy image with some lines"); BW = edge (I, "canny"); figure, imshow(BW); title ("edge image"); [H, theta, rho] = hough (BW); figure, imshow (mat2gray (H), [],"XData",theta,"YData",rho); title ("Hough transform of edge image \n 2 peaks marked"); axis on; xlabel("theta [degrees]"); ylabel("rho [pixels]"); peaks = houghpeaks (H, 2); peaks_rho = rho(peaks(:,1)) peaks_theta = theta(peaks(:,2)) hold on; plot(peaks_theta,peaks_rho,"sr"); hold off; 34 tests, 34 passed, 0 known failure, 0 skipped [inst/imtophat.m] >>>>> /<>/inst/imtophat.m ***** assert (imtophat (ones (3), [1 1; 0 1]), zeros (3)); ***** assert (imtophat (true (3), [1 1; 0 1]), false (3)); ***** shared in, out, se in = [ 0 0 0 1 1 1 0 0 1 1 0 1 0 1 1 1 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0 1 0 1 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0]; out = [ 0 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0 1 0 1 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0]; ***** assert (imtophat (logical (in), ones (3)), logical (out)); out = [12 19 0 0 0 16 23 0 7 0 18 0 0 6 1 19 0 2 9 1 0 74 81 12 7 0 1 8 15 7 68 70 2 14 0 6 7 14 16 0 69 76 8 0 0 7 14 21 0 1 0 7 59 54 61 13 20 0 0 32 18 0 69 60 62 19 0 0 0 27 73 0 0 66 68 0 1 6 6 33 0 0 17 19 1 0 2 9 7 14 1 6 23 0 7 1 8 15 0 32]; ***** assert (imtophat (magic (10), ones (3)), out); ***** assert (imtophat (uint8 (magic (10)), strel ("square", 3)), uint8 (out)); ## using a se that will be decomposed in 2 pieces out =[91 98 0 0 0 27 34 11 18 0 94 76 3 6 1 33 15 17 24 1 0 77 84 12 7 14 16 23 30 7 80 82 14 18 0 32 34 41 43 0 81 88 20 0 0 33 40 47 24 6 12 19 63 57 64 16 23 0 7 39 18 0 69 60 62 19 1 3 12 39 73 0 0 66 68 0 2 9 18 45 4 6 81 67 49 6 8 15 19 26 5 12 87 48 55 7 14 21 0 32]; ***** assert (imtophat (magic (10), ones(5)), out); ## using a weird non-symmetric and even-size se out =[85 92 0 0 0 12 23 0 17 0 91 73 0 6 0 18 0 2 13 0 0 72 81 13 6 0 1 9 15 0 60 62 10 12 0 8 8 17 17 0 61 69 0 0 0 28 16 41 0 0 0 0 47 52 61 12 16 0 0 31 6 0 53 58 60 17 0 0 0 33 69 0 0 60 62 0 0 6 0 33 0 0 17 60 42 0 2 13 1 8 0 6 23 0 7 0 7 15 0 14]; ***** assert (imtophat (magic (10), [1 0 0 0; 1 1 1 0; 0 1 0 1]), out); ## N dimensional and weird se in = reshape (magic(16), [4 8 4 2]); se = ones (3, 3, 3); se(:,:,1) = [1 0 1; 0 1 1; 0 0 0]; se(:,:,3) = [1 0 1; 0 1 1; 0 0 1]; out = zeros (size (in)); out(:,:,1,1) = [ 239 146 82 18 0 19 83 133 0 35 99 163 219 128 64 0 0 46 128 195 187 123 59 0 157 93 47 0 14 78 142 211]; out(:,:,2,1) = [ 0 21 85 149 233 146 64 0 205 128 64 0 0 41 87 151 171 107 57 0 0 64 121 185 0 64 142 213 169 105 41 0]; out(:,:,3,1) = [ 231 146 78 14 0 27 77 137 0 43 107 167 211 128 64 0 0 46 128 199 179 119 51 0 149 85 39 0 18 78 142 219]; out(:,:,4,1) = [ 0 29 93 157 225 128 64 0 197 128 64 0 0 31 95 159 163 99 53 0 0 61 125 189 0 64 146 221 161 97 33 0]; out(:,:,1,2) = [ 223 146 82 18 0 35 99 149 0 48 115 179 203 128 64 0 0 46 128 211 171 107 43 0 141 77 31 0 14 78 142 227]; out(:,:,2,2) = [ 0 37 101 165 217 146 64 0 189 125 64 0 0 57 103 167 155 91 41 0 0 64 128 201 0 64 142 229 153 89 25 0]; out(:,:,3,2) = [ 215 146 78 14 0 43 93 153 0 48 123 183 195 128 64 0 0 46 128 215 163 103 35 0 133 69 23 0 18 78 142 235]; out(:,:,4,2) = [ 0 45 109 173 209 128 64 0 181 117 64 0 0 47 111 175 147 83 37 0 0 64 128 205 0 64 146 237 145 81 17 0]; ***** assert (imtophat (in, se), out); 8 tests, 8 passed, 0 known failure, 0 skipped [inst/isind.m] >>>>> /<>/inst/isind.m ***** assert (isind ([]), false); ***** assert (isind (1:10), true); ***** assert (isind (0:10), false); ***** assert (isind (1), true); ***** assert (isind (0), false); ***** assert (isind ([1.3 2.4]), false); ***** assert (isind ([1 2; 3 4]), true); ***** assert (isind (randi (100, 10, 10, 1, 4)), true); ***** assert (isind (randi (100, 10, 10, 3, 4)), false); ***** assert (isind (randi (100, 10, 10, 1, 4, 2)), false); 10 tests, 10 passed, 0 known failure, 0 skipped [inst/lab2rgb.m] >>>>> /<>/inst/lab2rgb.m ***** assert (lab2rgb ([0 0 0]), [0, 0, 0], 1e-3) ***** assert (lab2rgb ([53.24, 80.09, 67.20]), [1 0 0], 1e-3) ***** assert (lab2rgb ([97.14, -21.55, 94.48]), [1 1 0], 1e-3) ***** assert (lab2rgb ([87.74, -86.18, 83.18]), [0 1 0], 1e-3) ***** assert (lab2rgb ([91.11, -48.09, -14.13]), [0 1 1], 1e-3) ***** assert (lab2rgb ([32.30, 79.19, -107.86]), [0 0 1], 1e-3) ***** assert (lab2rgb ([60.32, 98.24, -60.83]), [1 0 1], 1e-3) ***** assert (lab2rgb ([100, 0.00, 0.00]), [1 1 1], 1e-3) ***** assert (lab2rgb ([53.39, 0.00, 0.00]), [0.5 0.5 0.5], 1e-3) ***** assert (lab2rgb ([39.77, 64.51, 54.13]), [0.75 0 0], 1e-3) ***** assert (lab2rgb ([25.42, 47.91, 37.91]), [0.5 0 0], 1e-3) ***** assert (lab2rgb ([9.66, 29.68, 15.24]), [0.25 0 0], 1e-3) ***** assert (lab2rgb ([68.11, 48.39, 22.83]), [1 0.5 0.5], 1e-3) ***** assert (lab2rgb ([150 130 130]), [2.714, 1.028, 0.492], 1e-3) ***** test lab_map = rand (64, 3); lab_map(:,1) = lab_map(:,1) .* 100; lab_map(:,2) = lab_map(:,2) .* 254 - 127; lab_map(:,3) = lab_map(:,3) .* 254 - 127; assert (rgb2lab (lab2rgb (lab_map)), lab_map, 5e-3); ***** test lab_img = rand (64, 64, 3); lab_img(:,:,1) = lab_img(:,:,1) .* 100; lab_img(:,:,2) = lab_img(:,:,2) .* 254 - 127; lab_img(:,:,3) = lab_img(:,:,3) .* 254 - 127; assert (rgb2lab (lab2rgb (lab_img)), lab_img, 5e-3); ***** assert (lab2rgb (sparse ([0 0 0])), [0 0 0], 1e-3) ***** assert (lab2rgb (sparse ([100, 0.00, 0.00])), [1 1 1], 1e-3) ***** assert (class (lab2rgb (single([50 50 50]))), 'single') ***** error lab2rgb () ***** error lab2rgb (1,2) ***** error lab2rgb ({1}) ***** error lab2rgb (ones (2,2)) ***** test lab = rand (16, 16, 3, 5); lab(:,:,1,:) = lab(:,:,1,:) .* 100; lab(:,:,2,:) = lab(:,:,2,:) .* 254 - 127; lab(:,:,3,:) = lab(:,:,3,:) .* 254 - 127; rgb = zeros (size (lab)); for i = 1:5 rgb(:,:,:,i) = lab2rgb (lab(:,:,:,i)); endfor assert (lab2rgb (lab), rgb) 24 tests, 24 passed, 0 known failure, 0 skipped [inst/imfuse.m] >>>>> /<>/inst/imfuse.m ***** error id=Octave:invalid-fun-call imfuse () ***** error id=Octave:invalid-input-arg imfuse (1, 1, "xxx") ***** error id=Octave:invalid-input-arg imfuse (1, 1, "interpolation") ***** error id=Octave:invalid-input-arg imfuse (1, 1, "ColorChannels", [0 0 0]) ***** error id=Octave:invalid-input-arg imfuse (1, 1, "ColorChannels", [1 1 1]) ***** error id=Octave:invalid-input-arg imfuse (1, 1, "ColorChannels", [2 2 2]) ***** error id=Octave:expected-less-equal imfuse (1, 1, "ColorChannels", [42 0 0]) ***** error id=Octave:expected-greater-equal imfuse (1, 1, "ColorChannels", [-1 2 0]) ***** error id=Octave:invalid-input-arg imfuse (1, 1, "ColorChannels", "deep-purple") ***** assert (imfuse (1, 2, "blend"), uint8 (0)) ***** assert (imfuse (1, 2, "blend", "Scaling", "independent"), uint8 (0)) ***** assert (imfuse (1, 2, "blend", "Scaling", "joint"), uint8 (128)) ***** assert (imfuse (1, 2, "blend", "Scaling", "none"), uint8 (255)) ***** assert (imfuse (1, 2, "falsecolor"), uint8 (zeros (1, 1, 3))) ***** test a = [0 1 2]; b = [0 10 20]; expected = uint8 (repmat ([0 128 255], [1 1 3])); assert (imfuse (a, b), expected); ***** test a = uint8 ([0 1 2]); b = uint8 ([0 10 20]); expected = uint8 (repmat ([0 128 255], [1 1 3])); assert (imfuse (a, b), expected); ***** test a = uint8 ([0 1 2]); b = uint8 ([0 10 20]); expected = uint8 (repmat ([0 128 255], [1 1 3])); assert (imfuse (a, b, "falsecolor"), expected); ***** test a = logical([0 1 1]); b = logical([0 1 1]); expected = uint8 (repmat ([0 255 255], [1 1 3])); assert (imfuse (a, b), expected); ***** test a = logical([0 1 1]); b = logical([0 1 1]); expected = uint8 (repmat ([0 255 255], [1 1 3])); assert (imfuse (a, b, "falsecolor"), expected); ***** test a = [0 1 2]; b = [0 10 20]; expected = uint8 (repmat ([0 255 255], [1 1 3])); assert (imfuse (a, b, "Scaling", "none"), expected); ***** test a = uint8 ([0 1 2]); b = uint8 ([0 10 20]); expected = uint8 (zeros ([1, 3, 3])); expected(:, :, 1) = [0 10 20]; expected(:, :, 2) = [0 1 2]; expected(:, :, 3) = [0 10 20]; assert (imfuse (a, b, "Scaling", "none"), expected); ***** test a = [0 1 2]; b = uint8 ([0 10 20]); expected = uint8 (zeros ([1, 3, 3])); expected(:, :, 1) = [0 10 20]; expected(:, :, 2) = [0 255 255]; expected(:, :, 3) = [0 10 20]; assert (imfuse (a, b, "Scaling", "none"), expected); ***** test a = uint8 ([0 1 2]); b = [0 10 20]; expected = uint8 (zeros ([1, 3, 3])); expected(:, :, 1) = [0 255 255]; expected(:, :, 2) = [0 1 2]; expected(:, :, 3) = [0 255 255]; assert (imfuse (a, b, "Scaling", "none"), expected); ***** test a = [0 .1 2]; b = [0 .01 .02]; expected = uint8 (zeros ([1, 3, 3])); expected(:, :, 1) = [0 3 5]; expected(:, :, 2) = [0 26 255]; expected(:, :, 3) = [0 3 5]; assert (imfuse (a, b, "Scaling", "none"), expected); ***** test a = [0 1 2]; b = [0 10 20]; expected = uint8 (zeros ([1, 3, 3])); expected(:, :, 1) = [0 128 255]; expected(:, :, 2) = [0 13 26]; expected(:, :, 3) = [0 128 255]; assert (imfuse (a, b, "Scaling", "joint"), expected); ***** test a = uint8 ([0 1 2]); b = [0 10 20]; expected = uint8 (zeros ([1, 3, 3])); expected(:, :, 1) = [0 128 255]; expected(:, :, 2) = [0 13 26]; expected(:, :, 3) = [0 128 255]; assert (imfuse (a, b, "Scaling", "joint"), expected); ***** test a = [0 150 300]; b = uint8 ([0 10 20]); expected = uint8 (zeros ([1, 3, 3])); expected(:, :, 1) = [0 9 17]; expected(:, :, 2) = [0 128 255]; expected(:, :, 3) = [0 9 17]; assert (imfuse (a, b, "Scaling", "joint"), expected); ***** test a = uint8 ([0 1 2]); b = uint8 ([0 10 20]); expected = uint8 (zeros ([1, 3, 3])); expected(:, :, 1) = [0 128 255]; expected(:, :, 2) = [0 13 26]; expected(:, :, 3) = [0 128 255]; assert (imfuse (a, b, "Scaling", "joint"), expected); ***** test a = [0 1 2]; b = [0 10 20]; expected = uint8 (zeros ([1, 3, 3])); expected(:, :, 1) = [0 0 0]; expected(:, :, 2) = [0 128 255]; expected(:, :, 3) = [0 13 26]; assert (imfuse (a, b, "Scaling", "joint", "ColorChannels", [0 2 1]), expected); ***** test a = [0 1 2]; b = [0 10 15]; c = imfuse (a, b, "ColorChannels", "red-cyan"); expected = uint8 (zeros (1, 3, 3)); expected(:, :, 1) = [0 128 255]; expected(:, :, 2) = [0 170 255]; expected(:, :, 3) = [0 170 255]; assert (c, expected); ***** test a = [0 1 2]; b = [0 10 15]; c = imfuse (a, b, "ColorChannels", "green-magenta"); expected = uint8 (zeros (1, 3, 3)); expected(:, :, 1) = [0 170 255]; expected(:, :, 2) = [0 128 255]; expected(:, :, 3) = [0 170 255]; assert (c, expected); ***** test a = [0 5 2]; b = [0 10 20]; assert (imfuse (a, b, "diff"), uint8 ([0 213 255])); ***** test a = [0 5 2]; b = [0 10 20]; assert (imfuse (a, b, "diff", "Scaling", "joint"), uint8 ([0 71 255])); ***** test a = [0 5 2]; b = [0 10 20]; assert (imfuse (a, b, "blend"), uint8 ([0 192 179])); ***** test a = magic (5); b = a'; c = imfuse (a, b, "falsecolor"); expected = zeros (5, 5, 3); expected(:, :, 1) = [ 170 234 32 96 106 244 43 53 117 181 0 64 128 191 255 74 138 202 213 11 149 159 223 21 85]; expected(:, :, 2) = [ 170 244 0 74 149 234 43 64 138 159 32 53 128 202 223 96 117 191 213 21 106 181 255 11 85]; expected(:, :, 3) = [ 170 234 32 96 106 244 43 53 117 181 0 64 128 191 255 74 138 202 213 11 149 159 223 21 85]; assert (c, uint8 (expected)); ***** test a = magic (5); b = a'; assert (imfuse (uint8 (a), uint8 (b), "blend", "Scaling", "none"), uint8 ([17 24 3 9 13 24 5 7 13 17 3 7 13 20 24 9 13 20 21 3 13 17 24 3 9])); ***** test a = magic (5); b = 2 * a'; assert (imfuse (a, b, "blend", "Scaling", "independent"), uint8 ([170 239 16 85 128 239 43 59 128 170 16 59 128 197 239 85 128 197 213 16 128 170 239 16 85])); ***** test a = magic (5); b = 2 * a'; assert (imfuse (a, b, "blend", "Scaling", "joint"), uint8 ([128 177 18 68 91 180 34 44 94 130 11 47 96 146 182 63 99 149 159 13 102 125 175 16 65])); ***** test a = [0 1.2 5]; b = [5 6.13 12]; assert (imfuse (a, b, "blend"), uint8 ([0 51 255])); ***** test a = [0 5 2]; b = [0 10 20]; assert (imfuse (a, b, "blend", "Scaling", "joint"), uint8 ([0 96 141])); ***** test a = [0 5 2]; b = [0 10 20]; assert (imfuse (a, b, "montage"), uint8 ([0 255 102 0 128 255])); ***** test a = zeros (1, 100); b = 2 * ones (1, 100); assert (imfuse (a, b, "montage"), uint8 ([zeros(1, 200)])); assert (imfuse (a, b, "montage", "Scaling", "none"), uint8 ([zeros(1, 100), 255 * ones(1, 100)])); ***** test a = zeros (1, 100, 3); b = 2 * ones (1, 100); assert (imfuse (a, b, "montage"), uint8 ([zeros(1, 200, 3)])); ***** test a = 0.1 * ones (50, 50); b = 0.2 * ones (50, 50); c = imfuse (a, b, "checkerboard", "Scaling", "none"); d = imresize (repmat([26, 51; 51, 26], [8, 8]), [50, 50], "nearest"); assert (all (c(:) == d(:))); ***** test a = zeros (2, 2); b = zeros (2, 2); ra = imref2d (size (a), [0, 2], [0, 2]); rb = imref2d (size (b), [0, 2], [2, 4]); [c, rc] = imfuse (a, ra, b, rb, "falsecolor"); assert (rc.ImageSize, [4, 2]); assert (rc.XWorldLimits, [0, 2]); assert (rc.YWorldLimits, [0, 4]); assert (rc.PixelExtentInWorldX, 1); assert (rc.PixelExtentInWorldY, 1); assert (rc.ImageExtentInWorldX, 2); assert (rc.ImageExtentInWorldY, 4); assert (rc.XIntrinsicLimits, [0.5, 2.5]); assert (rc.YIntrinsicLimits, [0.5, 4.5]); assert (c, uint8 (zeros (4, 2, 3))); ***** xtest a = zeros (5, 3); b = ones (6, 5); ra = imref2d (size (a), [15, 30], [2, 4]); rb = imref2d (size (b), [10, 50], [5.5, 6.7]); [c, rc] = imfuse (a, ra, b, rb, "falsecolor"); assert (rc.ImageSize, [24, 8]); assert (rc.XWorldLimits, [10, 50]); assert (rc.YWorldLimits, [2, 6.7]); assert (rc.PixelExtentInWorldX, 5); assert (rc.PixelExtentInWorldY, 0.19583333, 10e-9); assert (rc.ImageExtentInWorldX, 40); assert (rc.ImageExtentInWorldY, 4.7); assert (rc.XIntrinsicLimits, [0.5, 8.5]); assert (rc.YIntrinsicLimits, [0.5, 24.5]); expected = uint8 (zeros (24, 8, 3)); expected(19:23, 2:7, 1) = 255 * ones (5, 6); expected(19:23, 2:7, 3) = 255 * ones (5, 6); assert (c, expected); !!!!! known failure ASSERT errors for: assert (c,expected) Location | Observed | Expected | Reason (19,2,1) 0 255 Abs err 0 exceeds tol 0 by 0 (20,2,1) 0 255 Abs err 0 exceeds tol 0 by 0 (21,2,1) 0 255 Abs err 0 exceeds tol 0 by 0 (22,2,1) 0 255 Abs err 0 exceeds tol 0 by 0 (23,2,1) 0 255 Abs err 0 exceeds tol 0 by 0 (19,3,1) 0 255 Abs err 0 exceeds tol 0 by 0 (20,3,1) 0 255 Abs err 0 exceeds tol 0 by 0 (21,3,1) 0 255 Abs err 0 exceeds tol 0 by 0 (22,3,1) 0 255 Abs err 0 exceeds tol 0 by 0 (23,3,1) 0 255 Abs err 0 exceeds tol 0 by 0 (19,4,1) 0 255 Abs err 0 exceeds tol 0 by 0 (20,4,1) 0 255 Abs err 0 exceeds tol 0 by 0 (21,4,1) 0 255 Abs err 0 exceeds tol 0 by 0 (22,4,1) 0 255 Abs err 0 exceeds tol 0 by 0 (23,4,1) 0 255 Abs err 0 exceeds tol 0 by 0 (19,5,1) 0 255 Abs err 0 exceeds tol 0 by 0 (20,5,1) 0 255 Abs err 0 exceeds tol 0 by 0 (21,5,1) 0 255 Abs err 0 exceeds tol 0 by 0 (22,5,1) 0 255 Abs err 0 exceeds tol 0 by 0 (23,5,1) 0 255 Abs err 0 exceeds tol 0 by 0 (19,6,1) 0 255 Abs err 0 exceeds tol 0 by 0 (20,6,1) 0 255 Abs err 0 exceeds tol 0 by 0 (21,6,1) 0 255 Abs err 0 exceeds tol 0 by 0 (22,6,1) 0 255 Abs err 0 exceeds tol 0 by 0 (23,6,1) 0 255 Abs err 0 exceeds tol 0 by 0 (19,7,1) 0 255 Abs err 0 exceeds tol 0 by 0 (20,7,1) 0 255 Abs err 0 exceeds tol 0 by 0 (21,7,1) 0 255 Abs err 0 exceeds tol 0 by 0 (22,7,1) 0 255 Abs err 0 exceeds tol 0 by 0 (23,7,1) 0 255 Abs err 0 exceeds tol 0 by 0 (19,2,3) 0 255 Abs err 0 exceeds tol 0 by 0 (20,2,3) 0 255 Abs err 0 exceeds tol 0 by 0 (21,2,3) 0 255 Abs err 0 exceeds tol 0 by 0 (22,2,3) 0 255 Abs err 0 exceeds tol 0 by 0 (23,2,3) 0 255 Abs err 0 exceeds tol 0 by 0 (19,3,3) 0 255 Abs err 0 exceeds tol 0 by 0 (20,3,3) 0 255 Abs err 0 exceeds tol 0 by 0 (21,3,3) 0 255 Abs err 0 exceeds tol 0 by 0 (22,3,3) 0 255 Abs err 0 exceeds tol 0 by 0 (23,3,3) 0 255 Abs err 0 exceeds tol 0 by 0 (19,4,3) 0 255 Abs err 0 exceeds tol 0 by 0 (20,4,3) 0 255 Abs err 0 exceeds tol 0 by 0 (21,4,3) 0 255 Abs err 0 exceeds tol 0 by 0 (22,4,3) 0 255 Abs err 0 exceeds tol 0 by 0 (23,4,3) 0 255 Abs err 0 exceeds tol 0 by 0 (19,5,3) 0 255 Abs err 0 exceeds tol 0 by 0 (20,5,3) 0 255 Abs err 0 exceeds tol 0 by 0 (21,5,3) 0 255 Abs err 0 exceeds tol 0 by 0 (22,5,3) 0 255 Abs err 0 exceeds tol 0 by 0 (23,5,3) 0 255 Abs err 0 exceeds tol 0 by 0 (19,6,3) 0 255 Abs err 0 exceeds tol 0 by 0 (20,6,3) 0 255 Abs err 0 exceeds tol 0 by 0 (21,6,3) 0 255 Abs err 0 exceeds tol 0 by 0 (22,6,3) 0 255 Abs err 0 exceeds tol 0 by 0 (23,6,3) 0 255 Abs err 0 exceeds tol 0 by 0 (19,7,3) 0 255 Abs err 0 exceeds tol 0 by 0 (20,7,3) 0 255 Abs err 0 exceeds tol 0 by 0 (21,7,3) 0 255 Abs err 0 exceeds tol 0 by 0 (22,7,3) 0 255 Abs err 0 exceeds tol 0 by 0 (23,7,3) 0 255 Abs err 0 exceeds tol 0 by 0 ***** test a = uint8 (reshape (1:1:9, [1 3 3])); b = uint8 (reshape (10:2:26, [1 3 3])); c = imfuse (a, b); expected = uint8 (zeros (1, 3, 3)); expected(:, :, 1) = [0 128 255]; expected(:, :, 2) = [0 128 255]; expected(:, :, 3) = [0 128 255]; assert (c, expected); ***** test a = uint8 (reshape (1:1:9, [1 3 3])); b = uint8 (reshape (10:2:26, [1 3 3])); c = imfuse (a, b, "Scaling", "independent"); expected = uint8 (zeros (1, 3, 3)); expected(:, :, 1) = [0 128 255]; expected(:, :, 2) = [0 128 255]; expected(:, :, 3) = [0 128 255]; assert (c, expected); ***** test a = uint8 (reshape (1:1:9, [1 3 3])); b = uint8 (reshape (10:2:26, [1 3 3])); c = imfuse (a, b, "Scaling", "joint"); expected = uint8 (zeros (1, 3, 3)); expected(:, :, 1) = [191 223 255]; expected(:, :, 2) = [0 16 32]; expected(:, :, 3) = [191 223 255]; assert (c, expected); ***** test a = uint8 (reshape (1:1:9, [1 3 3])); b = uint8 (reshape (10:2:26, [1 3 3])); c = imfuse (a, b, "Scaling", "none"); expected = uint8 (zeros (1, 3, 3)); expected(:, :, 1) = [15 17 19]; expected(:, :, 2) = [3 4 5]; expected(:, :, 3) = [15 17 19]; assert (c, expected); ***** xtest a = zeros (5, 3); b = ones (5, 3); ra = imref2d (size (a), [10, 20], [30, 40]); rb = imref2d (size (b), [10, 20], [30, 40]); [c, rc] = imfuse (a, ra, b, rb, "falsecolor"); expected = uint8 (zeros (5, 3, 3)); expected(:, 1:2, 1) = 255 * ones (5, 2); expected(:, 1:2, 3) = 255 * ones (5, 2); assert (rc.ImageSize, [5, 3]); assert (rc.XWorldLimits, [10, 20]); assert (rc.YWorldLimits, [30, 40]); assert (rc.PixelExtentInWorldX, 3.33333333, 10e-9); assert (rc.PixelExtentInWorldY, 2); assert (rc.ImageExtentInWorldX, 10); assert (rc.ImageExtentInWorldY, 10); assert (rc.XIntrinsicLimits, [0.5, 3.5]); assert (rc.YIntrinsicLimits, [0.5, 5.5]); assert (c, expected); !!!!! known failure ASSERT errors for: assert (c,expected) Location | Observed | Expected | Reason (1,1,1) 0 255 Abs err 0 exceeds tol 0 by 0 (2,1,1) 0 255 Abs err 0 exceeds tol 0 by 0 (3,1,1) 0 255 Abs err 0 exceeds tol 0 by 0 (4,1,1) 0 255 Abs err 0 exceeds tol 0 by 0 (5,1,1) 0 255 Abs err 0 exceeds tol 0 by 0 (1,2,1) 0 255 Abs err 0 exceeds tol 0 by 0 (2,2,1) 0 255 Abs err 0 exceeds tol 0 by 0 (3,2,1) 0 255 Abs err 0 exceeds tol 0 by 0 (4,2,1) 0 255 Abs err 0 exceeds tol 0 by 0 (5,2,1) 0 255 Abs err 0 exceeds tol 0 by 0 (1,1,3) 0 255 Abs err 0 exceeds tol 0 by 0 (2,1,3) 0 255 Abs err 0 exceeds tol 0 by 0 (3,1,3) 0 255 Abs err 0 exceeds tol 0 by 0 (4,1,3) 0 255 Abs err 0 exceeds tol 0 by 0 (5,1,3) 0 255 Abs err 0 exceeds tol 0 by 0 (1,2,3) 0 255 Abs err 0 exceeds tol 0 by 0 (2,2,3) 0 255 Abs err 0 exceeds tol 0 by 0 (3,2,3) 0 255 Abs err 0 exceeds tol 0 by 0 (4,2,3) 0 255 Abs err 0 exceeds tol 0 by 0 (5,2,3) 0 255 Abs err 0 exceeds tol 0 by 0 ***** test a = zeros (5, 5); b = ones (5, 5); ra = imref2d (size (a), [10, 20], [30, 40]); rb = imref2d (size (b), [10, 20], [30, 40]); [c, rc] = imfuse (a, ra, b, rb, "falsecolor"); expected = uint8 (zeros (5, 5, 3)); assert (rc.ImageSize, [5, 5]); assert (rc.XWorldLimits, [10, 20]); assert (rc.YWorldLimits, [30, 40]); assert (rc.PixelExtentInWorldX, 2); assert (rc.PixelExtentInWorldY, 2); assert (rc.ImageExtentInWorldX, 10); assert (rc.ImageExtentInWorldY, 10); assert (rc.XIntrinsicLimits, [0.5, 5.5]); assert (rc.YIntrinsicLimits, [0.5, 5.5]); assert (c, expected); ***** test a = magic (5); b = ones (5, 5); ra = imref2d (size (a), [10, 20], [30, 40]); rb = imref2d (size (b), [10, 20], [30, 40]); [c, rc] = imfuse (a, ra, b, rb, "falsecolor", "Scaling", "independent"); expected = uint8 (zeros (5, 5, 3)); expected(:, :, 2) = [ 170 244 0 74 149 234 43 64 138 159 32 53 128 202 223 96 117 191 213 21 106 181 255 11 85]; assert (rc.ImageSize, [5, 5]); assert (rc.XWorldLimits, [10, 20]); assert (rc.YWorldLimits, [30, 40]); assert (rc.PixelExtentInWorldX, 2); assert (rc.PixelExtentInWorldY, 2); assert (rc.ImageExtentInWorldX, 10); assert (rc.ImageExtentInWorldY, 10); assert (rc.XIntrinsicLimits, [0.5, 5.5]); assert (rc.YIntrinsicLimits, [0.5, 5.5]); assert (c, expected); 53 tests, 51 passed, 2 known failures, 0 skipped [inst/qtsetblk.m] >>>>> /<>/inst/qtsetblk.m ***** demo J=qtsetblk(eye(4),qtdecomp(eye(4)),2,ones(2,2,2)) % Sets upper-right and lower-left blocks of 2*2 zeros to ones ***** shared A, S A=[ 1, 4, 2, 5,54,55,61,62; 3, 6, 3, 1,58,53,67,65; 3, 6, 3, 1,58,53,67,65; 3, 6, 3, 1,58,53,67,65; 23,42,42,42,99,99,99,99; 27,42,42,42,99,99,99,99; 23,22,26,25,99,99,99,99; 22,22,24,22,99,99,99,99]; S = qtdecomp (A, 10); ***** test R=A; vals=zeros(4,4,2); vals(:,:,1)=reshape([1:16],4,4); vals(:,:,2)=reshape([21:36],4,4); R(1:4,1:4)=reshape([1:16],4,4); R(5:8,5:8)=reshape([21:36],4,4); assert(qtsetblk(A,S,4,vals),R); ***** test R=A; R(1:4,5:8)=1; R(7:8,1:4)=1; R(5:6,3:4)=1; assert(qtsetblk(A,S,2,ones(2,2,7)),R); ***** test R=A; R(5:6,1:2)=10; assert(qtsetblk(A,S,1,ones(1,1,4)*10),R); 3 tests, 3 passed, 0 known failure, 0 skipped [inst/lab2uint16.m] >>>>> /<>/inst/lab2uint16.m ***** test cm_uint16 = uint16 ([0 127 128 383 384 65151 65152 65279 65280 65281 65534 65535]); cm_uint16 = repmat (cm_uint16(:), [1 3]); im2d_uint16 = reshape (cm_uint16, [4 3 3]); imnd_uint16 = permute (im2d_uint16, [1 4 3 2]); cm_uint8 = uint8 ([0 0 1 1 2 254 255 255 255 255 255 255]); cm_uint8 = repmat (cm_uint8(:), [1 3]); assert (lab2uint8 (cm_uint16), cm_uint8) im2d_uint8 = reshape (cm_uint8, [4 3 3]); assert (lab2uint8 (im2d_uint16), im2d_uint8) assert (lab2uint8 (imnd_uint16), permute (im2d_uint8, [1 4 3 2])) l1 = 100/65280; ab1 = 255/65280; cm = [ 0 -128 127*l1 -128+(ab1*127) 128*l1 -128+(ab1*128) 383*l1 -128+(ab1*383) 384*l1 -128+(ab1*384) 65151*l1 -128+(ab1*65151) 65152*l1 -128+(ab1*65152) 65279*l1 -128+(ab1*65279) 100 127 65281*l1 -128+(ab1*65281) 65534*l1 -128+(ab1*65534) 65535*l1 -128+(ab1*65535)]; cm(:,3) = cm(:,2); im2d = reshape (cm, [4 3 3]); imnd = permute (im2d, [1 4 3 2]); assert (lab2double (cm_uint16), cm) assert (lab2double (im2d_uint16), im2d) assert (lab2double (imnd_uint16), imnd) assert (lab2single (cm_uint16), single (cm)) assert (lab2single (im2d_uint16), single (im2d)) assert (lab2single (imnd_uint16), single (imnd)) 1 test, 1 passed, 0 known failure, 0 skipped [inst/imattributes.m] >>>>> /<>/inst/imattributes.m ***** shared x, map, img, rgb, bw [x, map] = imread ("default.img"); rgb = ind2rgb (x, map); img = ind2gray (x, map); bw = im2bw (img); ***** test h = imshow (img); a = imattributes (h); assert ([a.("Height (rows)") a.("Width (columns)")], [53 40]); assert (a.Class, "uint8"); assert (a.("Image type"), "intensity"); assert (a.("Minimum intensity"), uint8 (28)); assert (a.("Maximum intensity"), uint8 (250)); ***** xtest h = imshow (rgb); a = imattributes (h); assert ([a.("Height (rows)") a.("Width (columns)")], [53 40]); assert (a.Class, "uint8"); assert (a.("Image type"), "truecolor"); assert (isfield (a, "Minimum intensity"), false); assert (isfield (a, "Maximum intensity"), false); !!!!! known failure ASSERT errors for: assert (a.Class,"uint8") Location | Observed | Expected | Reason [] double uint8 Strings don't match ***** test h = imshow (bw); a = imattributes (h); assert ([a.("Height (rows)") a.("Width (columns)")], [53 40]); assert (a.Class, "logical"); assert (a.("Image type"), "binary"); assert (isfield (a, "Minimum intensity"), false); assert (isfield (a, "Maximum intensity"), false); ***** test h = imshow (x, map); a = imattributes (h); assert ([a.("Height (rows)") a.("Width (columns)")], [53 40]); assert (a.Class, "uint8"); assert (a.("Image type"), "indexed"); assert (a.("Minimum intensity"), uint8 (0)); assert (a.("Maximum intensity"), uint8 (55)); ***** test h = imshow (img); a1 = imattributes (); a2 = imattributes (h); assert (a1, a2); 5 tests, 4 passed, 1 known failure, 0 skipped [inst/imsubtract.m] >>>>> /<>/inst/imsubtract.m ***** assert (imsubtract (uint8 ([23 250]), uint8 ([24 50])), uint8 ([ 0 200])); # default to first class and truncate ***** assert (imsubtract (uint8 ([23 250]), 10), uint8 ([13 240])); # works subtracting a scalar ***** assert (imsubtract (uint8 ([23 250]), uint8 ([24 50]), "uint16"), uint16 ([ 0 200])); # defining output class works (not in matlab) ***** assert (imsubtract (logical ([ 1 0]), logical ([ 1 1])), double ([ 0 -1])); # return double for two logical images ***** assert (imsubtract (logical ([ 1 0]), logical ([ 1 1]), "logical"), logical ([ 0 0])); # this is matlab incompatible on purpose ***** error imsubtract (uint8 ([23 250]), uint16 ([23 250])); ***** warning imsubtract (uint8 ([23 250]), uint8 ([24 255]), "int8"); ***** test warning ("off", "all"); assert (imsubtract (uint8 ([23 250]), uint8 ([24 255]), "int8"), int8 ([-1 0])) 8 tests, 8 passed, 0 known failure, 0 skipped [inst/houghlines.m] >>>>> /<>/inst/houghlines.m ***** shared BW0, theta0, rho0, peaks0_1, peaks0_2, lines0_1, lines0_2, BW1, theta1, rho1, peaks1, lines1 BW0 = logical([0 0 0 0 1; 0 0 0 1 0; 1 0 1 0 0; 0 1 0 0 0; 1 1 1 1 1]); theta0 = [-90:89]; rho0 = [-7:7]; peaks0_1 = [11 130]; peaks0_2 = [11 130; 4 1]; lines0_1 = struct ("point1", {[1,5]}, "point2", {[5,1]}, "theta", {39}, "rho", {3}); lines0_2 = struct ("point1", {[1,5], [1,5]}, "point2", {[5,1],[5,5]}, "theta", {39,-90}, "rho", {3, -4}); BW1 = diag(ones(50,1)); theta1 = [-90:89]; rho1 = -70:70; peaks1 = [71 46]; lines1 = struct ("point1", {[1 1]}, "point2", {[50 50]}, "theta", {-45}, "rho", {0}); ***** error houghlines () ***** error houghlines (BW1) ***** error houghlines (BW1, theta1) ***** error houghlines (BW1, theta1, rho1) ***** assert (houghlines (BW1, theta1, rho1, peaks1), lines1) ***** error (houghlines (BW1, theta1, rho1, peaks1, [1 2 3])) ***** assert (houghlines (BW1, theta1, rho1, peaks1, "FillGap", 5), lines1) ***** assert (houghlines (BW1, theta1, rho1, peaks1, "MinLength", 2), lines1) ***** assert (houghlines (BW1, theta1, rho1, peaks1, "FillGap", 5, "MinLength", 2), lines1) ***** assert (houghlines (BW1, theta1, rho1, peaks1, "MinLength", 2, "FillGap", 5), lines1) ***** error houghlines (BW1, theta1, rho1, peaks1, "MinLength", 2, [1 2 3]) ***** error houghlines (BW1, theta1, rho1, peaks1, "MinLength", 2, "FillGap", 5, [1 2 3]) ***** assert (houghlines (double (BW1), theta1, rho1, peaks1), lines1) ***** error houghlines (ones(5, 5, 5), theta1, rho1, peaks1) ***** error houghlines ("nonsense", theta1, rho1, peaks1) ***** error houghlines (BW1, ones(5), rho1, peaks1) ***** error houghlines (BW1, "nonsense", rho1, peaks1) ***** error houghlines (BW1, theta1, ones(5), peaks1) ***** error houghlines (BW1, theta1, "nonsense", peaks1) ***** error houghlines (BW1, theta1, rho1, ones(5)) ***** error houghlines (BW1, theta1, rho1, ones(2,2,2)) ***** error houghlines (BW1, theta1, rho1, "nonsense") ***** error houghlines (BW1, theta1, rho1, peaks1, "nonsense", 5) ***** error houghlines (BW1, theta1, rho1, peaks1, "MinLength", -5) ***** error houghlines (BW1, theta1, rho1, peaks1, "MinLength", [3 4]) ***** error houghlines (BW1, theta1, rho1, peaks1, "MinLength", "nonsense") ***** error houghlines (BW1, theta1, rho1, peaks1, "FillGap", -5) ***** error houghlines (BW1, theta1, rho1, peaks1, "FillGap", [3 4]) ***** error houghlines (BW1, theta1, rho1, peaks1, "FillGap", "nonsense") ***** test out = houghlines(BW0, theta0, rho0, peaks0_2, "MinLength", 1); assert (out, lines0_2) # includes class = struct, size = [1,2] ***** test # for empty output n = 100; BW = false (n); a = 50; % line starts at left side at row a b = 3; % slope of line is 1:b for column = 1:n if (rem (column, b) == 0) row = a - column/b; BW(row, column) = true; BW(row, column+1) = true; end end theta = [-90: 89]; rho = [-141:141]; peaks = [188, 163]; out = houghlines(BW, theta, rho, peaks, 'FillGap', 1, 'MinLength', 5); assert (out, struct([])) ***** test out0_1 = houghlines(BW0, theta0, rho0, peaks0_1, 'MinLength', 1); out0_2 = houghlines(BW0, theta0, rho0, peaks0_2, 'MinLength', 1); assert (out0_1, lines0_1); assert (out0_2, lines0_2); ***** test out = houghlines(BW1, theta1, rho1, peaks1); assert (out, lines1); ***** test n = 100; BW = false (n); a = 50; % line starts at left side at row a b = 3; % slope of line is 1:b for column = 1:n if (rem (column, b) == 0) row = a - column/b; BW(row, column) = true; BW(row, column+1) = true; end end theta = [-90:89]; rho = [-141:141]; peaks = [188, 163]; lines_1 = struct ("point1", {[99 17]}, "point2", {[3 49]}, "theta", {72}, "rho", {46}); out_1 = houghlines(BW, theta, rho, peaks); out_n = houghlines(BW, theta, rho, peaks, 'FillGap', 1, 'MinLength', 1); assert (out_1, lines_1) assert (size (out_n), [1, 29]) ***** demo I = checkerboard (30, 1, 1); I = imnoise(I, "salt & pepper", 0.2); figure, imshow (I); title ("noisy image with some lines"); BW = edge (I, "canny"); figure, imshow(BW); title ("edge image"); [H, theta, rho] = hough (BW); figure, imshow (mat2gray (H), [], "XData", theta, "YData", rho); title ("Hough transform of edge image \n 2 peaks marked"); axis on; xlabel("theta [degrees]"); ylabel("rho [pixels]"); peaks = houghpeaks (H, 2); peaks_rho = rho(peaks(:,1)); peaks_theta = theta(peaks(:,2)); hold on; plot (peaks_theta, peaks_rho, "sr"); hold off; lines = houghlines (BW, theta, rho, peaks); figure, imshow (I), hold on; for n = 1:length (lines) points = [lines(n).point1; lines(n).point2]; plot (points(:,1), points(:,2), "r"); endfor title ("the two strongest lines (edges) in the image"), hold off; 34 tests, 34 passed, 0 known failure, 0 skipped [inst/bwareafilt.m] >>>>> /<>/inst/bwareafilt.m ***** shared a2d, a3d a2d = [1 0 0 0 0 0 1 0 0 1 1 0 0 1 0 1 0 1 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 1 1 1 0 0 0 0 1 1 0 1 0 0 0 1 0 0 1 1 0 0 0 0 1 0 1 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 1 1 0 0 1]; a3d = a2d; a3d(:,:,2) = [ 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 0 0 1 1 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0 0 0]; a3d(:,:,3) = [ 1 0 0 0 0 0 0 0 0 0 0 1 0 1 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0]; ***** test f2d = [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 1 1 1 0 0 0 0 1 1 0 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0]; assert (bwareafilt (a2d, 2), logical (f2d)); assert (bwareafilt (a2d, 2, 8), logical (f2d)); assert (bwareafilt (a2d, 2, 4), logical (f2d)); ***** test f2d = [1 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 1 1 1 0 0 0 0 1 1 0 1 0 0 0 1 0 0 1 1 0 0 0 0 1 0 1 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0]; assert (bwareafilt (a2d, 5), logical (f2d)); assert (bwareafilt (a2d, 5, 8), logical (f2d)); ***** test f2d = [0 0 0 0 0 0 1 0 0 1 0 0 0 1 0 1 0 1 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1]; assert (bwareafilt (a2d, 11, "smallest", 4), logical (f2d)); ***** test f2d = [1 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]; assert (bwareafilt (a2d, [3 5]), logical (f2d)); assert (bwareafilt (a2d, [3 5], 8), logical (f2d)); ***** test f2d = [1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]; assert (bwareafilt (a2d, [3 4], 4), logical (f2d)); assert (bwareafilt (a2d, [3 4], [0 1 0; 1 1 1; 0 1 0]), logical (f2d)); ***** test f2d = [1 0 0 0 0 0 1 0 0 1 1 0 0 1 0 1 0 1 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0]; assert (bwareafilt (a2d, [2 4]), logical (f2d)); assert (bwareafilt (a2d, [2 4], 8), logical (f2d)); assert (bwareafilt (a2d, [2 4], ones (3)), logical (f2d)); ***** test f3d = [0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0]; f3d(:,:,2) = [ 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0]; f3d(:,:,3) = [ 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0]; assert (bwareafilt (a3d, 2), logical (f3d)); assert (bwareafilt (a3d, 2, 26), logical (f3d)); assert (bwareafilt (a3d, 2, ones (3, 3, 3)), logical (f3d)); ***** test f3d = [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 1 1 1 0 0 0 0 1 1 0 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0]; f3d(:,:,2) = [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 0 0 1 1 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0]; f3d(:,:,3) = [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0]; assert (bwareafilt (a3d, 2, 6), logical (f3d)); assert (bwareafilt (a3d, 2, conndef (3, "minimal")), logical (f3d)); 8 tests, 8 passed, 0 known failure, 0 skipped [inst/entropyfilt.m] >>>>> /<>/inst/entropyfilt.m ***** test a = log2 (9) * ones (5, 5); b = -(2*log2 (2/9) + log2 (1/9))/3; a(1,2:4) = b; a(5,2:4) = b; a(2:4,1) = b; a(2:4,5) = b; c = -(4*log2 (4/9) + 4*log2 (2/9) + log2 (1/9))/9; a(1,1) = c; a(5,1) = c; a(1,5) = c; a(5,5) = c; assert (entropyfilt (uint8 (magic (5)), ones (3, 3)), a, 2*eps); ***** test assert (entropyfilt (uint8 (ones (10, 10))), zeros (10, 10)); ***** test A = zeros (3,3); B = ones (3,3); C = [1 1 1; 2 2 2; 3 3 3]; D = C'; E = ones (3,3); E(2,2) = 2; F = 3 .* ones (3,3); F(2,2) = 1; G = [-1 2 7; -5 2 8; -7 pi 9]; H = [5 2 8; 1 -3 1; 5 1 0]; Hf = mat2gray(H); X = uint8(abs(H)); P = [0.2 0.201 0.204; 0.202 0.203 0.205; 0.205 0.206 0.202]; Q = uint16([100 101 103; 100 105 102; 100 102 103]); R = uint8([1 2 3 4 5; 11 12 13 14 15; 21 22 4 5 6; 5 5 3 2 1; 15 14 14 14 14]); Aout = zeros (3); Bout = zeros (3); Cout = zeros (3); Dout = zeros (3); Eout = zeros (3); Fout = zeros (3); Gout_1 = -sum([2 7]./9.*log2([2 7]./9)); Gout_2 = -sum([3 6]./9.*log2([3 6]./9)); Gout_3 = -sum([4 5]./9.*log2([4 5]./9)); Gout = [Gout_1 Gout_2 Gout_3; Gout_1 Gout_2 Gout_3; Gout_1 Gout_2 Gout_3]; Hout_5 = -sum([2 7]./9.*log2([2 7]./9)) ; Hout = [0.8916 0.8256 0.7412; 0.8256 Hout_5 0.6913; 0.7412 0.6913 0.6355]; Hfout_5 = -sum([3 2 1 1 1 1]./9.*log2([3 2 1 1 1 1]./9)); Hfout = [2.3613 2.3296 2.2252; 2.4571 Hfout_5 2.3090; 2.4805 2.4488 2.3445]; Xout_5 = -sum([1 1 1 1 2 3]./9.*log2([1 1 1 1 2 3]./9)); Xout = [2.3613 2.3296 2.2252; 2.4571 Xout_5 2.3090; 2.4805 2.4488 2.3445]; Pout_5 = -sum([1 2 6]./9.*log2([1 2 6]./9)); Pout = [1.1137 1.1730 1.2251; 1.1595 Pout_5 1.2774; 1.1556 1.2183 1.2635]; Qout = zeros(3); Rout = [3.5143 3.5700 3.4871 3.4957 3.4825; 3.4705 3.5330 3.4341 3.4246 3.3890; 3.3694 3.4063 3.3279 3.3386 3.3030; 3.3717 3.4209 3.3396 3.3482 3.3044; 3.4361 3.5047 3.3999 3.4236 3.3879]; assert (entropyfilt (A), Aout); assert (entropyfilt (B), Bout); assert (entropyfilt (C), Cout); assert (entropyfilt (D), Dout); assert (entropyfilt (E), Eout); assert (entropyfilt (F), Fout); assert (entropyfilt (G), Gout, 1e-4); assert (entropyfilt (H), Hout, 1e-4); assert (entropyfilt (Hf), Hfout, 1e-4); assert (entropyfilt (X), Xout, 1e-4); assert (entropyfilt (P), Pout, 1e-4); assert (entropyfilt (Q), Qout); assert (entropyfilt (R), Rout, 1e-4); 3 tests, 3 passed, 0 known failure, 0 skipped [inst/viscircles.m] >>>>> /<>/inst/viscircles.m ***** demo centers = randi ([0 100], 5, 2); radii = randi ([10 100], 5, 1); axis equal viscircles (centers, radii, "Color", "magenta", "LineStyle", ":", "LineWidth", 5); title ("5 random circles"); #---------------------------------------------- # the figure window shows 5 circles with random # radii and positions ***** test # old undocumented property h = viscircles ([0 0], 1, "EdgeColor", "black"); assert (get (get (h, "children")(1), "color"), [0 0 0]) ***** test # old undocumented property h = viscircles ([0 0], 1, "DrawBackgroundCircle", false); assert (numel (get (h, "children")), 1) ***** error ... viscircles ([0 0], 1, "Color", "magenta", "EdgeColor", "black") ***** test centers = randi ([0 100], 5, 2); radii = randi ([0 100], 5, 1); h = viscircles (centers, radii); close; ***** test centers = randi ([0 100], 5, 2); radii = randi ([0 100], 5, 1); figure (); h = viscircles (gca (), centers, radii); close; ***** test centers = randi ([0 100], 5, 2); radii = randi ([0 100], 5, 1); h = viscircles (centers, radii, "Color", "magenta", "LineStyle", ":", "LineWidth", 5); close; ***** test centers = randi ([0 100],5,2); radii = randi ([0 100],5,1); figure (); h = viscircles (centers, radii, "Color", "magenta", "LineStyle", ":", "LineWidth", 5); close; 7 tests, 7 passed, 0 known failure, 0 skipped [inst/@strel/strel.m] >>>>> /<>/inst/@strel/strel.m ***** test shape = logical ([0 0 0 1]); assert (getnhood (strel (shape)), shape); assert (getnhood (strel ("arbitrary", shape)), shape); height = [0 0 0 3]; assert (getnhood (strel ("arbitrary", shape, height)), shape); assert (getheight (strel ("arbitrary", shape, height)), height); ***** test shape = logical ([0 0 1]); height = [-2 1 3]; ## this works for matlab compatibility assert (getnhood (strel ("arbitrary", shape, height)), shape); assert (getheight (strel ("arbitrary", shape, height)), height); ***** test shape = logical ([0 0 0 1 0 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 1 1 1 1 1 0 0 0 0 1 0 0 0]); height = [ 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.33333 0.66667 0.74536 0.66667 0.33333 0.00000 0.00000 0.66667 0.88192 0.94281 0.88192 0.66667 0.00000 0.00000 0.74536 0.94281 1.00000 0.94281 0.74536 0.00000 0.00000 0.66667 0.88192 0.94281 0.88192 0.66667 0.00000 0.00000 0.33333 0.66667 0.74536 0.66667 0.33333 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000]; assert (getnhood (strel ("ball", 3, 1)), shape); assert (getheight (strel ("ball", 3, 1)), height, 0.0001); ***** test shape = logical ([0 0 0 1 0 0 0 0 0 1 1 1 0 0 0 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 1 1 1 0 0 0 0 0 1 0 0 0]); assert (getnhood (strel ("diamond", 3)), shape); ***** test shape = logical ([0 0 0 1 0 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 1 1 1 1 1 0 0 0 0 1 0 0 0]); assert (getnhood (strel ("disk", 3, 0)), shape); ***** test shape = logical ([1 1 1]); assert (getnhood (strel ("line", 3.9, 20.17)), shape); shape = logical ([0 0 1 0 1 0 1 0 0]); assert (getnhood (strel ("line", 3.9, 20.18)), shape); shape = logical ([1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1]); assert (getnhood (strel ("line", 14, 130)), shape); ***** test se = strel ("octagon", 0); seq = getsequence (se); assert (getnhood (se), true (1)); assert (getnhood (seq(1)), true (1)); se = strel ("octagon", 3); seq = getsequence (se); shape = logical ([0 0 1 1 1 0 0 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 1 1 1 0 0]); assert (getnhood (se), shape); assert (size (seq), [4 1]); templ1 = logical ([0 0 0; 1 1 1; 0 0 0]); templ2 = logical ([0 1 0; 0 1 0; 0 1 0]); templ3 = logical ([1 0 0; 0 1 0; 0 0 1]); templ4 = logical ([0 0 1; 0 1 0; 1 0 0]); assert ({getnhood(seq(1)) getnhood(seq(2)) getnhood(seq(3)) getnhood(seq(4))}, {templ1 templ2 templ3 templ4}); seq = getsequence (strel ("octagon", 21)); assert (size (seq), [28 1]); assert (arrayfun (@(x) getnhood (seq(x)), 1:4:25, "UniformOutput", false), repmat ({templ1}, 1, 7)); assert (arrayfun (@(x) getnhood (seq(x)), 2:4:26, "UniformOutput", false), repmat ({templ2}, 1, 7)); assert (arrayfun (@(x) getnhood (seq(x)), 3:4:27, "UniformOutput", false), repmat ({templ3}, 1, 7)); assert (arrayfun (@(x) getnhood (seq(x)), 4:4:28, "UniformOutput", false), repmat ({templ4}, 1, 7)); ***** test shape = logical ([1 1 0]'); assert (getnhood (strel ("pair", [-1 0])), shape); shape = logical ([1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0]); assert (getnhood (strel ("pair", [-1 -3])), shape); shape = logical ([0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1]); assert (getnhood (strel ("pair", [2 3])), shape); ***** test assert (getnhood (strel ("rectangle", [10 5])), true (10, 5)); assert (getnhood (strel ("square", 5)), true (5)); ***** shared se, seq se = strel ("square", 5); seq = getsequence (se); assert (class (se(1)), "strel") assert (class (se(1,1)),"strel") assert (class (seq), "strel") assert (class (seq(1)), "strel") assert (class (seq(2)), "strel") assert (numel (se), 1) assert (numel (seq), 2) assert (getnhood (seq(1)), true (5, 1)) assert (getnhood (seq(2)), true (1, 5)) assert (size (se), [1 1]) assert (size (seq), [2 1]) assert (isscalar (se), true) assert (isscalar (seq), false) ***** error se(2); ***** error seq(3); ***** test se = strel ("arbitrary", [1 0 0; 1 1 0; 0 1 0], [2 0 0; 3 1 0; 0 3 0]); ref = reflect (se); assert (getnhood (ref), logical([0 1 0; 0 1 1; 0 0 1])); assert (getheight (ref), [0 3 0; 0 1 3; 0 0 2]); ***** error strel() ***** error strel("nonmethodthing", 2) ***** error strel("arbitrary", "stuff") ***** error strel("arbitrary", [0 0 1], [2 0 1; 4 5 1]) ***** error strel("arbitrary", [0 0 1], "stuff") ***** error strel("ball", -3, 1) ***** error strel("diamond", -3) ***** error strel("disk", -3) ***** error strel("line", 0, 45) ***** error strel("octagon", 3.5) ***** error strel("octagon", 4) ***** error strel("octagon", -1) ***** error strel("pair", [45 67 90]) ***** error strel("rectangle", 2) ***** error strel("rectangle", [2 -5]) ***** error strel("square", [34 1-2]) 28 tests, 28 passed, 0 known failure, 0 skipped [inst/imshowpair.m] >>>>> /<>/inst/imshowpair.m ***** error id=Octave:invalid-fun-call imshowpair () ***** error id=Octave:invalid-fun-call imshowpair (1) ***** error id=Octave:invalid-input-arg imshowpair (uint8 (200.*rand (100)), ... uint8 (200.*rand (100)), "interpolation") ***** error id=Octave:invalid-input-arg imshowpair (uint8 (200.*rand (100)), ... uint8 (200.*rand (100)), "xxxxx") ***** error id=Octave:invalid-input-arg imshowpair (1, 1, "ColorChannels", [0 0 0]) ***** error id=Octave:invalid-input-arg imshowpair (1, 1, "ColorChannels", [1 1 1]) ***** error id=Octave:invalid-input-arg imshowpair (1, 1, "ColorChannels", [2 2 2]) ***** error id=Octave:expected-less-equal imshowpair (1, 1, "ColorChannels", [42 0 0]) ***** error id=Octave:expected-greater-equal imshowpair (1, 1, "ColorChannels", [-1 2 0]) ***** error id=Octave:invalid-input-arg imshowpair (1, 1, "ColorChannels", "deep-purple") ***** test A = uint8 (200.*rand (100)); B = uint8 (150.*rand (100)); RA = imref2d (size (A), 0.5, 0.5); RB = imref2d (size (B), 0.5, 0.5); figure; Ax=axes; assert (imshowpair (A, B)); assert (imshowpair (A, RA, B, RB)); assert (imshowpair (A, B, "blend")); assert (imshowpair (A, B, "falsecolor", "ColorChannels", "red-cyan")); assert (imshowpair (A, B, "Parent", Ax)); assert (imshowpair (A, B, "montage", "Scaling", "joint")); close; 11 tests, 11 passed, 0 known failure, 0 skipped [inst/ordfilt2.m] >>>>> /<>/inst/ordfilt2.m ***** test order = 3; domain = ones (3); A = zeros (3,3); B = ones (3,3); C = [1 1 1; 2 2 2; 3 3 3]; D = C'; E = ones (3,3); E(2,2) = 2; F = 3 .* ones (3,3); F(2,2) = 1; G = [-1 2 7; -5 2 8; -7 pi 9]; H = [5 2 8; 1 -3 1; 5 1 0]; A_out = [0 0 0; 0 0 0; 0 0 0]; B_out = [0 0 0; 0 1 0; 0 0 0]; C_out = [0 0 0; 0 1 0; 0 0 0]; D_out = [0 0 0; 0 1 0; 0 0 0]; E_out = [0 0 0; 0 1 0; 0 0 0]; F_out = [0 0 0; 0 3 0; 0 0 0]; G_out = [0 0 0; -1 -1 0; 0 0 0]; H_out = [0 0 0; 0 1 0; 0 0 0]; assert (ordfilt2 (A, order, domain), A_out); assert (ordfilt2 (B, order, domain), B_out); assert (ordfilt2 (C, order, domain), C_out); assert (ordfilt2 (D, order, domain), D_out); assert (ordfilt2 (E, order, domain), E_out); assert (ordfilt2 (F, order, domain), F_out); assert (ordfilt2 (G, order, domain), G_out); assert (ordfilt2 (H, order, domain), H_out); 1 test, 1 passed, 0 known failure, 0 skipped [inst/imregionalmin.m] >>>>> /<>/inst/imregionalmin.m ***** test a = [ 7 3 9 3 10 3 4 2 3 10 1 3 1 4 6 9 4 10 8 7 9 3 4 8 5 9 3 3 8 9 3 6 9 4 1 10]; a4 = logical ([ 0 0 0 1 0 0 0 1 0 0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 0 1 0]); assert (imregionalmin (a, 4), a4) assert (imregionalmin (uint8 (a), 4), a4) assert (imregionalmin (int8 (a), 4), a4) a8 = logical ([ 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0]); assert (imregionalmin (a), a8) assert (imregionalmin (a, 8), a8) assert (imregionalmin (uint8 (a), 8), a8) assert (imregionalmin (int8 (a), 8), a8) ***** test a = [ 4 8 5 -1 8 7 -1 4 0 7 1 1 6 1 2 6 7 0 6 1 5 -2 5 9 1 4 -1 0 0 2 4 6 1 0 7 1]; a4 = logical ([ 0 0 0 1 0 0 1 0 1 0 0 0 0 1 0 0 0 1 0 1 0 1 0 0 1 0 1 0 0 0 0 0 0 0 0 1]); assert (imregionalmin (a, 4), a4) assert (imregionalmin (int8 (a), 4), a4) a8 = logical ([ 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0]); assert (imregionalmin (a), a8) assert (imregionalmin (a, 8), a8) assert (imregionalmin (int8 (a), 8), a8) ***** test ## test float input images im0 = peaks (); im1 = im0 ./ 100; max_pos_expected = [1; 49; 664; 1286; 1302; 2401]; max0 = imregionalmin (im0); max0_pos = find (max0); max1 = imregionalmin (im1); assert (max1, max0) assert (max0_pos, max_pos_expected) 3 tests, 3 passed, 0 known failure, 0 skipped [inst/affine2d.m] >>>>> /<>/inst/affine2d.m ***** test theta = 10; A = [cosd(theta) -sind(theta) 0 sind(theta) cosd(theta) 0 0 0 1]; tform = affine2d (A); [X, Y] = transformPointsForward (tform, 5, 10); assert (X, 6.6605, 1.e-4) assert (Y, 8.9798, 1.e-4) [U, V] = transformPointsInverse (tform, X, Y); assert (U, 5, 5*eps) assert (V, 10, 9*eps) assert (isRigid (tform)) assert (! isTranslation (tform)) assert (isSimilarity (tform)) ***** test theta = 30; tform = affine2d([ cosd(theta) sind(theta) 0 -sind(theta) cosd(theta) 0 0 0 1]); assert (tform.T, [ 0.86603 0.5 0 -0.5 0.86603 0 0 0 1], 1.e-5); invtform = invert(tform); assert (invtform.T, [ 0.86603 -0.5 0 0.5 0.86603 0 0 0 1], 1.e-5); assert (isRigid (tform)) assert (! isTranslation (tform)) assert (isSimilarity (tform)) ***** test tform = affine2d ([1 0 0; 0 1 0; 5 10 1]); [X, Y] = transformPointsForward (tform, [1 2; 3 4; 5 6; 7 8]); assert (round (X), [6; 8; 10; 12]) assert (round (Y), [12; 14; 16; 18]) [U, V] = transformPointsInverse (tform, X, Y); assert (round (U), [1; 3; 5; 7]) assert (round (V), [2; 4; 6; 8]) assert (isRigid (tform)) assert (isTranslation (tform)) assert (isSimilarity (tform)) ***** test tform = affine2d ([1 1e-16 0; 1e-16 1 0; 5 10 1]); assert (isRigid (tform)) tform = affine2d ([2 1e-16 0; 1e-16 1 0; 5 10 1]); assert (! isRigid (tform)) ***** test theta = 10; A = [cosd(theta) -sind(theta) 0 sind(theta) cosd(theta) 0 0 0 1]; tform = affine2d (A); [xlim, ylim] = outputLimits (tform, [1 240], [1 291]); assert (xlim, [1.1585 286.8855], 1.e-4) assert (ylim, [-40.6908 286.4054], 1.e-4) ***** test A = [1 0 0 0 1 0 40 40 1]; tform = affine2d (A); assert (isRigid (tform)); assert (isSimilarity (tform)); assert (isTranslation (tform)); ***** test a = invert (affine2d ([1 2 0; 3 4 0; 10 20 1])); b = affine2d(a.T); assert (b.T, [-2, 1, 0; 1.5, -0.5, 0; -10, 0, 1], 5*eps) ***** assert (isTranslation (affine2d ([1, 0, 0; 0, 1, 0; 40, 40, 1]))) ***** assert (! isTranslation (affine2d ([1 0 0; 0 -1 0; 0 0 1]))) ***** assert (! isRigid (affine2d ([1 0 0; 0 -1 0; 0 0 1]))) ***** error affine2d ([0 0 0; 0 0 0]) ***** error affine2d ([0 0 0 0 0 0 0 0 1]) ***** error affine2d ([0 0 0; 0 0 0; 0 0 0]) ***** error affine2d ([1 0 0; 0 1 1; 0 0 1]) ***** error affine2d ([0 0 0; 0 0 0; 0 0 1]) ***** error affine2d (1, 2) ***** error outputLimits (affine2d()) ***** test tform = affine2d; assert (tform.T, eye (3)) assert (tform.Dimensionality, 2) 18 tests, 18 passed, 0 known failure, 0 skipped [inst/fftconvn.m] >>>>> /<>/inst/fftconvn.m ***** function test_shapes (a, b, precision) shapes = {"valid", "same", "full"}; for i = 1:3 shape = shapes{i}; assert (fftconvn (a, b, shape), convn (a, b, shape), precision); endfor assert (fftconvn (a, b), fftconvn (a, b, "full")); ***** endfunction ***** test test_shapes (randi (255, 100), randi (255, 10), 0.1) ***** test test_shapes (randi (255, 100, 100), randi (255, 10, 10), 0.1) ***** test test_shapes (randi (255, 100, 100, 100), randi (255, 10, 10, 10), 0.1) ***** test test_shapes (randi (255, 100, 50, 20), randi (255, 10, 7), 0.1) ***** test test_shapes (randi (255, 100, 50, 20), randi (255, 10), 0.1) ***** test for s = [55 56 57 58] test_shapes (randi (255, 200, 200), randi (255, s, s), 0.1) endfor ***** test for s = [203 204 205 206] test_shapes (randi (255, s, s), randi (255, 52, 52), 0.1) endfor ***** test test_shapes (randi (255, 100, 100, "uint8"), randi (255, 10, 10, "uint8"), 0.1) ***** test test_shapes (randi (255, 100, 100, "uint8"), randi (255, 10, 10), 0.1) ***** test test_shapes (randi (255, 100, 100, "single"), randi (255, 10, 10, "single"), 0.9) ***** test test_shapes (randi (255, 100, 100, "single"), randi (255, 10, 10), 0.9) 11 tests, 11 passed, 0 known failure, 0 skipped [inst/rgb2xyz.m] >>>>> /<>/inst/rgb2xyz.m ***** assert (rgb2xyz ([0 0 0]), [0, 0, 0], 1e-3) ***** assert (rgb2xyz ([1 0 0]), [0.4125, 0.2127, 0.0193], 1e-3) ***** assert (rgb2xyz ([1 1 0]), [0.7700, 0.9278, 0.1385], 1e-3) ***** assert (rgb2xyz ([0 1 0]), [0.3576, 0.7152, 0.1192], 1e-3) ***** assert (rgb2xyz ([0 1 1]), [0.5380, 0.7873, 1.0694], 1e-3) ***** assert (rgb2xyz ([0 0 1]), [0.1804, 0.0722, 0.9502], 1e-3) ***** assert (rgb2xyz ([1 0 1]), [0.5929, 0.2848, 0.9696], 1e-3) ***** assert (rgb2xyz ([1 1 1]), [0.9505, 1.0000, 1.0888], 1e-3) ***** assert (rgb2xyz ([0.5 0.5 0.5]), [0.2034, 0.2140, 0.2330], 1e-3) ***** assert (rgb2xyz ([0.75 0 0]), [0.2155, 0.1111, 0.0101], 1e-3) ***** assert (rgb2xyz ([0.5 0 0]), [0.0883, 0.0455, 0.0041], 1e-3) ***** assert (rgb2xyz ([0.25 0 0]), [0.0210, 0.0108, 0.0010], 1e-3) ***** assert (rgb2xyz ([1 0.5 0.5]), [0.5276, 0.3812, 0.2482], 1e-3) ***** assert (rgb2xyz ([1.5 1 1]), [1.5845, 1.3269, 1.1185], 1e-3) ***** test rgb_map = rand (64, 3); assert (xyz2rgb (rgb2xyz (rgb_map)), rgb_map, 2e-5); ***** test rgb_img = rand (64, 64, 3); assert (xyz2rgb (rgb2xyz (rgb_img)), rgb_img, 2e-5); ***** assert (rgb2xyz (sparse ([0 0 0])), [0 0 0], 1e-3) ***** assert (rgb2xyz (sparse ([0 0 1])), [0.1804, 0.0722, 0.9502], 1e-3) ***** assert (rgb2xyz (uint8([255 255 255])), [0.9505, 1.0000, 1.0888], 1e-3) ***** assert (class (rgb2xyz (single([1 1 1]))), 'single') ***** error rgb2xyz () ***** error rgb2xyz (1,2) ***** error rgb2xyz ({1}) ***** error rgb2xyz (ones (2,2)) ***** test rgb = rand (16, 16, 3, 5); xyz = zeros (size (rgb)); for i = 1:5 xyz(:,:,:,i) = rgb2xyz (rgb(:,:,:,i)); endfor assert (rgb2xyz (rgb), xyz) 25 tests, 25 passed, 0 known failure, 0 skipped [inst/ntsc2rgb.m] >>>>> /<>/inst/ntsc2rgb.m ***** shared trans trans = [ 1.0, 1.0, 1.0; 0.95617, -0.27269, -1.10374; 0.62143, -0.64681, 1.70062 ]; ***** assert (ntsc2rgb ([.299 .596 .211]), [1 0 0], 1e-5) ***** assert (ntsc2rgb ([.587 -.274 -.523]), [0 1 0], 1e-5) ***** assert (ntsc2rgb ([.114 -.322 .312]), [0 0 1], 1e-5) ***** test rgb_map = rand (64, 3); assert (ntsc2rgb (rgb2ntsc (rgb_map)), rgb_map, 1e-3); ***** test rgb_img = rand (64, 64, 3); assert (ntsc2rgb (rgb2ntsc (rgb_img)), rgb_img, 1e-3); ***** assert (ntsc2rgb ([1.5 0 0]), [1 1 1]) ***** test ntsc = [0.4229 0.0336 0.7184]; rgb = ntsc * trans; # [0.9014 -0.0509 1.6075] rgb(1) /= rgb(3); # scaled based on the maximum rgb(2) = 0; # cut to 0 rgb(3) = 1; # cut to 1 assert (ntsc2rgb (ntsc), rgb); ***** test ntsc = [0.8229 0.3336 0.7184]; rgb = ntsc * trans; # [1.58831 0.26726 1.67642] rgb /= rgb(3); assert (ntsc2rgb (ntsc), rgb); ***** test ntsc = [0.4229 0.0336 0.7184 0.8229 0.3336 0.7184]; rgb = ntsc * trans; # [0.9014 -0.0509 1.6075; 1.58831 0.26726 1.67642] rgb(1,1) /= rgb(1,3); rgb(1,2) = 0; rgb(1,3) = 1; rgb(2,:) /= rgb(2,3); assert (ntsc2rgb (ntsc), rgb); ***** error ntsc2rgb () ***** error ntsc2rgb (1,2) ***** error ntsc2rgb (uint8 (1)) ***** error ntsc2rgb (ones (2,2)) ***** error ntsc2rgb (ones ([10 10 3], "uint8")) ***** error ntsc2rgb (ones ([10 10 3], "uint16")) ***** error ntsc2rgb (ones ([10 10 3], "int16")) ***** test yiq = rand (16, 16, 3, 5); rgb = zeros (size (yiq)); for i = 1:5 rgb(:,:,:,i) = ntsc2rgb (yiq(:,:,:,i)); endfor assert (ntsc2rgb (yiq), rgb); ***** test rgb = ntsc2rgb (rand (10, 10, 3)); assert (class (rgb), "double"); assert (size (rgb), [10 10 3]); ***** test rgb = ntsc2rgb (rand (10, 10, 3, "single")); assert (class (rgb), "single"); assert (size (rgb), [10 10 3]); ***** test ntsc = (rand (10, 10, 3) * 3 ) - 0.5; # values outside range [0 1] rgb = ntsc2rgb (ntsc); assert (class (rgb), "double"); assert (size (rgb), [10 10 3]); ***** test ntsc = (rand (10, 10, 3, "single") * 3 ) - 0.5; # values outside range [0 1] rgb = ntsc2rgb (ntsc); assert (class (rgb), "single"); assert (size (rgb), [10 10 3]); ***** test ntsc_double = reshape ([.299 .587 .114 0 .596 -.274 -.322 0 .211 -.523 .312 0], [2 2 3]); expected = reshape ([1 0 0 0 0 1 0 0 0 0 1 0], [2 2 3]); assert (ntsc2rgb (ntsc_double), expected, 1e-5); assert (ntsc2rgb (single (ntsc_double)), single (expected), 1e-5); 22 tests, 22 passed, 0 known failure, 0 skipped [inst/deconvwnr.m] >>>>> /<>/inst/deconvwnr.m ***** shared im0, psf0, im0_out, psf1, im2, out2_0, out2_1, im3 im0 = ones (5, 5); psf0 = ones (3, 3); im0_out = 0.11111 .* ones (5, 5); psf1 = [1 0 0; 0 1 0; 0 0 1]; im2 = checkerboard (2, 2, 2); out2_0 = [ -0.4713 -0.2786 0.4229 0.5161 -0.2759 -0.4685 0.5131 0.4199; -0.4713 -0.2786 0.4229 0.5161 -0.2759 -0.4685 0.5131 0.4199; 0.5161 0.4229 -0.2786 -0.4713 0.4199 0.5131 -0.4685 -0.2759; 0.5161 0.4229 -0.2786 -0.4713 0.4199 0.5131 -0.4685 -0.2759; -0.4713 -0.2786 0.4229 0.5161 -0.2759 -0.4685 0.5131 0.4199; -0.4713 -0.2786 0.4229 0.5161 -0.2759 -0.4685 0.5131 0.4199; 0.5161 0.4229 -0.2786 -0.4713 0.4199 0.5131 -0.4685 -0.2759; 0.5161 0.4229 -0.2786 -0.4713 0.4199 0.5131 -0.4685 -0.2759]; out2_1 = [ -0.0000 0.8481 0.4288 -0.4194 0.0000 0.2765 0.1373 -0.1392; 0.5623 -0.0000 -0.4194 0.1429 0.5623 0.0000 -0.1392 0.4231; 0.1429 -0.4194 0 0.5623 0.4231 -0.1392 0 0.5623; -0.4194 0.4288 0.8481 0 -0.1392 0.1373 0.2765 0; -0.0000 0.8481 0.4288 -0.4194 0.0000 0.2765 0.1373 -0.1392; 0.5623 -0.0000 -0.4194 0.1429 0.5623 0.0000 -0.1392 0.4231; 0.1429 -0.4194 0 0.5623 0.4231 -0.1392 0 0.5623; -0.4194 0.4288 0.8481 0 -0.1392 0.1373 0.2765 0]; im3 = rot90 (diag (0.5.*ones (1,8)) + diag (ones(1,7), 1)); ***** error deconvwnr () ***** error deconvwnr (ones (5)) ***** assert (deconvwnr (ones (5), ones (3))) ***** assert (deconvwnr (ones (5), ones (3), 0.7)) ***** assert (deconvwnr (ones (5), ones (3), 0.5 .* ones (5))) ***** assert (deconvwnr (ones (5, 5, 5), ones (3))) ***** error deconvwnr (ones (5), ones (3), -0.7) ***** error deconvwnr (ones (5), ones (7)) ***** error deconvwnr (ones (5, 8, 2), ones (6, 5)) ***** assert (deconvwnr (im0, psf0), im0_out, 1e-5) ***** assert (deconvwnr (im0, single (psf0)), im0_out, 1e-5) ***** assert (class (deconvwnr (im0, psf0)), "double") ***** assert (deconvwnr (single (im0), psf0), single (im0_out), 1e-5) ***** assert (class (deconvwnr (single (im0), psf0)), "single") ***** assert (deconvwnr (im2uint8 (im0), psf0), im2uint8 (im0_out)) ***** assert (class (deconvwnr (im2uint8 (im0), psf0)), "uint8") ***** assert (deconvwnr (im2uint16 (im0), psf0), im2uint16 (im0_out)) ***** assert (class (deconvwnr (im2uint16 (im0), psf0)), "uint16") ***** assert (deconvwnr (im2int16 (im0), psf0), im2int16 (im0_out)) ***** assert (class (deconvwnr (im2int16 (im0), psf0)), "int16") ***** error deconvwnr (true (5), ones (3)) ***** test assert (deconvwnr (im0, psf0, 0.01), im0_out, 1e-4) assert (deconvwnr (im0, psf1, 0.01), 0.333.*ones (5), 1e-4) ***** test im1 = magic (5)./25; out1_0 = [ -0.0820 0.5845 -0.4293 0.2372 -0.0214; 0.6241 -0.5877 0.2768 0.0182 -0.0424; -0.5481 0.3164 0.0578 -0.2009 0.6637; 0.1580 0.0974 -0.1613 0.7033 -0.5085; 0.1370 -0.1217 0.5449 -0.4689 0.1976]; out1_1 = [ -0.2959 -0.1363 0.4038 0.7595 0.1347; -0.0191 0.3269 0.8768 0.0559 -0.3748; 0.2481 0.7979 0.1731 -0.4517 0.0982; 0.7210 0.2904 -0.5305 0.0194 0.3654; 0.2116 -0.4132 -0.0575 0.4826 0.6422]; assert (deconvwnr (im1, psf0, 0.01), out1_0, 1e-4) assert (deconvwnr (im1, psf1, 0.01), out1_1, 1e-4) ***** test assert (deconvwnr (im2, psf0, 0.01), out2_0, 1e-4) assert (deconvwnr (im2, psf1, 0.01), out2_1, 1e-4) ***** test out3_0_x = [ -1.1111 1.0556 -0.4444 -0.1111 0.5556 -0.9444 0.8889 0.0556; 1.0556 -0.7778 0.2222 0.5556 -1.2778 1.2222 0.0556 -0.7778; -0.4444 0.2222 0.2222 -0.9444 1.2222 -0.2778 -0.4444 0.7222; -0.1111 0.5556 -0.9444 0.8889 0.0556 -0.4444 0.3889 -0.4444; 0.5556 -1.2778 1.2222 0.0556 -0.7778 0.7222 -0.4444 0.2222; -0.9444 1.2222 -0.2778 -0.4444 0.7222 -0.7778 0.5556 0.2222; 0.8889 0.0556 -0.4444 0.3889 -0.4444 0.5556 -0.1111 -0.9444; 0.0556 -0.7778 0.7222 -0.4444 0.2222 0.2222 -0.9444 1.2222]; out3_0_01 = [ -0.5064 0.2140 0.1101 -0.0993 0.0297 -0.1942 0.3223 0.0772; 0.2140 -0.0659 0.0375 0.0891 -0.4109 0.4783 0.2202 -0.2860; 0.1101 0.0375 -0.0525 -0.3208 0.5721 0.0034 -0.1743 0.0939; -0.0993 0.0891 -0.3208 0.4624 0.0936 -0.1150 -0.1395 -0.0135; 0.0297 -0.4109 0.5721 0.0936 -0.2566 -0.0027 0.1101 0.1341; -0.1942 0.4783 0.0034 -0.1150 -0.0027 -0.0659 0.2542 -0.0819; 0.3223 0.2202 -0.1743 -0.1395 0.1101 0.2542 -0.3023 -0.3371; 0.0772 -0.2860 0.0939 -0.0135 0.1341 -0.0819 -0.3371 0.6794]; out3_0_00001 = [ -1.1087 1.0520 -0.4419 -0.1112 0.5532 -0.9410 0.8864 0.0557; 1.0520 -0.7746 0.2213 0.5537 -1.2742 1.2190 0.0565 -0.7759; -0.4419 0.2213 0.2211 -0.9418 1.2196 -0.2767 -0.4433 0.7195; -0.1112 0.5537 -0.9418 0.8870 0.0557 -0.4428 0.3864 -0.4425; 0.5532 -1.2742 1.2196 0.0557 -0.7755 0.7188 -0.4419 0.2220; -0.9410 1.2190 -0.2767 -0.4428 0.7188 -0.7746 0.5544 0.2206; 0.8864 0.0565 -0.4433 0.3864 -0.4419 0.5544 -0.1121 -0.9418; 0.0557 -0.7759 0.7195 -0.4425 0.2220 0.2206 -0.9418 1.2201]; out3_0_3 = [ -0.0893 -0.0089 0.0446 -0.0357 -0.0268 0.0268 0.0893 0.0446; -0.0089 0.0223 -0.0089 -0.0357 -0.0089 0.1473 0.1161 0.0179; 0.0446 -0.0089 -0.0357 -0.0089 0.1607 0.0804 -0.0089 -0.0357; -0.0357 -0.0357 -0.0089 0.1652 0.0804 -0.0179 -0.0714 0.0045; -0.0268 -0.0089 0.1607 0.0804 -0.0179 -0.0446 0.0446 -0.0000; 0.0268 0.1473 0.0804 -0.0179 -0.0446 0.0223 0.0268 -0.0000; 0.0893 0.1161 -0.0089 -0.0714 0.0446 0.0268 -0.1071 -0.0446; 0.0446 0.0179 -0.0357 0.0045 0.0000 -0.0000 -0.0446 0.1652]; out3_1_x = [ -0.3333 0.1667 -0.6667 -0.3333 0.3333 0.1667 0.3333 0.1667; 0.1667 -0.3333 -0.3333 0.3333 0.1667 0.3333 0.1667 0.3333; -0.6667 -0.3333 0.6667 0.1667 0.3333 0.1667 0.3333 0.1667; -0.3333 0.3333 0.1667 -0.3333 0.1667 0.3333 0.1667 -0.6667; 0.3333 0.1667 0.3333 0.1667 0.6667 0.1667 -0.6667 -0.3333; 0.1667 0.3333 0.1667 0.3333 0.1667 -0.3333 -0.3333 0.3333; 0.3333 0.1667 0.3333 0.1667 -0.6667 -0.3333 -0.3333 0.1667; 0.1667 0.3333 0.1667 -0.6667 -0.3333 0.3333 0.1667 0.6667]; out3_1_01 = [ -0.1868 0.1548 -0.5994 -0.2997 0.3097 0.1548 0.3097 0.1548; 0.1548 -0.2997 -0.2997 0.3097 0.1548 0.3097 0.1548 0.3097; -0.5994 -0.2997 0.4965 0.1548 0.3097 0.1548 0.3097 0.1548; -0.2997 0.3097 0.1548 -0.1247 0.1548 0.3097 0.1548 -0.5994; 0.3097 0.1548 0.3097 0.1548 0.4965 0.1548 -0.5994 -0.2997; 0.1548 0.3097 0.1548 0.3097 0.1548 -0.2997 -0.2997 0.3097; 0.3097 0.1548 0.3097 0.1548 -0.5994 -0.2997 -0.1868 0.1548; 0.1548 0.3097 0.1548 -0.5994 -0.2997 0.3097 0.1548 0.4343]; out3_1_00001 = [ -0.3331 0.1667 -0.6666 -0.3333 0.3333 0.1667 0.3333 0.1667; 0.1667 -0.3333 -0.3333 0.3333 0.1667 0.3333 0.1667 0.3333; -0.6666 -0.3333 0.6664 0.1667 0.3333 0.1667 0.3333 0.1667; -0.3333 0.3333 0.1667 -0.3330 0.1667 0.3333 0.1667 -0.6666; 0.3333 0.1667 0.3333 0.1667 0.6664 0.1667 -0.6666 -0.3333; 0.1667 0.3333 0.1667 0.3333 0.1667 -0.3333 -0.3333 0.3333; 0.3333 0.1667 0.3333 0.1667 -0.6666 -0.3333 -0.3331 0.1667; 0.1667 0.3333 0.1667 -0.6666 -0.3333 0.3333 0.1667 0.6663]; out3_1_3 = [ -0.0089 0.0625 -0.1250 -0.0625 0.1250 0.0625 0.1250 0.0625; 0.0625 -0.0625 -0.0625 0.1250 0.0625 0.1250 0.0625 0.1250; -0.1250 -0.0625 0.1339 0.0625 0.1250 0.0625 0.1250 0.0625; -0.0625 0.1250 0.0625 0.0982 0.0625 0.1250 0.0625 -0.1250; 0.1250 0.0625 0.1250 0.0625 0.1339 0.0625 -0.1250 -0.0625; 0.0625 0.1250 0.0625 0.1250 0.0625 -0.0625 -0.0625 0.1250; 0.1250 0.0625 0.1250 0.0625 -0.1250 -0.0625 -0.0089 0.0625; 0.0625 0.1250 0.0625 -0.1250 -0.0625 0.1250 0.0625 0.0268]; assert (deconvwnr (im3, psf0), out3_0_x, 1e-4) assert (deconvwnr (im3, psf0, 0.1), out3_0_01, 1e-4) assert (deconvwnr (im3, psf0, 0.0001), out3_0_00001, 1e-4) assert (deconvwnr (im3, psf0, 3), out3_0_3, 1e-4) assert (deconvwnr (im3, psf1), out3_1_x, 1e-4) assert (deconvwnr (im3, psf1, 0.1), out3_1_01, 1e-4) assert (deconvwnr (im3, psf1, 0.0001), out3_1_00001, 1e-4) assert (deconvwnr (im3, psf1, 3), out3_1_3, 1e-4) ***** test im_rgb = cat (3, im2, im3, magic (8)./64); out_rgb_0(:, :, 1) = out2_0; out_rgb_0(:, :, 2) = [ -0.9255 0.7869 -0.2553 -0.1154 0.3801 -0.6906 0.7000 0.0651; 0.7869 -0.5407 0.1534 0.4141 -1.0064 0.9816 0.1222 -0.6335; -0.2553 0.1534 0.1343 -0.7453 1.0211 -0.1936 -0.3586 0.5209; -0.1154 0.4141 -0.7453 0.7468 0.0675 -0.3247 0.2023 -0.2996; 0.3801 -1.0064 1.0211 0.0675 -0.6045 0.4711 -0.2553 0.2032; -0.6906 0.9816 -0.1936 -0.3247 0.4711 -0.5407 0.4692 0.1052; 0.7000 0.1222 -0.3586 0.2023 -0.2553 0.4692 -0.1868 -0.7477; 0.0651 -0.6335 0.5209 -0.2996 0.2032 0.1052 -0.7477 1.0630]; out_rgb_0(:, :, 3) = [ -0.8118 0.8805 0.8341 -0.7963 -0.6343 0.8222 0.7757 -0.6188; 0.5720 -0.4151 -0.3687 0.5565 0.3945 -0.3567 -0.3103 0.3791; 0.2007 -0.0438 0.0026 0.1852 0.0232 0.0146 0.0610 0.0078; -0.6880 0.7568 0.7104 -0.6725 -0.5105 0.6984 0.6520 -0.4951; 0.6079 -0.5392 -0.5856 0.6234 0.7854 -0.5975 -0.6439 0.8008; 0.1051 0.0519 0.0983 0.0896 -0.0724 0.1102 0.1566 -0.0879; -0.2662 0.4231 0.4696 -0.2817 -0.4437 0.4815 0.5279 -0.4592; 0.7317 -0.6629 -0.7093 0.7471 0.9091 -0.7213 -0.7677 0.9246]; out_rgb_1(:, :, 1) = out2_1; out_rgb_1(:, :, 2) = [ -0.3110 0.1654 -0.6593 -0.3297 0.3308 0.1654 0.3308 0.1654; 0.1654 -0.3297 -0.3297 0.3308 0.1654 0.3308 0.1654 0.3308; -0.6593 -0.3297 0.6418 0.1654 0.3308 0.1654 0.3308 0.1654; -0.3297 0.3308 0.1654 -0.3016 0.1654 0.3308 0.1654 -0.6593; 0.3308 0.1654 0.3308 0.1654 0.6418 0.1654 -0.6593 -0.3297; 0.1654 0.3308 0.1654 0.3308 0.1654 -0.3297 -0.3297 0.3308; 0.3308 0.1654 0.3308 0.1654 -0.6593 -0.3297 -0.3110 0.1654; 0.1654 0.3308 0.1654 -0.6593 -0.3297 0.3308 0.1654 0.6323]; out_rgb_1(:, :, 3) = [ -0.0240 0.3338 0.3335 0.0329 0.0344 0.1564 0.3942 0.0913; 0.7871 0.6512 -0.5394 -0.2225 0.7287 0.5905 -0.3619 -0.2809; 0.1333 -0.7196 0.2335 1.0291 0.0749 -0.5421 0.1728 0.9708; -0.2201 0.4109 0.6487 -0.1632 -0.1617 0.4716 0.4713 -0.1048; 0.4430 -0.1331 -0.1334 0.4999 0.5014 -0.3106 -0.0727 0.5582; -0.6326 0.1654 0.8803 0.2633 -0.6910 0.1047 1.0577 0.2049; 0.6191 0.7001 -0.2523 -0.3905 0.5607 0.8776 -0.3130 -0.4489; 0.2469 -0.0561 0.1818 0.3038 0.3052 0.0047 0.0043 0.3621]; assert (deconvwnr (im_rgb, psf0, 0.01), out_rgb_0, 1e-4) assert (deconvwnr (im_rgb, psf1, 0.01), out_rgb_1, 1e-4) ***** test ## Test that psf and nsr can be of class single, but are usually ## internally as doubles. Matlab requires everything all to be ## double so this is Matlab incompatible behaviour by design. nsr = 0.1; psf1_recast = double (single (psf1)); nsr_recast = double (single (0.1)); deconvolved = deconvwnr (im2, psf1_recast, nsr_recast); assert (deconvwnr (im2, single (psf1), single (nsr)), deconvolved) assert (deconvwnr (im2, single (psf1), nsr_recast), deconvolved) assert (deconvwnr (im2, psf1_recast, single (nsr)), deconvolved) ***** demo I = phantom (); figure, imshow (I); title ("Original image"); psf = fspecial ("motion", 30, 15); blurred = imfilter (I, psf, "conv"); figure, imshow (blurred); title ("Image with added motion blur"); var_noise = 0.00005; blurred_noisy = imnoise (blurred, "gaussian", 0, var_noise); figure, imshow (blurred_noisy); title ("Image with motion blur and added Gaussian noise"); estimated_nsr = var_noise / (var(blurred_noisy(:)) - var_noise); J = deconvwnr (blurred_noisy, psf, estimated_nsr); figure, imshow (J) title ({"restored image after Wiener deconvolution", "with known PSF and estimated NSR"}); 27 tests, 27 passed, 0 known failure, 0 skipped [inst/im2single.m] >>>>> /<>/inst/im2single.m ***** assert (im2single (single ([1 2 3])), single ([1 2 3])); ***** assert (im2single ([1 2 3]), single ([1 2 3])); ***** assert (im2single (uint8 ([0 127 128 255])), single ([0 127/255 128/255 1])); ***** assert (im2single (uint16 ([0 127 128 65535])), single ([0 127/65535 128/65535 1])); ***** assert (im2single (int16 ([-32768 -32767 -32766 32767])), single ([0 1/65535 2/65535 1])); ***** assert (im2single (uint8 ([0 1 255]), "indexed"), single ([1 2 256])); ***** assert (im2single (uint16 ([0 1 2557]), "indexed"), single ([1 2 2558])); ***** assert (im2single ([3 25], "indexed"), single ([3 25])); ***** error im2single ([0 1 2], "indexed"); ***** error im2single (int16 ([17 8]), "indexed"); ***** error im2single (int16 ([-7 8]), "indexed"); ***** error im2single ([false true], "indexed"); 12 tests, 12 passed, 0 known failure, 0 skipped [inst/imsmooth.m] >>>>> /<>/inst/imsmooth.m ***** test ## checking Bilateral Filter ## constant image remain the same after Bilateral Filter A = uint8(255*ones(128,128)); B = uint8(imsmooth(A, 'Bilateral', 2, 10)); assert (A,B); ## Bilateral Filter does not smear outlayers A = zeros(256,256); A(128,128) = 256; ## bilateral filter does not smear outlayers B = imsmooth(A, 'Bilateral', 2, 10); assert (A,B,1.e-140); ## When sigma_r is large the filter behaves almost ## like the isotropic Gaussian filter A0 = fspecial ('gaussian',100,100); A = uint8(A0/max(max(A0))*255); B1 = imsmooth(A, 'Bilateral', 2, 100); B2 = imsmooth(A, 'Gaussian', 2); assert (B1,B2); 1 test, 1 passed, 0 known failure, 0 skipped [inst/im2uint8.m] >>>>> /<>/inst/im2uint8.m ***** assert (im2uint8 (uint8 ([1 2 3])), uint8 ([1 2 3])); ***** assert (im2uint8 (uint16 ([0 65535])), uint8 ([0 255])); ***** assert (im2uint8 ([0 0.5 1]), uint8 ([0 128 255])); ***** assert (im2uint8 ([1 2]), uint8 ([255 255])); ***** assert (im2uint8 ([-1 0 0.5 1 2]), uint8 ([0 0 128 255 255])); ***** assert (im2uint8 (int16 ([-32768 0 32768])), uint8 ([0 128 255])); ***** assert (im2uint8 ([false true]), uint8 ([0 255])); ***** assert (im2uint8 ([true false]), uint8 ([255 0])); ***** assert (im2uint8 ([1 256], "indexed"), uint8 ([0 255])); ***** assert (im2uint8 ([3 25], "indexed"), uint8 ([2 24])); ***** assert (im2uint8 (uint16 ([3 25]), "indexed"), uint8 ([3 25])); ***** error im2uint8 ([0 1 2], "indexed"); ***** error im2uint8 (int16 ([17 8]), "indexed"); ***** error im2uint8 (int16 ([-7 8]), "indexed"); ***** error im2uint8 ([false true], "indexed"); ***** error im2uint8 (uint16 (256), "indexed"); ***** error im2uint8 (257, "indexed"); ***** assert (im2uint8 ((1:255) ./ 256), uint8 ([1:128 128:254])) ***** assert (im2uint8 ((0:255) ./ 256), uint8 ([0:128 128:254])) 19 tests, 19 passed, 0 known failure, 0 skipped [inst/imquantize.m] >>>>> /<>/inst/imquantize.m ***** error imquantize (rand (5), [3 4 2 5]) ***** error imquantize (rand (5), [1 2 3], "foo") ***** error imquantize (rand (5), [1 2 3 4], 1:6) ***** error imquantize (rand (5), [1 2 3 4], 1:2) ***** test img = [-inf 0 10000000; -100000 -3 1/1000000; 5 5 10]; [q, q_idx] = imquantize (img, 5); assert (q, [1 1 2; 1 1 1; 1 1 2]) assert (q_idx, q) ***** test img = [1:10; 11:20; 21:30; 31:40; 41:50; 51:60; 61:70]; expected_q = [ 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 5 5 5 5 5 5 5 5 5 5 10 10 10 10 10 20 20 20 20 20 20 20 20 20 20 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 15 15 15 15 15 15 15 15 15 15]; expected_q_idx = [ 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 5 5 5 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7]; [q, q_idx] = imquantize (img, [5 15 25 30 40 60], [0 1 5 10 20 30 15]); assert (q, expected_q) assert (q_idx, expected_q_idx) [q, q_idx] = imquantize (single (img), [5 15 25 30 40 60], [0 1 5 10 20 30 15]); assert (q, expected_q) assert (q_idx, expected_q_idx) [q, q_idx] = imquantize (uint8 (img), [5 15 25 30 40 60], [0 1 5 10 20 30 15]); assert (q, expected_q) assert (q_idx, expected_q_idx) [q, q_idx] = imquantize (uint8 (img), uint8 ([5 15 25 30 40 60]), [0 1 5 10 20 30 15]); assert (q, expected_q) assert (q_idx, expected_q_idx) [q, q_idx] = imquantize (uint8 (img), uint8 ([5 15 25 30 40 60]), uint8 ([0 1 5 10 20 30 15])); assert (q, uint8 (expected_q)) assert (q_idx, expected_q_idx) ***** test img = randi ([0 255], 10, "uint8"); [q, q_idx] = imquantize (img, [50 100 150 200]); assert (class (q), "double") assert (class (q_idx), "double") [q, q_idx] = imquantize (img, [50 100 150 200], uint16 ([5 7 8 9 2])); assert (class (q), "uint16") assert (class (q_idx), "double") [q, q_idx] = imquantize (img, [50 100 150 200], uint8 ([5 7 8 9 2])); assert (class (q), "uint8") assert (class (q_idx), "double") ***** test img = [1:10; 11:20; 21:30; 31:40; 41:50; 51:60; 61:70].'; r_idx = reshape (randperm (numel (img)), size (img)); [quant, quant_idx] = imquantize (img, [5 15 25 30 40 60]); [quant_r, quant_r_idx] = imquantize (img(r_idx), [5 15 25 30 40 60]); assert (imquantize (img(r_idx), [5 15 25 30 40 60]), quant(r_idx)) assert (quant_r, quant_r_idx) 8 tests, 8 passed, 0 known failure, 0 skipped [inst/lab2double.m] >>>>> /<>/inst/lab2double.m ***** test l_max_f = 100 + (25500 / 65280); ab_max_f = 127 + (255 / 256); cm = [ -Inf Inf NaN l_max_f ab_max_f -200 -129 -128 -128+(255/65280)*(0.499999) -128+(255/65280)*(0.500001) # should be 0.5, but float rounding error -128+(255/65280)*(0.500002) -127 -1 0 (100/65280)*(0.499999) (100/65280)*(0.51) (100/65280)*(0.500001) 1 99 100 101 126 127 128 254 255 256 257]; cm = repmat (cm, [1 3]); im2d = reshape (cm, [7 4 3]); imnd = permute (im2d, [1 4 3 2]); cm_uint8 = uint8 ([ 0 0 0 255 255 255 255 255 255 255 228 228 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 127 127 0 128 128 0 128 128 0 128 128 0 128 128 3 129 129 252 227 227 255 228 228 255 229 229 255 254 254 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255]); assert (lab2uint8 (cm), cm_uint8) im2d_uint8 = reshape (cm_uint8, [7 4 3]); assert (lab2uint8 (im2d), im2d_uint8) assert (lab2uint8 (imnd), permute (im2d_uint8, [1 4 3 2])) cm_uint16 = uint16 ([ 0 0 0 65535 65535 65535 65535 65535 65535 65535 58468 58468 65535 65535 65535 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0 256 256 0 32512 32512 0 32768 32768 0 32768 32768 1 32768 32768 1 32768 32768 653 33024 33024 64627 58112 58112 65280 58368 58368 65535 58624 58624 65535 65024 65024 65535 65280 65280 65535 65535 65535 65535 65535 65535 65535 65535 65535 65535 65535 65535 65535 65535 65535]); assert (lab2uint16 (cm), cm_uint16) im2d_uint16 = reshape (cm_uint16, [7 4 3]); assert (lab2uint16 (im2d), im2d_uint16) assert (lab2uint16 (imnd), permute (im2d_uint16, [1 4 3 2])) assert (lab2single (cm), single (cm)) assert (lab2single (im2d), single (im2d)) assert (lab2single (imnd), single (imnd)) 1 test, 1 passed, 0 known failure, 0 skipped [inst/imcrop.m] >>>>> /<>/inst/imcrop.m ***** test a = randi (255, [100 100]); rect = [20 30 3 5]; assert (nthargout ([1 2], @imcrop, a, rect), {a(30:35, 20:23) rect}); assert (nthargout (2, @imcrop, a, rect), rect); assert (nthargout ([3 4], 4, @imcrop, a, rect), {a(30:35, 20:23) rect}); ***** test rgb = randi (255, [100 100 3]); rect = [20 30 3 5]; assert (nthargout ([1 2], @imcrop, rgb, rect), {rgb(30:35, 20:23,:) rect}); assert (nthargout (2, @imcrop, rgb, rect), rect); assert (nthargout ([3 4], 4, @imcrop, rgb, rect), {rgb(30:35, 20:23,:) rect}); ***** test a = randi (255, [100 100]); rect = [20 30 3 5]; cmap = jet (255); assert (nthargout ([1 2], @imcrop, a, cmap, rect), {a(30:35, 20:23) rect}); assert (nthargout (2, @imcrop, a, cmap, rect), rect); assert (nthargout ([3 4], 4, @imcrop, a, cmap, rect), {a(30:35, 20:23) rect}); ***** test a = rand (100) > 0.5; rect = [20 30 3 5]; assert (nthargout ([1 2], @imcrop, a, rect), {a(30:35, 20:23) rect}); assert (nthargout (2, @imcrop, a, rect), rect); assert (nthargout ([3 4], 4, @imcrop, a, rect), {a(30:35, 20:23) rect}); ***** assert (imcrop (0, [0.5 0.5 0.9 0.9]), 0); ***** assert (imcrop (zeros (5), [1 1 1 1]), zeros (2)); ***** test im = magic (5); assert (imcrop (im, [1 1 5 5]), im) assert (imcrop (im, [0 0 5 5]), im) assert (imcrop (im, [1 1 2 5]), im(:,1:3)) assert (imcrop (im, [1 -3 2 5]), im(1:2,1:3)) assert (imcrop (im, [5 -3 2 5]), im(1:2,5)) ***** test im = [1:7] .* [1; 2; 3; 4; 5]; assert (imcrop (im, [1 1 5 5]), im(:,1:6)) assert (imcrop (im, [0 0 5 5]), im(:,1:5)) assert (imcrop (im, [1 1 2 5]), im(:,1:3)) assert (imcrop (im, [1 -3 2 7]), im(1:4,1:3)) assert (imcrop (im, [7 -3 2 7]), im(1:4,7)) ***** test ## Matlab returns [] (size 0x0) for this cases, while we return ## [] (size 2x0). We are not compatible by design. If it ever ## becomes an issue to anyone we can review this decision. assert (imcrop (magic (5), [6 -3 2 5]), zeros (2, 0)) 9 tests, 9 passed, 0 known failure, 0 skipped [inst/iradon.m] >>>>> /<>/inst/iradon.m ***** assert (iradon (single ([0; 1; 1; 0]), 90)); ***** assert (iradon (double ([0; 1; 1; 0]), 90)); ***** assert (iradon (int8 ([0; 1; 1; 0]), 90)); ***** assert (iradon (int16 ([0; 1; 1; 0]), 90)); ***** assert (iradon (int32 ([0; 1; 1; 0]), 90)); ***** assert (iradon (int64 ([0; 1; 1; 0]), 90)); ***** assert (iradon (uint8 ([0; 1; 1; 0]), 90)); ***** assert (iradon (uint16 ([0; 1; 1; 0]), 90)); ***** assert (iradon (uint32 ([0; 1; 1; 0]), 90)); ***** assert (iradon (uint64 ([0; 1; 1; 0]), 90)); ***** assert (iradon (logical ([0; 1; 1; 0]), 90)); ***** assert (iradon (ones (5), 1:5)); ***** assert (iradon (ones (5), 1:5, 'nearest')); ***** assert (iradon (ones (5), 1:5, 'linear')); ***** assert (iradon (ones (5), 1:5, 'spline')); ***** assert (iradon (ones (5), 1:5, 'pchip')); ***** assert (iradon (ones (5), 1:5, 'linear', 'None')); ***** assert (iradon (ones (5), 1:5, 'linear', 'Ram-Lak')); ***** assert (iradon (ones (5), 1:5, 'linear', 'Shepp-Logan')); ***** assert (iradon (ones (5), 1:5, 'linear', 'Cosine')); ***** assert (iradon (ones (5), 1:5, 'linear', 'Hamming')); ***** assert (iradon (ones (5), 1:5, 'linear', 'Hann')); ***** assert (iradon (ones (5), 1:5, 'linear', 'None', 0.45)); ***** assert (iradon (ones (5), 1:5, 'linear', 'None', 0.45, 5)); ***** test [R, F] = iradon (ones (5), 1:5); assert(isvector(F)); assert(ismatrix(R)); ***** error iradon (); ***** error iradon ('xxx'); ***** error iradon (ones (2), 'xxx'); ***** error iradon (ones (5), 1:5, 'foo'); ***** error iradon (ones (5), 1:5, 'linear', 'foo'); ***** error iradon (ones (5), 1:5, 'linear', 'none', 'foo'); ***** error iradon (ones (5), 1:5, 'linear', 'none', 0.65, 'foo'); ***** test A = iradon([0; 1; 1; 0], 90); A_matlab = 0.4671 .* ones (2); assert (A, A_matlab, 0.02); # as Matlab compatible as iradon outputs currently get ***** test A = iradon (radon (ones (2, 2), 0:5), 0:5, "nearest", "none"); A_matlab = [1, 1, 1, 1]' * [0.4264, 2.7859, 2.7152, 0.3557]; assert (A, A_matlab, 0.0001); ***** test P = phantom (128); R = radon (P, 0:179); IR = iradon (R, 0:179, [], [], [], 128); # (errors in Matlab because of []s) D = P - IR; maxdiff = max (abs (D(:))); maxdiff_matlab = 0.3601; assert (maxdiff, maxdiff_matlab, 0.002); meandiff = mean (abs (D(:))); meandiff_matlab = 0.0218; assert (meandiff, meandiff_matlab, 0.001); filtername = "None"; IR = iradon (R, 0:179, [], filtername, [], 128); D = P - IR; maxdiff = max (abs (D(:))); maxdiff_matlab = 36.5671; assert (maxdiff, maxdiff_matlab, 0.0001); meandiff = mean (abs (D(:))); meandiff_matlab = 24.6302; assert (meandiff, meandiff_matlab, 0.0001); filtername = "Ram-Lak"; # is same as default IR = iradon (R, 0:179, [], filtername, [], 128); D = P - IR; maxdiff = max (abs (D(:))); maxdiff_matlab = 0.3601; assert (maxdiff, maxdiff_matlab, 0.002); meandiff = mean (abs (D(:))); meandiff_matlab = 0.0218; assert (meandiff, meandiff_matlab, 0.001); filtername = "Hamming"; IR = iradon (R, 0:179, [], filtername, [], 128); D = P - IR; maxdiff = max (abs (D(:))); maxdiff_matlab = 0.5171; assert (maxdiff, maxdiff_matlab, 0.005); meandiff = mean (abs (D(:))); meandiff_matlab = 0.0278; assert (meandiff, meandiff_matlab, 0.003); filtername = "Shepp-Logan"; IR = iradon (R, 0:179, [], filtername, [], 128); D = P - IR; maxdiff = max (abs (D(:))); maxdiff_matlab = 0.3941; assert (maxdiff, maxdiff_matlab, 0.005); meandiff = mean (abs (D(:))); meandiff_matlab = 0.0226; assert (meandiff, meandiff_matlab, 0.0015); filtername = "Cosine"; IR = iradon (R, 0:179, [], filtername, [], 128); D = P - IR; maxdiff = max (abs (D(:))); maxdiff_matlab = 0.4681; assert (maxdiff, maxdiff_matlab, 0.005); meandiff = mean (abs (D(:))); meandiff_matlab = 0.0249; assert (meandiff, meandiff_matlab, 0.002); filtername = "Hann"; IR = iradon (R, 0:179, [], filtername, [], 128); D = P - IR; maxdiff = max (abs (D(:))); maxdiff_matlab = 0.5334; assert (maxdiff, maxdiff_matlab, 0.005); meandiff = mean (abs (D(:))); meandiff_matlab = 0.0285; assert (meandiff, meandiff_matlab, 0.0025); ***** demo P = phantom (); figure, imshow (P, []), title ("Original image") projections = radon (P, 0:179); reconstruction = iradon (projections, 0:179, 'Spline', 'Hann'); figure, imshow (reconstruction, []), title ("Reconstructed image") 35 tests, 35 passed, 0 known failure, 0 skipped [inst/imabsdiff.m] >>>>> /<>/inst/imabsdiff.m ***** assert (imabsdiff (uint8 ([23 250]), uint8 ([26 50])), uint8 ([ 3 200])); # default to first class and abs works ***** assert (imabsdiff (uint8 ([23 250]), uint8 ([24 50]), "uint16"), uint16 ([ 1 200])); # defining output class works (not in matlab) ***** assert (imabsdiff (uint8 ([23 250]), uint8 ([24 255]), "int8"), int8 ([ 1 5])); # signed integers kinda work (not in matlab) ***** assert (imabsdiff (logical ([ 1 0]), logical ([ 1 1])), double ([ 0 1])); # return double for two logical images ***** fail ("imabsdiff (uint8 ([23 250]), 30"); # fails subtracting a scalar ***** fail ("imabsdiff (uint8 ([23 250]), uint16 ([23 250]))"); # input need to have same class 6 tests, 6 passed, 0 known failure, 0 skipped [inst/graythresh.m] >>>>> /<>/inst/graythresh.m ***** shared img, histo ## this is the old default.img that came with GNU Octave. While the current ## is very very similar, is off just enough for us to get precision errors img = uint8 (reshape ([138 138 138 142 142 138 142 138 138 117 105 81 69 61 53 40 49 45 40 36 40 45 53 49 65 73 121 166 210 243 247 247 247 239 235 178 154 170 150 150 162 174 190 190 194 186 178 170 154 182 198 174 117 138 138 142 138 142 142 146 142 138 138 130 109 97 81 73 69 57 53 53 57 61 61 69 73 77 105 121 158 219 243 243 247 243 243 243 206 150 158 158 158 150 158 182 186 190 194 186 174 190 206 198 162 138 142 138 142 146 138 142 142 138 146 142 134 142 130 121 101 97 85 85 81 81 81 85 93 85 73 57 61 93 150 194 215 239 243 243 243 223 166 138 158 158 154 142 162 178 190 190 198 186 182 186 174 162 182 146 142 138 142 142 146 142 146 146 146 146 142 142 142 134 125 101 85 73 65 69 73 73 57 40 53 49 57 69 85 125 166 182 178 178 174 150 130 121 146 146 150 142 166 182 190 182 174 166 162 170 194 198 138 138 146 146 138 146 146 146 146 142 150 146 146 142 130 93 65 45 45 49 45 40 49 40 49 49 49 49 61 81 113 142 150 154 154 146 142 134 125 125 138 134 125 146 162 178 178 178 166 186 202 206 186 142 142 142 134 142 146 142 150 142 146 142 146 146 130 81 53 49 49 45 49 40 36 36 32 36 36 36 53 73 89 125 150 146 134 138 146 138 146 138 142 117 117 113 117 146 166 174 178 182 178 178 170 146 142 142 138 142 146 142 142 146 150 138 146 142 130 73 49 40 49 57 65 69 73 61 61 53 57 53 61 77 77 97 113 138 134 130 138 142 150 146 150 134 138 121 121 101 121 150 158 154 142 150 162 166 178 138 138 146 142 142 142 142 146 146 142 142 130 73 57 49 36 49 65 77 85 89 85 81 81 81 85 93 93 97 105 117 125 150 158 154 162 162 166 154 134 150 130 125 113 138 182 174 154 130 178 227 239 239 134 138 142 138 142 142 146 146 138 150 125 61 49 32 32 45 49 57 65 85 101 105 101 101 109 125 117 113 109 138 134 125 166 178 170 162 150 170 162 170 150 146 150 138 125 162 186 182 142 206 247 247 243 138 138 138 138 142 142 146 146 146 130 85 45 45 36 40 53 45 57 69 97 125 130 130 134 138 146 142 134 142 158 138 117 146 174 170 174 178 170 174 170 166 154 162 158 130 134 170 178 158 190 243 247 247 142 142 142 142 142 146 146 142 138 89 53 45 40 45 45 49 57 77 93 125 138 150 154 158 158 162 154 150 166 174 142 73 125 174 178 174 182 182 178 178 174 166 174 174 162 125 154 170 174 170 227 247 251 142 138 142 142 142 142 142 138 105 61 40 40 32 40 40 49 61 89 117 146 154 158 162 170 170 174 162 166 174 182 150 65 146 166 174 186 198 198 198 190 178 178 174 174 158 134 154 198 194 174 202 251 251 146 142 142 142 146 150 138 134 69 40 40 36 32 40 45 45 65 101 134 150 158 166 174 178 174 174 174 170 170 174 142 73 150 162 178 194 202 202 194 194 178 178 154 134 125 138 154 198 194 186 190 243 251 150 146 146 146 146 150 130 109 53 45 28 40 40 36 32 49 73 101 130 154 162 170 170 170 178 182 178 178 174 158 142 121 146 158 178 174 186 190 186 186 174 146 105 109 113 130 150 178 202 190 186 243 251 146 146 146 146 150 142 109 73 49 40 32 40 40 45 40 53 69 93 130 154 162 170 174 178 182 182 186 182 178 154 146 130 138 142 150 170 182 178 174 166 150 117 97 105 113 130 150 150 174 182 190 243 251 146 146 154 146 150 134 105 53 40 45 45 40 40 36 36 40 69 105 134 162 170 174 178 182 182 182 186 190 186 178 170 158 154 150 162 182 182 174 174 174 150 113 109 113 113 130 150 162 186 186 190 239 251 154 150 146 150 146 125 77 49 36 40 36 40 36 28 40 36 77 113 138 150 170 170 174 186 190 190 190 194 190 186 194 190 170 162 174 194 174 182 170 170 158 121 113 113 113 146 158 170 210 215 215 206 243 150 146 150 150 150 113 57 49 40 45 45 49 49 40 32 45 85 113 142 170 178 174 182 194 190 194 194 198 198 198 210 210 182 162 170 190 182 186 170 170 162 130 121 113 121 146 154 150 198 215 206 210 215 150 150 150 150 150 105 49 45 40 49 49 57 40 49 49 53 85 121 158 182 178 174 182 198 194 194 194 194 202 202 194 186 174 154 162 166 178 174 170 170 170 158 117 113 130 150 154 121 182 194 206 215 206 158 150 150 150 146 97 45 36 49 49 49 40 40 49 49 65 97 130 154 174 174 174 186 194 194 194 194 198 198 186 170 158 154 158 138 158 162 170 190 182 174 170 138 138 142 154 134 142 146 170 206 219 215 150 150 158 158 150 85 36 40 40 40 40 45 45 49 49 65 97 130 146 166 166 174 182 190 194 194 194 194 190 182 162 158 150 158 182 186 178 198 206 198 190 174 154 174 174 142 142 170 170 166 202 223 219 158 150 150 150 146 85 40 45 40 40 36 45 53 45 49 53 93 117 130 154 162 174 190 186 194 194 194 190 186 178 162 162 170 174 182 198 210 206 210 198 198 182 170 178 174 158 154 194 194 174 198 210 215 150 154 158 150 150 85 49 45 40 40 32 36 53 40 45 53 81 109 142 158 158 174 178 182 190 190 194 190 190 178 170 174 178 186 190 190 206 215 202 206 194 186 178 182 174 154 170 198 210 186 186 202 215 150 154 150 154 150 97 45 40 40 40 36 36 45 40 45 73 89 113 142 158 158 174 174 182 186 186 194 186 182 178 174 170 105 166 206 186 190 202 198 194 190 182 182 174 166 154 162 198 215 202 182 202 219 154 150 154 150 146 117 61 45 45 45 36 53 53 49 53 77 93 101 125 158 162 174 174 178 174 186 190 182 182 186 182 182 77 125 198 194 186 190 190 178 178 178 162 162 162 154 186 210 227 210 190 206 223 154 150 154 150 154 138 65 45 45 45 40 49 49 40 53 65 77 89 113 150 158 166 166 170 178 182 186 182 170 170 170 162 81 117 186 190 186 182 178 186 174 166 162 150 130 154 194 227 227 219 202 202 219 154 154 150 154 146 146 89 45 40 45 40 49 49 36 40 57 65 89 109 138 146 158 158 170 170 178 182 178 162 150 158 154 113 146 186 182 178 182 178 170 170 162 146 138 138 146 202 223 231 219 210 190 215 130 130 130 130 130 130 109 45 53 40 32 36 40 45 53 61 65 81 97 117 130 138 150 158 158 178 170 162 158 138 142 150 146 166 178 174 174 170 170 170 162 158 138 117 117 142 202 223 239 223 215 186 206 61 61 65 69 69 65 57 36 40 36 32 40 40 53 57 53 57 69 93 105 109 130 138 142 154 162 150 138 142 125 121 150 162 170 170 166 170 170 170 166 162 138 121 113 130 170 202 223 227 231 202 178 182 45 49 45 40 40 40 45 45 45 45 36 40 32 49 61 61 57 65 73 81 101 109 121 130 142 146 121 89 93 117 113 134 154 174 166 162 166 170 170 162 154 150 142 150 223 186 194 215 231 227 206 182 174 49 40 45 45 49 49 45 49 49 49 49 40 36 45 57 69 65 61 65 69 85 93 109 109 117 109 89 57 57 81 97 113 154 162 166 162 170 158 158 162 154 162 174 231 239 178 186 210 231 239 210 194 178 49 36 49 45 49 49 49 45 45 49 49 36 40 40 45 36 53 53 53 57 57 69 69 73 69 61 57 45 45 65 89 105 125 142 146 150 150 154 162 170 174 223 235 247 231 178 178 206 227 227 223 198 190 40 53 36 45 40 40 40 40 45 40 40 45 45 45 45 40 53 49 49 45 53 45 32 36 36 36 36 40 49 45 61 73 89 93 97 113 125 142 186 202 239 239 243 251 239 198 166 194 215 235 227 215 202 40 45 36 32 36 40 40 45 40 40 45 49 45 49 45 49 40 40 45 49 40 45 45 45 49 49 32 40 49 40 49 57 69 81 101 134 170 206 235 243 243 239 247 251 247 210 170 186 202 231 231 227 210 49 45 49 40 40 40 49 45 40 40 45 45 45 40 45 45 45 49 40 49 40 49 45 45 36 40 40 45 45 45 45 65 121 150 210 239 243 243 247 243 243 247 251 251 239 223 178 174 194 219 239 231 219 36 45 45 40 40 49 40 45 49 49 40 40 45 49 40 40 45 49 45 40 49 45 40 40 40 49 40 45 40 49 49 121 162 215 247 247 247 247 247 243 247 251 251 251 247 239 223 194 186 202 215 210 210 36 45 45 40 40 49 40 45 32 36 49 36 45 49 40 40 45 40 36 40 45 45 40 40 40 36 45 32 40 49 57 121 142 215 243 247 243 247 243 247 251 251 251 251 247 247 247 227 186 194 190 190 182 40 32 45 32 45 40 45 45 49 45 40 45 49 36 40 45 32 40 45 45 49 45 45 45 45 53 49 53 45 45 40 69 97 186 239 243 247 247 247 251 251 251 251 251 243 243 231 202 202 206 206 186 170 53 40 40 40 40 40 36 32 32 36 45 53 49 32 36 32 36 32 40 49 40 40 45 40 40 53 45 49 49 40 32 40 49 138 219 235 247 247 251 251 251 251 251 247 243 235 198 206 210 198 190 186 186 73 69 61 57 61 49 53 40 49 45 40 49 49 49 57 57 53 49 53 53 45 40 45 40 45 49 45 49 45 40 32 53 69 101 215 231 247 247 247 247 251 251 251 243 235 219 194 202 202 186 186 190 194], [53 40])); ***** assert (graythresh (img, "percentile"), 142/255); ***** assert (graythresh (img, "percentile", 0.5), 142/255); ***** assert (graythresh (img, "moments"), 142/255); ***** assert (graythresh (img, "minimum"), 93/255); ***** assert (graythresh (img, "maxentropy"), 150/255); ***** assert (graythresh (img, "intermodes"), 99/255); ***** assert (graythresh (img, "otsu"), 114.5/255); histo = hist (img(:), 0:255); ***** assert (graythresh (histo, "otsu"), 114.5/255); ***** assert (graythresh (img, "mean"), 0.51445615982, 0.000000001); # here our results differ from ImageJ ***** test im = repmat (0.5, 100, 100); [t, g] = graythresh (im); assert (t, 0) assert (g, 0) ***** test im = [-2 1 0; 43 .5 .2]; clip_im = [ 0 1 0; 1 .5 .2]; t = graythresh (clip_im); assert (graythresh (im), t) assert (graythresh (single (im)), t) ***** test H(1) = 100; assert (graythresh (H), 0) 12 tests, 12 passed, 0 known failure, 0 skipped [inst/findbounds.m] >>>>> /<>/inst/findbounds.m ***** test im = checkerboard (); theta = pi/6; T = maketform ('affine', [cos(theta) -sin(theta); ... sin(theta) cos(theta); 0 0]); inbnd = [0 0; 1 1]; outbnd = findbounds (T, inbnd); diag = 2^.5; ang = pi/4; assert (diff (outbnd(:,1)), diag * abs (cos (theta - ang)), eps) assert (diff (outbnd(:,2)), diag * abs (cos (theta - ang)), eps) 1 test, 1 passed, 0 known failure, 0 skipped [inst/edge.m] >>>>> /<>/inst/edge.m ***** test im = [ 249 238 214 157 106 69 60 90 131 181 224 247 252 250 250 250 242 221 165 112 73 62 91 133 183 225 248 252 250 251 252 246 228 173 120 78 63 90 130 181 224 248 253 251 251 253 248 232 185 132 87 62 80 116 170 217 244 253 251 252 253 249 236 198 149 101 66 71 101 155 206 238 252 252 252 254 250 240 210 164 115 73 69 92 143 196 232 252 253 252 70 70 68 61 49 36 24 22 26 38 52 63 70 70 70 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 62 63 62 59 51 42 33 25 22 26 36 45 56 60 62 252 253 252 246 221 190 157 114 90 90 118 157 203 235 248 251 253 254 251 233 209 182 136 103 92 107 139 185 225 245 251 253 254 253 243 227 206 163 128 108 110 133 175 217 242 252 253 254 254 249 241 228 195 164 137 127 139 172 212 239 ] / 255; methods = {"kirsch", "prewitt", "sobel"}; for m_i = 1:numel (methods) method = methods{m_i}; bw = edge (im, method, 0.2, "both", "thinning"); assert (edge (im, method, 0.2), bw) args = perms ({0.2, "both", "thinning"}); for i = 1:rows (args) assert (edge (im, method, args{i,:}), bw) endfor bw = edge (im, method, 0.2, "vertical", "nothinning"); args = perms ({0.2, "vertical", "nothinning"}); for i = 1:rows (args) assert (edge (im, method, args{i,:}), bw) endfor bw = edge (im, method, 0.2, "vertical", "thinning"); args = perms ({0.2, "vertical"}); for i = 1:rows (args) assert (edge (im, method, args{i,:}), bw) endfor bw = edge (im, method, 0.2, "both", "nothinning"); args = perms ({0.2, "nothinning"}); for i = 1:rows (args) assert (edge (im, method, args{i,:}), bw) endfor endfor ***** error bw = edge (rand (10), "sobel", 0.2, 0.4) ***** error bw = edge (rand (10), "sobel", "thinning", "nothinning") ***** error bw = edge (rand (10), "sobel", "both", "both") ***** error bw = edge (rand (10), "sobel", [0.2 0.7], "both", "thinning") ***** error bw = edge (rand (10), "kirsch", 0.2, 0.4) ***** error bw = edge (rand (10), "kirsch", "thinning", "nothinning") ***** error bw = edge (rand (10), "kirsch", "both", "both") ***** error bw = edge (rand (10), "kirsch", [0.2 0.7], "both", "thinning") ***** error bw = edge (rand (10), "prewitt", 0.2, 0.4) ***** error bw = edge (rand (10), "prewitt", "thinning", "nothinning") ***** error bw = edge (rand (10), "prewitt", "both", "both") ***** error bw = edge (rand (10), "prewitt", [0.2 0.7], "both", "thinning") ***** test im = [ 249 238 214 157 106 69 60 90 131 181 224 247 252 250 250 250 242 221 165 112 73 62 91 133 183 225 248 252 250 251 252 246 228 173 120 78 63 90 130 181 224 248 253 251 251 253 248 232 185 132 87 62 80 116 170 217 244 253 251 252 253 249 236 198 149 101 66 71 101 155 206 238 252 252 252 254 250 240 210 164 115 73 69 92 143 196 232 252 253 252 70 70 68 61 49 36 24 22 26 38 52 63 70 70 70 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 62 63 62 59 51 42 33 25 22 26 36 45 56 60 62 252 253 252 246 221 190 157 114 90 90 118 157 203 235 248 251 253 254 251 233 209 182 136 103 92 107 139 185 225 245 251 253 254 253 243 227 206 163 128 108 110 133 175 217 242 252 253 254 254 249 241 228 195 164 137 127 139 172 212 239 ] / 255; bw = edge (im, "roberts", .2, "thinning"); assert (edge (im, "roberts", 0.2), bw) assert (edge (im, "roberts", "thinning", 0.2), bw) bw = edge (im, "roberts", .2, "nothinning"); assert (edge (im, "roberts", "nothinning", 0.2), bw) ***** error bw = edge (rand (10), "roberts", 0.2, 0.4) ***** error bw = edge (rand (10), "roberts", "thinning", "nothinning") ***** error bw = edge (rand (10), "roberts", "both", "thinning") ***** test im = rand (10); [~, thresh] = edge (im, "canny"); assert (size (thresh), [1 2]) [~, thresh] = edge (im, "canny", [.2 .6]); assert (thresh, [.2 .6]) [~, thresh] = edge (im, "canny", [.2; .6]); assert (thresh, [.2 .6]) ***** test in = zeros (5); in(3,3) = 1; E = logical ([ 0 0 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 0 0]); assert (edge (in), E) assert (edge (uint8 (in.*100)), E) assert (edge (in, "sobel"), E) assert (edge (in, "sobel", 0), E) assert (edge (in, "sobel", 1), false (5)) [E, auto_thresh] = edge (in); assert (auto_thresh, 0.2449, 1e-4) V = logical([ 0 0 0 0 0 0 1 0 1 0 0 1 0 1 0 0 1 0 1 0 0 0 0 0 0]); assert (edge (in, "sobel", 0, "vertical"), V) H = logical ([ 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0]); assert (edge (in, "sobel", 0, "horizontal"), H) V = false (5); V(3,2) = true; V(3,4) = true; assert (edge (in, "sobel", [], "vertical"), V) H = false (5); H(2,3) = true; H(4,3) = true; assert (edge (in, "sobel", [], "horizontal"), H) ***** test A = ones (5); A(3, 3) = 0; expected = logical ([ 0 0 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 0 0]); assert (edge (A), expected) ***** test in = zeros (5); in(3, 3) = 1; E = logical ([ 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0]); assert (edge (in, "prewitt"), E) [~, auto_thresh] = edge (in, "prewitt"); assert (auto_thresh, 0.2309, 1e-4) V = logical([ 0 0 0 0 0 0 1 0 1 0 0 1 0 1 0 0 1 0 1 0 0 0 0 0 0]); assert (edge (in, "prewitt", 0, "vertical"), V) H = logical ([ 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0]); assert (edge (in, "prewitt", 0, "horizontal"), H) ***** test in = zeros (5); in(3,3) = 1; in(3,4) = 0.9; E = logical ([ 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0]); assert (edge (in, "roberts"), E) [~, auto_thresh] = edge (in, "roberts"); assert (auto_thresh, 0.6591, 1e-4) E45 = [0 0 0 0 0 0 -0.5 -0.45 0 0 0 0 0.50 0.45 0 0 0 0 0 0 0 0 0 0 0]; E135 = [0 0 0 0 0 0 0 -0.50 -0.45 0 0 0.5 0.45 0 0 0 0 0 0 0 0 0 0 0 0]; [~, ~, erg45, erg135] = edge (in, "roberts"); assert (erg45, E45) assert (erg135, E135) ***** xtest ## The edge image is correct and Matlab compatible so those should ## pass. However, the threshold values used to generate the edge ## image are not the same as Matlab. in_8 = fspecial ("gaussian", [8 8], 2); in_8 /= in_8(4,4); in_8_uint8 = im2uint8 (in_8); ## Matlab changed their implementation of the Canny method in ## release 2011a. We are compatible with their new implementation ## but for testing purposes, this is the expected result for the ## old implementation. out_8_old = logical ([ 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 1 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 0 1 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0]); out_8 = logical ([ 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]); out_thresh = [0.34375 0.859375]; [obs_edge, obs_thresh] = edge (in_8, "Canny"); assert (obs_edge, out_8) assert (obs_thresh, out_thresh) [obs_edge_givethresh, obs_thresh_givethresh] ... = edge (in_8, "Canny", out_thresh); assert (obs_edge_givethresh, out_8) assert (obs_thresh_givethresh, out_thresh) [obs_edge_uint8, obs_thresh_uint8] = edge (in_8_uint8, "Canny"); assert (obs_edge_uint8, out_8) assert (obs_thresh_uint8, out_thresh) !!!!! known failure ASSERT errors for: assert (obs_thresh,out_thresh) Location | Observed | Expected | Reason (1) 0.27112 0.34375 Abs err 0.072632 exceeds tol 0 by 0.07 (2) 0.67779 0.85938 Abs err 0.18158 exceeds tol 0 by 0.2 ***** xtest ## The edge image is correct and Matlab compatible so those should ## pass. However, the threshold values used to generate the edge ## image are not the same as Matlab. in_9 = fspecial ("gaussian", [9 9], 2); in_9 /= in_9(5,5); ## Matlab changed their implementation of the Canny method in ## release 2011a. We are compatible with their new implementation ## but for testing purposes, this is the expected result for the ## old implementation. out_9_old = logical ([ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]); out_9 = logical ([ 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 1 0 0 1 1 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]); out_thresh = [0.35 0.875]; [obs_edge, obs_thresh] = edge (in_9, "Canny"); assert (obs_edge, out_9) assert (obs_thresh, out_thresh) [obs_edge_givethresh, obs_thresh_givethresh] ... = edge (in_9, "Canny", out_thresh); assert (obs_edge_givethresh, out_9) assert (obs_thresh_givethresh, out_thresh) !!!!! known failure ASSERT errors for: assert (obs_thresh,out_thresh) Location | Observed | Expected | Reason (1) 0.261 0.35 Abs err 0.089001 exceeds tol 0 by 0.09 (2) 0.6525 0.875 Abs err 0.2225 exceeds tol 0 by 0.2 24 tests, 22 passed, 2 known failures, 0 skipped [inst/imgradientxy.m] >>>>> /<>/inst/imgradientxy.m ***** test A = [0 1 0 1 1 1 0 1 0]; [gxSobel, gySobel] = imgradientxy (A); [gxSobel2, gySobel2] = imgradientxy (A, "Sobel"); assert (gxSobel, [ 3 0 -3 4 0 -4 3 0 -3]); assert (gySobel, [ 3 4 3 0 0 0 -3 -4 -3]); ## test default method assert(gxSobel, gxSobel2); assert(gySobel, gySobel2); [gxPrewitt, gyPrewitt] = imgradientxy (A, "Prewitt"); assert (gxPrewitt, [ 2 0 -2 3 0 -3 2 0 -2]); assert (gyPrewitt, [ 2 3 2 0 0 0 -2 -3 -2]); [gxCd, gyCd] = imgradientxy (A, "CentralDifference"); assert (gxCd, [ 0.5 0.0 -0.5 0.5 0.0 -0.5 0.5 0.0 -0.5]); assert (gyCd, [ 0.5 0.5 0.5 0 0 0 -0.5 -0.5 -0.5]); [gxCd, gyCd] = imgradientxy (A, "Central"); assert (gxCd, [ 0.5 0.0 -0.5 0.5 0.0 -0.5 0.5 0.0 -0.5]); assert (gyCd, [ 0.5 0.5 0.5 0 0 0 -0.5 -0.5 -0.5]); [gxId, gyId] = imgradientxy(A, "IntermediateDifference"); assert (gxId, [ 1 -1 0 0 0 -1 1 -1 0]); assert (gyId, [ 1 0 1 -1 0 -1 0 -1 0]); [gxId, gyId] = imgradientxy(A, "Intermediate"); assert (gxId, [ 1 -1 0 0 0 -1 1 -1 0]); assert (gyId, [ 1 0 1 -1 0 -1 0 -1 0]); 1 test, 1 passed, 0 known failure, 0 skipped [inst/@imref2d/contains.m] >>>>> /<>/inst/@imref2d/contains.m ***** error id=Octave:invalid-fun-call contains (imref2d) ***** error id=Octave:invalid-fun-call contains (imref2d, 1) ***** error id=Octave:invalid-fun-call contains (imref2d, 1, 2, 3) ***** error id=Octave:invalid-input-arg contains (imref2d, 1, [2, 3]) ***** error id=Octave:invalid-input-arg contains (imref2d, [1, 2], 3) ***** error id=Octave:expected-real contains (imref2d, 0, j) ***** error id=Octave:expected-real contains (imref2d, j, 0) ***** assert (contains (imref2d, [], []), logical( zeros (0, 0))) ***** assert (contains (imref2d, [1, 2; 3, 4], [5, -6; 7, 8]), logical (zeros (2, 2))) ***** test r = imref2d ([256, 256]); assert (contains(r, [5, 8, 8], [5, 10, 257]), logical([1, 1, 0])) 10 tests, 10 passed, 0 known failure, 0 skipped [inst/@imref2d/worldToSubscript.m] >>>>> /<>/inst/@imref2d/worldToSubscript.m ***** error id=Octave:invalid-fun-call worldToSubscript (imref2d) ***** error id=Octave:invalid-fun-call worldToSubscript (imref2d, 1, 2, 3) ***** error id=Octave:expected-real worldToSubscript (imref2d, 1j, 2) ***** error id=Octave:expected-real worldToSubscript (imref2d, 1, 2j) ***** error id=Octave:invalid-input-arg worldToSubscript (imref2d, [1, 2], 3) ***** error id=Octave:invalid-input-arg worldToSubscript (imref2d, [1], [2, 3]) ***** test r = imref2d ([512, 512], 0.3125, 0.3125); xW = [38.44, 39.44, 38.44, -0.2]; yW = [68.75, 68.75, 75.75, -1]; [rS, cS] = worldToSubscript (r, xW, yW); assert (rS, [220, 220, 242, NaN]) assert (cS, [123, 126, 123, NaN]) 7 tests, 7 passed, 0 known failure, 0 skipped [inst/@imref2d/sizesMatch.m] >>>>> /<>/inst/@imref2d/sizesMatch.m ***** error id=Octave:invalid-fun-call sizesMatch (imref2d) ***** test I = zeros (256, 256); r = imref2d ([256, 256]); assert (sizesMatch (r, I), true) I2 = zeros (246, 300); assert (sizesMatch (r, I2), false) ***** test r = imref2d ([256, 256]); assert (sizesMatch (r, []), false) ***** test r = imref2d ([256, 256]); assert (sizesMatch (r, 42), false) ***** test r = imref2d ([256, 256]); assert (sizesMatch (r, zeros (256, 256, 3, 2)), true) ***** test I = zeros (384, 512, 3); r = imref2d (size (I)); assert (sizesMatch (r, I), true) 6 tests, 6 passed, 0 known failure, 0 skipped [inst/@imref2d/imref2d.m] >>>>> /<>/inst/@imref2d/imref2d.m ***** error id=Octave:invalid-fun-call imref2d (1, 2, 3, 4) ***** error id=Octave:invalid-input-arg imref2d (42) ***** error id=Octave:invalid-input-arg imref2d ([42]) ***** error id=Octave:expected-integer imref2d ([4.2, 42]) ***** error id=Octave:expected-positive imref2d ([0, 0]) ***** error id=Octave:expected-positive imref2d ([-4, 2]) ***** error id=Octave:expected-positive imref2d ([4, 2], 0, 2) ***** error id=Octave:expected-positive imref2d ([4, 2], 2, 0) ***** error id=Octave:expected-real imref2d ([4, 2], j, 2) ***** error id=Octave:expected-real imref2d ([4, 2], 2, j) ***** error id=Octave:expected-real imref2d ([4, 2], [j, 2], [3, 4]) ***** error id=Octave:expected-real imref2d ([4, 2], [1, 2], [j, 4]) ***** error id=Octave:expected-vector imref2d ([4, 2], [], []) ***** error id=Octave:expected-vector imref2d ([4, 2], [], [1]) ***** error id=Octave:expected-scalar imref2d ([4, 2], [1], []) ***** error id=Octave:incorrect-size imref2d ([4, 2], [1, 2], [0]) ***** error id=Octave:incorrect-size imref2d ([4, 2], [1, 2], [1, 2, 3]) ***** error id=Octave:incorrect-size imref2d ([4, 2], [1, 2, 3], [1, 2]) ***** error id=Octave:incorrect-size imref2d ([4, 2], [1; 2], [1, 2]) ***** error id=Octave:incorrect-size imref2d ([4, 2], [1, 2], [1; 2]) ***** error id=Octave:invalid-indexing imref2d().InvalidProperty ***** error id=Octave:expected-increasing imref2d ([100 200], [1.5 0.5], [2.5 3.5]) ***** error id=Octave:expected-increasing imref2d ([100 200], [1.5 2.5], [2.5 1.5]) ***** test r = imref2d; assert (r.XWorldLimits, [0.5, 2.5]) assert (r.YWorldLimits, [0.5, 2.5]) assert (r.ImageSize, [2, 2]) assert (r.PixelExtentInWorldX, 1) assert (r.PixelExtentInWorldY, 1) assert (r.ImageExtentInWorldX, 2) assert (r.ImageExtentInWorldY, 2) assert (r.XIntrinsicLimits, [0.5, 2.5]) assert (r.YIntrinsicLimits, [0.5, 2.5]) ***** test r = imref2d ([100, 200]); assert (r.XWorldLimits, [0.5, 200.5]) assert (r.YWorldLimits, [0.5, 100.5]) assert (r.ImageSize, [100, 200]) assert (r.PixelExtentInWorldX, 1) assert (r.PixelExtentInWorldY, 1) assert (r.ImageExtentInWorldX, 200) assert (r.ImageExtentInWorldY, 100) assert (r.XIntrinsicLimits, [0.5, 200.5]) assert (r.YIntrinsicLimits, [0.5, 100.5]) ***** test xWorldLimits = [2, 5]; yWorldLimits = [3, 6]; r = imref2d ([291, 240], xWorldLimits, yWorldLimits); assert (r.XWorldLimits, [2, 5]) assert (r.YWorldLimits, [3, 6]) assert (r.ImageSize, [291, 240]) assert (r.PixelExtentInWorldX, 0.0125) assert (r.PixelExtentInWorldY, 0.0103, 1e-3) assert (r.ImageExtentInWorldX, 3) assert (r.ImageExtentInWorldY, 3) assert (r.XIntrinsicLimits, [0.5, 240.5]) assert (r.YIntrinsicLimits, [0.5, 291.5]) ***** test pixelExtentInWorldX = 0.3125; pixelExtentInWorldY = 0.3125; r = imref2d ([512, 512], pixelExtentInWorldX, pixelExtentInWorldY); assert (r.XWorldLimits, [0.15625, 160.1562], 1e-4) assert (r.YWorldLimits, [0.15625, 160.1562], 1e-4) assert (r.ImageSize, [512, 512]) assert (r.PixelExtentInWorldX, 0.3125) assert (r.PixelExtentInWorldY, 0.3125) assert (r.ImageExtentInWorldX, 160) assert (r.ImageExtentInWorldY, 160) assert (r.XIntrinsicLimits, [0.5, 512.5]) assert (r.YIntrinsicLimits, [0.5, 512.5]) ***** test pixelExtentInWorldX = 0.1; pixelExtentInWorldY = 0.4; r = imref2d ([100, 200], pixelExtentInWorldX, pixelExtentInWorldY); assert (r.XWorldLimits, [0.05, 20.05], 1e-4) assert (r.YWorldLimits, [0.2, 40.2], 1e-4) assert (r.ImageSize, [100, 200]) assert (r.PixelExtentInWorldX, 0.1) assert (r.PixelExtentInWorldY, 0.4) assert (r.ImageExtentInWorldX, 20) assert (r.ImageExtentInWorldY, 40) assert (r.XIntrinsicLimits, [0.5, 200.5]) assert (r.YIntrinsicLimits, [0.5, 100.5]) ***** test r = imref2d; assert (r.XWorldLimits, [0.5, 2.5]) assert (r.YWorldLimits, [0.5, 2.5]) assert (r.ImageSize, [2, 2]) assert (r.PixelExtentInWorldX, 1) assert (r.PixelExtentInWorldY, 1) assert (r.ImageExtentInWorldX, 2) assert (r.ImageExtentInWorldY, 2) assert (r.XIntrinsicLimits, [0.5, 2.5]) assert (r.YIntrinsicLimits, [0.5, 2.5]) r.ImageSize = [800, 600]; assert (r.XWorldLimits, [0.5, 2.5]) assert (r.YWorldLimits, [0.5, 2.5]) assert (r.ImageSize, [800, 600]) assert (r.PixelExtentInWorldX, 0.003333, 1e-5) assert (r.PixelExtentInWorldY, 0.0025) assert (r.ImageExtentInWorldX, 2) assert (r.ImageExtentInWorldY, 2) assert (r.XIntrinsicLimits, [0.5, 600.5]) assert (r.YIntrinsicLimits, [0.5, 800.5]) ***** test r = imref2d; assert (r.XWorldLimits, [0.5, 2.5]) assert (r.YWorldLimits, [0.5, 2.5]) assert (r.ImageSize, [2, 2]) assert (r.PixelExtentInWorldX, 1) assert (r.PixelExtentInWorldY, 1) assert (r.ImageExtentInWorldX, 2) assert (r.ImageExtentInWorldY, 2) assert (r.XIntrinsicLimits, [0.5, 2.5]) assert (r.YIntrinsicLimits, [0.5, 2.5]) r.XWorldLimits = [-60, 13.33]; r.YWorldLimits = [-900.8, -560.26]; assert (r.XWorldLimits, [-60, 13.33]) assert (r.YWorldLimits, [-900.8, -560.26]) assert (r.PixelExtentInWorldX, 36.6650) assert (r.PixelExtentInWorldY, 170.27, 1e-5) assert (r.ImageExtentInWorldX, 73.33, 1e-5) assert (r.ImageExtentInWorldY, 340.54, 1e-5) assert (r.XIntrinsicLimits, [0.5, 2.5]) assert (r.YIntrinsicLimits, [0.5, 2.5]) ***** test r = imref2d; fail ("r.XWorldLimits = []", "") fail ("r.XWorldLimits = [1]", "") fail ("r.XWorldLimits = [j]", "") fail ("r.XWorldLimits = [1; 2]", "") fail ("r.YWorldLimits = []", "") fail ("r.YWorldLimits = [1]", "") fail ("r.YWorldLimits = [j]", "") fail ("r.YWorldLimits = [1; 2]", "") ***** assert (imref2d ([4, 2, 3]).ImageSize, [4, 2]); 32 tests, 32 passed, 0 known failure, 0 skipped [inst/@imref2d/intrinsicToWorld.m] >>>>> /<>/inst/@imref2d/intrinsicToWorld.m ***** error id=Octave:invalid-fun-call intrinsicToWorld (imref2d) ***** error id=Octave:invalid-fun-call intrinsicToWorld (imref2d, 1, 2, 3) ***** error id=Octave:expected-real intrinsicToWorld (imref2d, 1j, 2) ***** error id=Octave:expected-real intrinsicToWorld (imref2d, 1, 2j) ***** error id=Octave:invalid-input-arg intrinsicToWorld (imref2d, [1, 2], 3) ***** error id=Octave:invalid-input-arg intrinsicToWorld (imref2d, [1], [2, 3]) ***** test r = imref2d ([512, 512], 0.3125, 0.3125); xIntrinsic = [34, 442]; yIntrinsic = [172, 172]; [xWorld, yWorld] = intrinsicToWorld (r, xIntrinsic, yIntrinsic); assert (xWorld, [10.625, 138.125]) assert (yWorld, [53.75, 53.75]) ***** test [xWorld, yWorld] = intrinsicToWorld (imref2d, -5.3, -2.8); assert (xWorld, -5.3) assert (yWorld, -2.8) ***** test [xW, yW] = intrinsicToWorld (imref2d, [1, 2; 3, 4], [2, 3; 5, 9]); assert (xW, [1, 2; 3, 4]) assert (yW, [2, 3; 5, 9]) 9 tests, 9 passed, 0 known failure, 0 skipped [inst/@imref2d/worldToIntrinsic.m] >>>>> /<>/inst/@imref2d/worldToIntrinsic.m ***** error id=Octave:invalid-fun-call worldToIntrinsic (imref2d) ***** error id=Octave:invalid-fun-call worldToIntrinsic (imref2d, 1, 2, 3) ***** error id=Octave:expected-real worldToIntrinsic (imref2d, 1j, 2) ***** error id=Octave:expected-real worldToIntrinsic (imref2d, 1, 2j) ***** error id=Octave:invalid-input-arg worldToIntrinsic (imref2d, [1, 2], 3) ***** error id=Octave:invalid-input-arg worldToIntrinsic (imref2d, [1], [2, 3]) ***** test r = imref2d ([512, 512], 0.3125, 0.3125); xW = [38.44, 39.44, 38.44, -0.2]; yW = [68.75, 68.75, 75.75, -1]; [xI, yI] = worldToIntrinsic (r, xW, yW); assert (xI, [123.008, 126.208, 123.008, -0.64], 1e-6) assert (yI, [220, 220, 242.4, -3.2], 1e-6) 7 tests, 7 passed, 0 known failure, 0 skipped [inst/wiener2.m] >>>>> /<>/inst/wiener2.m ***** shared im0, im0_out, im0_n im0 = ones (5, 5); im0_out = ones (5, 5); im0_out(1:4:5, 1:4:5) = 0.67111; im0_out(1:4:5, 2:4) = 0.78074; im0_out(2:4, 1:4:5) = 0.78074; im0_n = 0.1462; ***** error wiener2 () ***** assert (wiener2 (im0)) ***** assert (wiener2 (im0, [2, 3])) ***** assert (wiener2 (im0, 0.5)) ***** assert (wiener2 (im0, [2, 3], 0.5)) ***** error wiener2 (im0, [2, 3], 0.5, 2) ***** test [im_out, noise_out] = wiener2 (im0); assert (size (im_out), size (im0)) assert (class (noise_out), "double") assert (numel (noise_out), 1) ***** assert (wiener2 (im0), im0_out, 1e-5) ***** assert (wiener2 (single (im0)), single (im0_out), 1e-5) ***** assert (class (wiener2 (single (im0))), "single") ***** assert (wiener2 (im2uint8 (im0)), im2uint8 (im0_out)) ***** assert (class (wiener2 (im2uint8 (im0))), "uint8") ***** assert (wiener2 (im2uint16 (im0)), im2uint16 (im0_out), 1) ***** assert (class (wiener2 (im2uint16 (im0))), "uint16") ***** assert (wiener2 (im2int16 (im0)), im2int16 (im0_out), 1) ***** assert (class (wiener2 (im2int16 (im0))), "int16") ***** test im_out = wiener2 (im0); assert (im_out, im0_out, 1e-4) [out, n] = wiener2 (im0); assert (out, im0_out, 1e-4) assert (n, im0_n, 1e-4) ***** test im1 = zeros (5, 5); im1(2:4, 2:4) = 1; im1_out = [ 0.1111 0.2222 0.2726 0.2222 0.1111; 0.2222 0.5911 0.7274 0.5911 0.2222; 0.2726 0.7274 1.0000 0.7274 0.2726; 0.2222 0.5911 0.7274 0.5911 0.2222; 0.1111 0.2222 0.2726 0.2222 0.1111]; im1_n = 0.1817; im1_out_55 = [ 0.1600 0.2400 0.2400 0.2400 0.1600; 0.2400 0.4667 0.4667 0.4667 0.2400; 0.2400 0.4667 0.4667 0.4667 0.2400; 0.2400 0.4667 0.4667 0.4667 0.2400; 0.1600 0.2400 0.2400 0.2400 0.1600]; im1_n_55 = 0.1920; im1_out_05 = [ 0.1111 0.2222 0.3333 0.2222 0.1111; 0.2222 0.4444 0.6667 0.4444 0.2222; 0.3333 0.6667 1.0000 0.6667 0.3333; 0.2222 0.4444 0.6667 0.4444 0.2222; 0.1111 0.2222 0.3333 0.2222 0.1111]; im1_out_55_05 = [ 0.1600 0.2400 0.2400 0.2400 0.1600; 0.2400 0.3600 0.3600 0.3600 0.2400; 0.2400 0.3600 0.3600 0.3600 0.2400; 0.2400 0.3600 0.3600 0.3600 0.2400; 0.1600 0.2400 0.2400 0.2400 0.1600]; im1_out_35 = [ 0.1333 0.2000 0.2000 0.2000 0.1333; 0.2642 0.5156 0.5156 0.5156 0.2642; 0.3230 0.6770 0.6770 0.6770 0.3230; 0.2642 0.5156 0.5156 0.5156 0.2642; 0.1333 0.2000 0.2000 0.2000 0.1333]; im1_out_51 = [ 0 0.2400 0.2400 0.2400 0 0 0.7600 0.7600 0.7600 0 0 0.7600 0.7600 0.7600 0 0 0.7600 0.7600 0.7600 0 0 0.2400 0.2400 0.2400 0]; assert (wiener2 (im1), im1_out, 1e-4) [out, n] = wiener2 (im1); assert (out, im1_out, 1e-4) assert (n, im1_n, 1e-4) assert (wiener2 (im1, [5, 5]), im1_out_55, 1e-4) [out, n] = wiener2 (im1, [5, 5]); assert (out, im1_out_55, 1e-4) assert (n, im1_n_55, 1e-4) assert (wiener2 (im1, 0.5), im1_out_05, 1e-4) assert (wiener2 (im1, [5, 5], 0.5), im1_out_55_05, 1e-4) assert (wiener2 (im1, [3, 5]), im1_out_35, 1e-4) assert (wiener2 (im1, [5, 1]), im1_out_51, 1e-4) ***** test ## Tests for even-sized neighbourhood im1 = zeros (5, 5); im1(2:4, 2:4) = 1; im1_out_23 = [ 0.1667 0.2233 0.2978 0.2233 0.1667 0.2233 0.7767 1.0000 0.7767 0.2233 0.2233 0.7767 1.0000 0.7767 0.2233 0.1667 0.5533 0.7022 0.5533 0.1667 0 0 0 0 0]; im1_out_43 = [ 0.1667 0.2813 0.3750 0.2813 0.1667 0.2500 0.6250 0.7500 0.6250 0.2500 0.2500 0.6250 0.7500 0.6250 0.2500 0.1667 0.4375 0.6250 0.4375 0.1667 0.0833 0.1667 0.2500 0.1667 0.0833]; im1_out_44 = [ 0.2500 0.3018 0.3018 0.2500 0.1250 0.3018 0.6647 0.6647 0.4971 0.1875 0.3018 0.6647 0.6647 0.4971 0.1875 0.2500 0.4971 0.4971 0.2500 0.1250 0.1250 0.1875 0.1875 0.1250 0.0625]; assert (wiener2 (im1, [2, 3]), im1_out_23, 1e-4) assert (wiener2 (im1, [4, 3]), im1_out_43, 1e-4) assert (wiener2 (im1, [4, 4]), im1_out_44, 1e-4) ***** test im2 = zeros (5, 5); im2(2:4, 2:4) = 70; im2(3, 3) = 90; im2 = uint8 (im2); im2_out = uint8 ([ 8 16 20 16 8 ; 16 46 54 46 16; 20 54 72 54 20; 16 46 54 46 16; 8 16 20 16 8 ]); im2_n = 0.0146; im2_out_55 = uint8 ([ 12 18 18 18 12; 18 32 32 32 18; 18 32 35 32 18; 18 32 32 32 18; 12 18 18 18 12]); im2_n_55 = 0.0160; im2_out_03 = uint8 ([ 8 16 23 16 8 ; 16 33 49 33 16; 23 49 72 49 23; 16 33 49 33 16; 8 16 23 16 8 ]); im2_n_03 = 0.3000; [out, n] = wiener2 (im2); assert (out, im2_out) assert (n, im2_n, 1e-4) [out, n] = wiener2 (im2, [5, 5]); assert (out, im2_out_55) assert (n, im2_n_55, 1e-4) [out, n] = wiener2 (im2, 0.3); assert (out, im2_out_03) assert (n, im2_n_03, 1e-4) ***** test im3 = zeros (5, 5); im3(2:4, 2:4) = 70; im3(3, 3) = 20; im3 = uint8 (im3); im3_out = uint8 ([ 8 16 19 16 8 ; 16 32 47 32 16; 19 47 64 47 19; 16 32 47 32 16; 8 16 19 16 8 ]); im3_n = 0.0134; [out, n] = wiener2 (im3); assert (out, im3_out) assert (n, im3_n, 1e-4) ***** test im4 = 50 .* ones (5, 5); im4(:, 1) = 200; im4(:, 2) = 100; im4 = uint8 (im4); im4_out = uint8 ([ 148 90 44 33 22; 161 111 67 50 33; 161 111 67 50 33; 161 111 67 50 33; 148 90 44 33 22]); im4_n = 0.0398; [out, n] = wiener2 (im4); assert (out, im4_out) assert (n, im4_n, 1e-4) ***** test im5 = zeros (100, 100); im5(30, 30) = 1; im5_out_center = [ 0 0 0 0 0 0 0; 0 0 0 0 0 0 0; 0 0 0.0001 0.0001 0.0001 0 0; 0 0 0.0001 0.9992 0.0001 0 0; 0 0 0.0001 0.0001 0.0001 0 0; 0 0 0 0 0 0 0; 0 0 0 0 0 0 0]; im5_n = 8.8889e-5; [out, n] = wiener2 (im5); out_center = out(27:33, 27:33); assert (out_center, im5_out_center, 1e-4) assert (n, im5_n, 1e-4) ***** test im = zeros (100, 10, 10); im(5, 5, 5) = 1; [out, n] = wiener2 (im, [3 3]); expected_out = im; expected_out(4:6,4:6,5) = [ 0.0001 0.0001 0.0001 0.0001 0.9992 0.0001 0.0001 0.0001 0.0001]; assert (out, expected_out, eps) [out, n] = wiener2 (im, [3 3 3]); expected_out = im; expected_out(4:6,4:6,4:6) = 0.0001; expected_out(5,5,5) = 0.9974; assert (out, expected_out, eps) ## Default in ND, use nhood 3 even for singleton dimensions. assert (wiener2 (im), wiener2 (im, [3 3 3])) im = reshape (im, [100 10 1 10]); expected_out = im; expected_out(4:6,4:6,1,4:6) = 0.0001/3; expected_out(5,5,1,5) = 1-(80*(0.0001/3)); assert (wiener2 (im), wiener2 (im, [3 3 3 3])) assert (wiener2 (im), expected_out, eps) expected_out = im; expected_out(4:6,4:6,1,4:6) = 0.0001; expected_out(5,5,1,5) = 0.9974; assert (wiener2 (im, [3 3 1 3]), expected_out, eps) ***** test expected = [0.2222 0.3926 0.3926 0.3926 0.2222]; assert (wiener2 (ones (1, 5)), expected, .0001) ***** assert (wiener2 ([]), []) ***** assert (wiener2 (logical ([0 0; 1 1])), true (2, 2)) ***** demo I = phantom (); J = imnoise (I, "gaussian", 0, 0.02); figure, imshow (J); title ("Image with added Gaussian noise"); K = wiener2 (J, [5 5]); figure, imshow (K); title ("Image with noise reduced by wiener2 filtering"); 27 tests, 27 passed, 0 known failure, 0 skipped [inst/imfindcircles.m] >>>>> /<>/inst/imfindcircles.m ***** shared im0, rgb0, im1 im0 = [0 0 0 0 0; 0 1 2 1 0; 0 2 5 2 0; 0 1 2 1 0; 0 0 0 0 0]; rgb0 = cat (3, im0, 3.*im0, 2.*im0); im1 = zeros (20); im1(2:6, 5:9) = 1; im1(13:19, 13:19) = 1; ***** function image = circlesimage (numx, numy, centersx, centersy, rs, values) ## create an image with circles of given parameters num = length (centersx); image = zeros (numy, numx); [indy, indx] = meshgrid (1:numx, 1:numy); for n = 1:num centerx = centersx(n); centery = centersy(n); r = rs(n); value = values(n); dist_squared = (indx - centerx).^ 2 + (indy - centery).^ 2; image(dist_squared <= (r-0.5)^2) = value; endfor ***** endfunction ***** error imfindcircles () ***** error imfindcircles (im0) ***** error imfindcircles (im0, [1 2 3]) ***** error imfindcircles (im0, -3) ***** error imfindcircles (im0, 4+2*i) ***** error imfindcircles (ones (5,5,4), 2) ***** error imfindcircles (ones (5,5,5,5), 2) ***** error imfindcircles (im0, [2 1]) ***** error imfindcircles (im0, 2, "rubbish") ***** error imfindcircles (im0, 2, "more", "rubbish") ***** error imfindcircles (im0, 2, "ObjectPolarity", "rubbish") ***** error imfindcircles (im0, 2, "ObjectPolarity", 5) ***** error imfindcircles (im0, 2, "ObjectPolarity") ***** error imfindcircles (im0, 2, "Method", "rubbish") ***** error imfindcircles (im0, 2, "Method", 5) ***** error imfindcircles (im0, 2, "Method") ***** error imfindcircles (im0, 2, "Sensitivity", "rubbish") ***** error imfindcircles (im0, 2, "Sensitivity") ***** error imfindcircles (im0, 2, "Sensitivity", -0.1) ***** error imfindcircles (im0, 2, "Sensitivity", 1.1) ***** error imfindcircles (im0, 2, "Sensitivity", [0.1 0.2]) ***** error imfindcircles (im0, 2, "EdgeThreshold", "rubbish") ***** error imfindcircles (im0, 2, "EdgeThreshold") ***** error imfindcircles (im0, 2, "EdgeThreshold", -0.1) ***** error imfindcircles (im0, 2, "EdgeThreshold", 1.1) ***** error imfindcircles (im0, 2, "EdgeThreshold", [0.1 0.2]) ***** error imfindcircles (im0, 2, "EdgeThreshold", 0.1, "ObjectPolarity", "bright", "Sensitivity", 0.3, "Method", "PhaseCode", "more", 1) ***** test # none of this should fail imfindcircles (im0, 2); imfindcircles (im0, [1 2]); imfindcircles (logical (im0), 2); imfindcircles (logical (im0), [1 2]); imfindcircles (rgb0, 2); imfindcircles (rgb0, [1 2]); imfindcircles (uint8 (im0), 2); imfindcircles (uint8 (im0), [1 2]); imfindcircles (im0, 2, "ObjectPolarity", "bright"); imfindcircles (im0, 2, "ObjectPolarity", "dark"); imfindcircles (im0, 2, "Method", "PhaseCode"); imfindcircles (im0, 2, "Sensitivity", 0.5); imfindcircles (im0, 2, "EdgeThreshold", 0.5); imfindcircles (im0, 2, "ObjectPolarity", "bright", "Method", "PhaseCode"); imfindcircles (im0, 2, "ObjectPolarity", "bright", "Sensitivity", 0.3, "Method", "PhaseCode"); imfindcircles (im0, 2, "EdgeThreshold", 0.1, "ObjectPolarity", "bright", "Sensitivity", 0.3, "Method", "PhaseCode"); ***** test centers = imfindcircles (im1, 2); assert (size (centers, 2), 2) assert (class (centers), "double") ***** test [centers, radii] = imfindcircles (im1, [1 5]); assert (size (centers, 2), 2) assert (size (radii, 2), 1) assert (class (radii), "double") ***** test [centers, radii, strengths] = imfindcircles (im1, [1 5]); assert (size (strengths, 2), 1) assert (class (strengths), "double") ***** error [a b c d] = imfindcircles (im0, 2); ***** test ## sub-pixel accuracy of circle center xs = [95.7]; ys = [101.1]; rs = [50]; vals = [0.5]; im = circlesimage (200, 200, xs, ys, rs, vals); filt = ones (3) ./ 9; im = imfilter (im, filt); [centers, radii] = imfindcircles (im, [40 60]); assert (centers, [101.1, 95.7], 0.1); assert (radii, 50, 1); ***** test ## specificity to circular shapes and strengths output value xs = [100 202]; ys = [101, 203]; rs = [40, 41]; vals = [0.8, 0.9]; im = circlesimage (300, 300, xs, ys, rs, vals); filt = ones (3) ./ 9; im = imfilter (im, filt); im(30:170, 50:100) = 0; im(20:120, 180:280) = 1; [centers, radii, strengths] = imfindcircles (im, [30 50], "Sensitivity", 0.9); assert (size (centers), [2 2]); assert (centers, [203, 202; 101, 100], 1.5); assert (radii, [40; 41], 2.5); assert (strengths(1) / strengths(2) > 1.8, true); ***** test # radius range parameter & dark circles xs = [50, 420, 180]; ys = [80, 100, 200]; rs = [35, 30, 40]; vals = [0.7, 0.8, 0.9]; im = circlesimage (300, 500, xs, ys, rs, vals); filt = ones (3) ./ 9; im = imfilter (im, filt); [centers1, radii1] = imfindcircles (im, [28 36]); [centers2, radii2] = imfindcircles (im, [28 42]); assert (size (centers1), [2 2]); assert (centers1, [100 420; 80 50], 0.2); assert (radii1, [30; 35], 2); assert (size (centers2), [3 2]); im_dark = 1-im; [centers_dark, radii_dark, strengths_dark] = imfindcircles (im_dark, [25 42], "ObjectPolarity", "dark"); assert (sortrows (centers_dark), [80 50; 100 420; 200 180], 0.2); assert (sortrows (radii_dark), [30; 35; 40], 1); ***** test # ability to find circles with big radius xs = [111, 555, 341]; ys = [222, 401, 161]; rs = [45, 50, 150]; vals = [0.6, 0.8, 0.7]; im = circlesimage (400, 701, xs, ys, rs, vals); [centers, radii] = imfindcircles (im, [140 160], "Sensitivity", 0.98); assert (centers, [161, 341], 0.2); assert (radii, 150, 1); ***** test # overlapping circles xs = [105, 155]; ys = [202, 221]; rs = [45, 50]; vals = [0.5, 0.8]; im = circlesimage(385, 422, xs, ys, rs, vals); filt = ones (3) ./ 9; im = imfilter (im, filt); [centers, radii] = imfindcircles (im, [30 80]); assert (centers, [221, 155; 202, 105], 0.5); assert (radii, [50; 45], 1); ***** test # overlapping circles, only 10 pixels apart xs = [155, 155]; ys = [175, 157]; rs = [50, 50]; vals = [0.7, 0.8]; im = circlesimage (300, 300, xs, ys, rs, vals); filt = ones (3) ./ 9; im = imfilter (im, filt); [centers, radii] = imfindcircles (im, [30 80], "Sensitivity", 0.95); assert (centers, [157, 155; 175, 155], 1); assert (radii, [50; 50], 1); ***** test # edge threshold parameter xs = [100 202]; ys = [101, 203]; rs = [40, 41]; vals = [0.1, 0.9]; im = circlesimage (300, 300, xs, ys, rs, vals); filt = ones (3) ./ 9; im= imfilter (im, filt); [centers_auto, radii_auto] = imfindcircles (im, [30 50]); [centers_0, radii_0] = imfindcircles (im, [30 50], "EdgeThreshold", 0); [centers_05, radii_05] = imfindcircles (im, [30 50], "EdgeThreshold", 0.5); assert (centers_auto, [203, 202], 0.2); assert (radii_auto, 41, 1); assert (centers_0, [101, 100; 203, 202], 0.2); assert (radii_0, [40; 41], 1); assert (centers_05, [203, 202], 0.2); assert (radii_05, 41, 1); ***** demo ## First generate an input image: model = [ 1.0 0.2 0.2 0.2 0.5 0 1.0 0.3 0.3 -0.1 -0.2 0 -0.5 0.7 0.7 -0.5 0.5 0]; im = phantom (model); im(170:230,170:230) = 1; im = imfilter (im, fspecial ("average", 3)); im = imnoise (im, "salt & pepper"); imshow (im); ## Find and show circles with radius between 20 and 50: [centers, radii] = imfindcircles (im, [20 50]); viscircles (centers, radii) title ("found circles in red") 39 tests, 39 passed, 0 known failure, 0 skipped [inst/stdfilt.m] >>>>> /<>/inst/stdfilt.m ***** test im = stdfilt (ones (5)); assert (im, zeros (5)) ***** test A = zeros (3,3); B = ones (3,3); C = [1 1 1; 2 2 2; 3 3 3]; D = C'; E = ones (3,3); E(2,2) = 2; F = 3 .* ones (3,3); F(2,2) = 1; G = [-1 2 7; -5 2 8; -7 pi 9]; H = [5 2 8; 1 -3 1; 5 1 0]; A_out = [0 0 0; 0 0 0; 0 0 0]; B_out = [0 0 0; 0 0 0; 0 0 0]; C_out = repmat ([std([1 1 1 1 1 1 2 2 2]) std([1 1 1 2 2 2 3 3 3]) std([2 2 2 3 3 3 3 3 3])], [1 3]); D_out = C_out'; E_out = (1/3) .* ones (3,3); F_out = (2/3) .* ones (3,3); G_out = [std([-1 -1 2 -1 -1 2 -5 -5 2]), std([-1 2 7 -1 2 7 -5 2 8]), std([2 7 7 2 7 7 2 8 8]); std([-1 -1 2 -5 -5 2 -7 -7 pi]), std([-1 2 7 -5 2 8 -7 pi 9]), std([2 7 7 2 8 8 pi 9 9]); std([-5 -5 2 -7 -7 pi -7 -7 pi]), std([-5 2 8 -7 pi 9 -7 pi 9]), std([2 8 8 pi 9 9 pi 9 9])]; H_out = [std([5 5 2 5 5 2 1 1 -3]), std([5 2 8 5 2 8 1 -3 1]), std([2 8 8 2 8 8 -3 1 1]); std([5 5 2 1 1 -3 5 5 1]), std([5 2 8 1 -3 1 5 1 0]), std([2 8 8 -3 1 1 1 0 0]); std([1 1 -3 5 5 1 5 5 1]), std([1 -3 1 5 1 0 5 1 0]), std([-3 1 1 1 0 0 1 0 0])]; assert (stdfilt (A), A_out) assert (stdfilt (B), B_out) assert (stdfilt (C), C_out, 4*eps) assert (stdfilt (D), D_out, 4*eps) assert (stdfilt (E), E_out, 4*eps) assert (stdfilt (F), F_out, 4*eps) assert (stdfilt (G), G_out, 4*eps) assert (stdfilt (H), H_out, 4*eps) im = stdfilt (ones (5, 'logical')); assert (im, zeros (5)) im = stdfilt (ones (5, 'uint8')); assert (im, zeros (5)) assert (stdfilt (int8(H), H_out, 4*eps)) assert (stdfilt (uint8(H), H_out, 4*eps)) assert (stdfilt (int16(H), H_out, 4*eps)) assert (stdfilt (uint16(H), H_out, 4*eps)) assert (stdfilt (int32(H), H_out, 4*eps)) assert (stdfilt (uint32(H), H_out, 4*eps)) assert (stdfilt (int64(H), H_out, 4*eps)) assert (stdfilt (uint64(H), H_out, 4*eps)) assert (stdfilt (single(H), H_out, 4*eps)) 2 tests, 2 passed, 0 known failure, 0 skipped [inst/checkerboard.m] >>>>> /<>/inst/checkerboard.m ***** demo ## Simplest case, default checkerboard size: ## 8 by 8 checkerboard, with squares 10 pixel wide board = checkerboard (); imshow (board) ***** demo ## Simplest case, default checkerboard size: ## 8 by 16 checkerboard, with squares 5 pixel wide board = checkerboard (5, 4, 8); imshow (board) ***** assert (checkerboard (0), zeros (0, 0)) ***** assert (checkerboard (0, 3), zeros (0, 0)) ***** assert (checkerboard (0, 2, 4), zeros (0, 0)) ***** assert (checkerboard (0, 2, 4, 3), zeros (0, 0, 0)) ***** assert (checkerboard (0, 2, 4, 3, 2), zeros (0, 0, 0, 0)) ***** assert (checkerboard (1, 4, 2, 3, 0), zeros (8, 4, 6, 0)) ***** assert (checkerboard (1, 4, 0, 3, 2), zeros (8, 0, 6, 4)) ***** assert (checkerboard (2, 4, 0, 3, 2), zeros (16, 0, 12, 8)) ***** test out = zeros (80); i1 = ((1:20:80) + (0:9)')(:); i2 = ((11:20:80) + (0:9)')(:); out(i1, i2) = 1; out(i2, i1) = 1; i1r = ((41:20:80) + (0:9)')(:); i2r = ((51:20:80) + (0:9)')(:); out(i2, i1r) = 0.7; out(i1, i2r) = 0.7; assert (checkerboard (), out) assert (checkerboard (10, 4, 4), out) assert (checkerboard (10, [4 4]), out) assert (checkerboard (10, [4; 4]), out) ***** test out = zeros (8); out(2:2:8, 1:2:8) = 1; out(1:2:8, 2:2:8) = 1; out(1:2:8, 6:2:8) = 0.7; out(2:2:8, 5:2:8) = 0.7; assert (checkerboard (1), out) assert (checkerboard (1, 4), out) assert (checkerboard (1, 4, 4), out) assert (checkerboard (1, [4 4]), out) ***** test out = zeros (10); out(2:2:10, 1:2:10) = 1; out(1:2:10, 2:2:10) = 1; out(1:2:10, 6:2:10) = 0.7; out(2:2:10, 7:2:10) = 0.7; assert (checkerboard (1, 5), out) assert (checkerboard (1, 5, 5), out) assert (checkerboard (1, [5 5]), out) ***** test out = zeros (20); out([1:4:20 2:4:20], [3:4:20 4:4:20]) = 1; out([3:4:20 4:4:20], [1:4:20 2:4:20]) = 1; out([1:4:20 2:4:20], [11:4:20 12:4:20]) = 0.7; out([3:4:20 4:4:20], [13:4:20 14:4:20]) = 0.7; assert (checkerboard (2, 5), out) assert (checkerboard (2, 5, 5), out) assert (checkerboard (2, [5 5]), out) ***** test out = zeros (4, 4, 4); out([1 3], 1, [1 3]) = 1; out([2 4], 2, [1 3]) = 1; out([1 3], 2, [2 4]) = 1; out([2 4], 1, [2 4]) = 1; out([1 3], 3, [1 3]) = 0.7; out([2 4], 4, [1 3]) = 0.7; out([1 3], 4, [2 4]) = 0.7; out([2 4], 3, [2 4]) = 0.7; assert (checkerboard (1, [2 2 2]), out) assert (checkerboard (1, 2, 2, 2), out) ***** test out = zeros (8, 8, 8); out([1 2 5 6], [1 2], [1 2 5 6]) = 1; out([3 4 7 8], [3 4], [1 2 5 6]) = 1; out([1 2 5 6], [3 4], [3 4 7 8]) = 1; out([3 4 7 8], [1 2], [3 4 7 8]) = 1; out([1 2 5 6], [5 6], [1 2 5 6]) = 0.7; out([3 4 7 8], [7 8], [1 2 5 6]) = 0.7; out([1 2 5 6], [7 8], [3 4 7 8]) = 0.7; out([3 4 7 8], [5 6], [3 4 7 8]) = 0.7; assert (checkerboard (2, [2 2 2]), out) assert (checkerboard (2, 2, 2, 2), out) 14 tests, 14 passed, 0 known failure, 0 skipped [inst/fftconv2.m] >>>>> /<>/inst/fftconv2.m ***** xtest a = repmat (1:10, 5); b = repmat (10:-1:3, 7); assert (fftconv2 (a, b), conv2 (a, b), 1.8e4*eps) assert (fftconv2 (b, a), conv2 (b, a), 1.8e4*eps) assert (fftconv2 (a, b, "full"), conv2 (a, b, "full"), 1.8e4*eps) assert (fftconv2 (b, a, "full"), conv2 (b, a, "full"), 1.8e4*eps) assert (fftconv2 (a, b, "same"), conv2 (a, b, "same"), 1.8e4*eps) assert (fftconv2 (b, a, "same"), conv2 (b, a, "same"), 1.8e4*eps) assert (isempty (fftconv2 (a, b, "valid"))); assert (fftconv2 (b, a, "valid"), conv2 (b, a, "valid"), 1e4*eps) ***** test x = 1:4; y = 4:-1:1; a = repmat(1:10, 5); assert (fftconv2 (x, y, a), conv2 (x, y, a), 1e4*eps) assert (fftconv2 (x, y, a, "full"), conv2 (x, y, a, "full"), 1e4*eps) assert (fftconv2 (x, y, a, "same"), conv2 (x, y, a, "same"), 1e4*eps) assert (fftconv2 (x, y, a, "valid"), conv2 (x, y, a, "valid"), 1e4*eps) ***** demo ## Draw a cross z = zeros (101, 101); z(50, :) = 1; z(:, 50) = 1; subplot (1, 3, 1) imshow (z); title ("Original thin cross") ## Draw a sinc blob b = getheight (strel ("ball", 10, 1)); subplot (1, 3, 2) imshow (b); title ("Sync blob") ## Convolve the cross with the blob fc = real (fftconv2 (z, b, "same")); subplot (1, 3, 3) imshow (fc, [min(fc(:)) max(fc(:))]) title ("Convolution in the frequency domain") 2 tests, 2 passed, 0 known failure, 0 skipped [inst/ycbcr2rgb.m] >>>>> /<>/inst/ycbcr2rgb.m ***** assert (ycbcr2rgb (rgb2ycbcr (jet (10))), jet (10), 0.00001); ***** assert (class (ycbcr2rgb (single (rand (5, 5, 3)))), "single") 2 tests, 2 passed, 0 known failure, 0 skipped [inst/imimposemin.m] >>>>> /<>/inst/imimposemin.m ***** shared im0, bw0, out0, out0_4 im0 = uint8 ([5 5 5 5 5; 5 4 3 4 5; 5 3 0 3 5; 5 4 3 4 5; 5 5 5 5 5]); bw0 = false (5); bw0(4, 4) = true; out0 = im0 + 1; out0(4, 4) = 0; out0_4 = out0; out0_4(3, 3) = 4; ***** error imimposemin () ***** error imimposemin (im0) ***** error imimposemin ("hello", bw0) ***** error imimposemin (i.*im0, bw0) ***** error imimposemin (sparse (im0), bw0) ***** error imimposemin (im0, ones (2)) ***** error imimposemin (im0, 'hello') ***** error imimposemin (im0, i .* double (bw0)) ***** error imimposemin (im0, sparse (bw0)) ***** error imimposemin (im0, bw0, 'hello') ***** error imimposemin (im0, bw0, 3) ***** assert (imimposemin (im0, bw0), out0) ***** assert (imimposemin (im0, bw0, 8), out0) ***** assert (imimposemin (im0, bw0, 4), out0_4) ***** assert (imimposemin (im0, bw0, true (3)), out0) ***** test out = imimposemin (im0, bw0); assert (size (out), size (im0)) assert (class (out), "uint8") ***** test out = imimposemin (double (im0), bw0); assert (size (out), size (im0)) assert (class (out), "double") ***** test out = imimposemin (single (im0), bw0); assert (size (out), size (im0)) assert (class (out), "single") ***** test out = imimposemin (uint16 (im0), bw0); assert (size (out), size (im0)) assert (class (out), "uint16") ***** test im = cat (3, im0, im0, im0, im0); bw = cat (3, bw0, bw0, bw0, bw0); out = imimposemin (im, bw); assert (size (out), size (im)) ***** test expected_double = double (im0); expected_double += 0.005; expected_double(4, 4) = -inf; out = imimposemin (double (im0), bw0); assert (out, expected_double, eps) ***** test im = uint8 (10 .* ones (10)); im(6:8, 6:8) = 2; im(2:4, 2:4) = 7; im(3, 3) = 5; im(2, 9) = 9; im(3, 8) = 9; im(9, 2) = 9; im(8, 3) = 9; bw = false (10); bw(3, 3) = true; bw(6:8, 6:8) = true; expected = uint8 (11 .* ones(10)); expected(2:4, 2:4) = 8; expected(3, 3) = 0; expected(6:8, 6:8) = 0; expected_double = double (expected); expected_double -= 0.992; expected_double (expected_double < 0) = -inf; out = imimposemin (im, bw); assert (out, expected, eps) out = imimposemin (double (im), bw); assert (out, expected_double, eps) 22 tests, 22 passed, 0 known failure, 0 skipped [inst/medfilt2.m] >>>>> /<>/inst/medfilt2.m ***** shared b, f b = [ 0 1 2 3 1 8 12 12 4 20 24 21 7 22 25 18]; f = [ 0 1 2 0 1 4 12 3 4 12 20 12 0 7 20 0]; ***** assert (medfilt2 (b), f); f = [ 0 1 2 3 1 8 12 12 4 20 24 18 4 20 24 18]; ***** assert (medfilt2 (b, true (3, 1)), f); ***** assert (medfilt2 (b, [3 1]), f); f = [ 1 8 10 10 1 8 12 12 4 20 24 18 7 20 24 18]; ***** assert (medfilt2 (b, [3 1], 10), f); ***** assert (medfilt2 (b, 10, [3 1]), f); f = [ 0.5 4.5 7.0 7.5 2.5 14.0 18.0 15.0 2.5 14.0 18.0 15.0 2.0 10.0 12.0 9.0]; ***** assert (medfilt2 (b, true (4, 1)), f); ***** assert (medfilt2 (b, [4 1]), f); ***** test A = zeros (3, 3); B = ones (3, 3); C = [1 1 1; 2 2 2; 3 3 3]; D = C'; E = ones (3, 3); E(2,2) = 2; F = 3 .* ones (3, 3); F(2,2) = 1; G = [-1 2 7; -5 2 8; -7 pi 9]; H = [5 2 8; 1 -3 1; 5 1 0]; A_out = [0 0 0; 0 0 0; 0 0 0]; B_out = [0 1 0; 1 1 1; 0 1 0]; C_out = [0 1 0; 1 2 1; 0 2 0]; D_out = [0 1 0; 1 2 2; 0 1 0]; E_out = [0 1 0; 1 1 1; 0 1 0]; F_out = [0 3 0; 3 3 3; 0 3 0]; G_out = [0 0 0; 0 2 2; 0 0 0]; H_out = [0 1 0; 1 1 0; 0 0 0]; assert (medfilt2 (A), A_out); assert (medfilt2 (B), B_out); assert (medfilt2 (C), C_out); assert (medfilt2 (D), D_out); assert (medfilt2 (E), E_out); assert (medfilt2 (F), F_out); assert (medfilt2 (G), G_out); assert (medfilt2 (H), H_out); 8 tests, 8 passed, 0 known failure, 0 skipped [inst/impyramid.m] >>>>> /<>/inst/impyramid.m ***** xtest ## bug #51979 (results are not matlab compatible) in = [116 227 153 69 146 194 59 130 139 106 2 47 137 249 90 75 16 24 158 44 155 68 46 84 166 156 69 204 32 152 71 221 137 230 210 153 192 115 30 118 107 143 108 52 51 73 101 21 175 90 54 158 143 77 26 168 113 229 165 225 9 47 133 135 130 207 236 43 19 73]; reduced = [ 114 139 131 103 111 97 122 141 111 100 103 123 112 123 122 47 107 134 153 94]; expanded = [ 115 154 185 178 150 122 105 116 138 159 158 117 78 86 112 129 133 120 103 69 98 128 141 146 152 152 139 125 127 121 87 55 58 81 113 131 112 84 40 54 74 100 131 167 184 157 119 104 92 64 41 44 66 100 121 103 74 76 69 65 75 97 130 153 148 131 122 108 80 61 79 103 105 98 97 98 120 105 88 77 78 96 121 143 155 154 140 112 98 124 143 109 74 91 123 117 129 134 119 107 125 153 173 180 172 156 143 138 146 140 96 60 83 122 99 139 170 157 139 156 181 188 180 164 151 154 156 140 112 81 65 84 110 101 136 163 153 133 132 138 136 130 122 120 130 133 108 82 86 99 104 104 103 126 143 136 116 97 81 73 73 82 94 105 105 87 78 108 138 133 116 90 116 139 139 122 96 69 52 53 80 109 114 111 116 128 148 163 164 160 66 99 131 140 131 109 83 62 62 102 142 144 138 154 169 164 157 169 184 41 68 99 121 130 122 107 92 95 133 173 182 172 156 135 114 105 121 142 21 38 64 98 124 131 127 123 129 160 194 212 199 144 82 52 48 65 85]; assert (impyramid (uint8 (in), "reduce"), uint8 (reduced)) assert (impyramid (uint8 (in), "expand"), uint8 (expanded)) !!!!! known failure ASSERT errors for: assert (impyramid (uint8 (in), "reduce"),uint8 (reduced)) Location | Observed | Expected | Reason (2,4) 110 111 Abs err 0 exceeds tol 0 by 0 (2,5) 99 100 Abs err 0 exceeds tol 0 by 0 (3,5) 121 122 Abs err 0 exceeds tol 0 by 0 ***** test in = randi ([0 255], [40 39 3 5], "uint8"); red = impyramid (in, "reduce"); for p = 1:3 for n = 1:5 assert (red(:,:,p,n), impyramid (in(:,:,p,n), "reduce")) endfor endfor exp = impyramid (in, "expand"); for p = 1:3 for n = 1:5 assert (exp(:,:,p,n), impyramid (in(:,:,p,n), "expand")) endfor endfor ***** xtest ## bug #51979 (results are not matlab compatible) in = repmat (uint8 (255), [10 10]); assert (impyramid (in, "reduce"), repmat (uint8 (255), [5 5])) assert (impyramid (in, "expand"), repmat (uint8 (255), [19 19])) !!!!! known failure ASSERT errors for: assert (impyramid (in, "expand"),repmat (uint8 (255), [19, 19])) Location | Observed | Expected | Reason (1,1) 195 255 Abs err 0 exceeds tol 0 by 0 (2,1) 223 255 Abs err 0 exceeds tol 0 by 0 (3,1) 223 255 Abs err 0 exceeds tol 0 by 0 (4,1) 223 255 Abs err 0 exceeds tol 0 by 0 (5,1) 223 255 Abs err 0 exceeds tol 0 by 0 (6,1) 223 255 Abs err 0 exceeds tol 0 by 0 (7,1) 223 255 Abs err 0 exceeds tol 0 by 0 (8,1) 223 255 Abs err 0 exceeds tol 0 by 0 (9,1) 223 255 Abs err 0 exceeds tol 0 by 0 (10,1) 223 255 Abs err 0 exceeds tol 0 by 0 (11,1) 223 255 Abs err 0 exceeds tol 0 by 0 (12,1) 223 255 Abs err 0 exceeds tol 0 by 0 (13,1) 223 255 Abs err 0 exceeds tol 0 by 0 (14,1) 223 255 Abs err 0 exceeds tol 0 by 0 (15,1) 223 255 Abs err 0 exceeds tol 0 by 0 (16,1) 223 255 Abs err 0 exceeds tol 0 by 0 (17,1) 223 255 Abs err 0 exceeds tol 0 by 0 (18,1) 223 255 Abs err 0 exceeds tol 0 by 0 (19,1) 195 255 Abs err 0 exceeds tol 0 by 0 (1,2) 223 255 Abs err 0 exceeds tol 0 by 0 (19,2) 223 255 Abs err 0 exceeds tol 0 by 0 (1,3) 223 255 Abs err 0 exceeds tol 0 by 0 (19,3) 223 255 Abs err 0 exceeds tol 0 by 0 (1,4) 223 255 Abs err 0 exceeds tol 0 by 0 (19,4) 223 255 Abs err 0 exceeds tol 0 by 0 (1,5) 223 255 Abs err 0 exceeds tol 0 by 0 (19,5) 223 255 Abs err 0 exceeds tol 0 by 0 (1,6) 223 255 Abs err 0 exceeds tol 0 by 0 (19,6) 223 255 Abs err 0 exceeds tol 0 by 0 (1,7) 223 255 Abs err 0 exceeds tol 0 by 0 (19,7) 223 255 Abs err 0 exceeds tol 0 by 0 (1,8) 223 255 Abs err 0 exceeds tol 0 by 0 (19,8) 223 255 Abs err 0 exceeds tol 0 by 0 (1,9) 223 255 Abs err 0 exceeds tol 0 by 0 (19,9) 223 255 Abs err 0 exceeds tol 0 by 0 (1,10) 223 255 Abs err 0 exceeds tol 0 by 0 (19,10) 223 255 Abs err 0 exceeds tol 0 by 0 (1,11) 223 255 Abs err 0 exceeds tol 0 by 0 (19,11) 223 255 Abs err 0 exceeds tol 0 by 0 (1,12) 223 255 Abs err 0 exceeds tol 0 by 0 (19,12) 223 255 Abs err 0 exceeds tol 0 by 0 (1,13) 223 255 Abs err 0 exceeds tol 0 by 0 (19,13) 223 255 Abs err 0 exceeds tol 0 by 0 (1,14) 223 255 Abs err 0 exceeds tol 0 by 0 (19,14) 223 255 Abs err 0 exceeds tol 0 by 0 (1,15) 223 255 Abs err 0 exceeds tol 0 by 0 (19,15) 223 255 Abs err 0 exceeds tol 0 by 0 (1,16) 223 255 Abs err 0 exceeds tol 0 by 0 (19,16) 223 255 Abs err 0 exceeds tol 0 by 0 (1,17) 223 255 Abs err 0 exceeds tol 0 by 0 (19,17) 223 255 Abs err 0 exceeds tol 0 by 0 (1,18) 223 255 Abs err 0 exceeds tol 0 by 0 (19,18) 223 255 Abs err 0 exceeds tol 0 by 0 (1,19) 195 255 Abs err 0 exceeds tol 0 by 0 (2,19) 223 255 Abs err 0 exceeds tol 0 by 0 (3,19) 223 255 Abs err 0 exceeds tol 0 by 0 (4,19) 223 255 Abs err 0 exceeds tol 0 by 0 (5,19) 223 255 Abs err 0 exceeds tol 0 by 0 (6,19) 223 255 Abs err 0 exceeds tol 0 by 0 (7,19) 223 255 Abs err 0 exceeds tol 0 by 0 (8,19) 223 255 Abs err 0 exceeds tol 0 by 0 (9,19) 223 255 Abs err 0 exceeds tol 0 by 0 (10,19) 223 255 Abs err 0 exceeds tol 0 by 0 (11,19) 223 255 Abs err 0 exceeds tol 0 by 0 (12,19) 223 255 Abs err 0 exceeds tol 0 by 0 (13,19) 223 255 Abs err 0 exceeds tol 0 by 0 (14,19) 223 255 Abs err 0 exceeds tol 0 by 0 (15,19) 223 255 Abs err 0 exceeds tol 0 by 0 (16,19) 223 255 Abs err 0 exceeds tol 0 by 0 (17,19) 223 255 Abs err 0 exceeds tol 0 by 0 (18,19) 223 255 Abs err 0 exceeds tol 0 by 0 (19,19) 195 255 Abs err 0 exceeds tol 0 by 0 ***** xtest ## bug #51979 (results are not matlab compatible) in = logical ([ 1 0 1 1 0 0 1 1 0 0 1 1 0 0 0 1 0 0 1 0 0 1 1 0 1 1 1 1 1 1 1 0 1 0 1 0 1 0 1 1 1 1 1 0 0 0 1 1 1 1 0 0 1 1 0 0 1 0 0 0 0 0 1 1 0 1 1 0 1 1 1 1 0 0 1 0 0 0 1 0 1 1 1 1 1 1 0 1 0 0 1 1 0 0 1 0 0 0 1 0]); reduced = logical ([ 1 1 0 1 0 1 1 0 1 1 1 1 0 1 1 0 1 0 0 0 1 1 1 0 0]); expanded = logical ([ 1 1 0 0 1 1 1 0 0 0 0 0 1 1 1 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 1 0 0 0 1 1 0 0 1 1 1 1 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 0 0 1 0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 1 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 1 1 1 0 0 0 0 0 0 1 0 0 1 1 1 1 1 0 1 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0 0 1 1 1 1 1 0 1 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 1 1 1 0 0 0 0 0 0 1 0 0]); assert (impyramid (in, "reduce"), reduced) assert (impyramid (in, "expand"), expanded) !!!!! known failure ASSERT errors for: assert (impyramid (in, "reduce"),reduced) Location | Observed | Expected | Reason (4,1) 1 0 Abs err 1 exceeds tol 0 by 1 (1,3) 1 0 Abs err 1 exceeds tol 0 by 1 (2,3) 1 0 Abs err 1 exceeds tol 0 by 1 (3,3) 1 0 Abs err 1 exceeds tol 0 by 1 (4,3) 1 0 Abs err 1 exceeds tol 0 by 1 (4,4) 1 0 Abs err 1 exceeds tol 0 by 1 (5,4) 1 0 Abs err 1 exceeds tol 0 by 1 (1,5) 1 0 Abs err 1 exceeds tol 0 by 1 (4,5) 1 0 Abs err 1 exceeds tol 0 by 1 (5,5) 1 0 Abs err 1 exceeds tol 0 by 1 4 tests, 1 passed, 3 known failures, 0 skipped [inst/ordfiltn.m] >>>>> /<>/inst/ordfiltn.m ***** shared b, f, s b = [ 0 1 2 3 1 8 12 12 4 20 24 21 7 22 25 18]; f = [ 8 12 12 12 20 24 24 24 22 25 25 25 22 25 25 25]; ***** assert (ordfiltn (b, 9, true (3)), f); f = [ 1 8 12 12 8 20 21 21 20 24 24 24 20 24 24 24]; ***** assert (ordfiltn (b, 8, true (3)), f); f = [ 1 2 8 12 4 12 20 21 8 22 22 21 20 24 24 24]; ***** assert (ordfiltn (b, 7, true (3), "symmetric"), f); f = [ 1 8 12 12 4 20 24 21 7 22 25 21 7 22 25 21]; ***** assert (ordfiltn (b, 3, true (3, 1)), f); f = [ 1 8 12 12 4 20 24 18 4 20 24 18 4 20 24 18]; ***** assert (ordfiltn (b, 3, true (4, 1)), f); f = [ 4 20 24 21 7 22 25 21 7 22 25 21 7 22 25 21]; ***** assert (ordfiltn (b, 4, true (4, 1)), f); s = [0 0 1 0 0 1 0 0 1]; f = [ 2 8 12 12 9 20 22 21 21 25 24 24 21 25 24 24]; ***** assert (ordfiltn (b, 8, true (3), s), f); b(:,:,2) = b(:,:,1) - 1; b(:,:,3) = b(:,:,2) - 1; f(:,:,1) = [ 1 8 11 11 8 20 21 21 20 24 24 24 20 24 24 24]; f(:,:,2) = [ 6 10 11 11 18 22 22 22 20 24 24 24 20 24 24 24]; f(:,:,3) = [ 0 7 10 10 7 19 20 20 19 23 23 23 19 23 23 23]; ***** assert (ordfiltn (b, 25, true (3, 3, 3)), f); 8 tests, 8 passed, 0 known failure, 0 skipped [inst/rgb2lab.m] >>>>> /<>/inst/rgb2lab.m ***** assert (rgb2lab ([0 0 0]), [0, 0, 0], 1e-2) ***** assert (rgb2lab ([1 0 0]), [53.24, 80.09, 67.20], 1e-2) ***** assert (rgb2lab ([1 1 0]), [97.14, -21.55, 94.48], 1e-2) ***** assert (rgb2lab ([0 1 0]), [87.74, -86.18, 83.18], 1e-2) ***** assert (rgb2lab ([0 1 1]), [91.11, -48.09, -14.13], 1e-2) ***** assert (rgb2lab ([0 0 1]), [32.30, 79.19, -107.86], 1e-2) ***** assert (rgb2lab ([1 0 1]), [60.32, 98.24, -60.83], 1e-2) ***** assert (rgb2lab ([1 1 1]), [100, 0.00, 0.00], 1e-2) ***** assert (rgb2lab ([0.5 0.5 0.5]), [53.39, 0.00, 0.00], 1e-2) ***** assert (rgb2lab ([0.75 0 0]), [39.77, 64.51, 54.13], 1e-2) ***** assert (rgb2lab ([0.5 0 0]), [25.42, 47.91, 37.91], 1e-2) ***** assert (rgb2lab ([0.25 0 0]), [9.66, 29.68, 15.24], 1e-2) ***** assert (rgb2lab ([1 0.5 0.5]), [68.11, 48.39, 22.83], 1e-2) ***** assert (rgb2lab ([1.5 1 1]), [111.47, 43.42, 17.98], 1e-2) ***** test rgb_map = rand (64, 3); assert (lab2rgb (rgb2lab (rgb_map)), rgb_map, 2e-5); ***** test rgb_img = rand (64, 64, 3); assert (lab2rgb (rgb2lab (rgb_img)), rgb_img, 2e-5); ***** assert (rgb2lab (sparse ([0 0 1])), sparse ([32.30, 79.19, -107.86]), 1e-2) ***** assert (rgb2lab (sparse ([0 1 1])), sparse ([91.11, -48.09, -14.13]), 1e-2) ***** assert (rgb2lab (sparse ([1 1 1])), sparse ([100, 0.00, 0.00]), 1e-2) ***** assert (rgb2lab (uint8([255 255 255])), [100, 0.00, 0.00], 1e-2) ***** assert (class (rgb2lab (single([1 1 1]))), 'single') ***** error rgb2lab () ***** error rgb2lab (1,2) ***** error rgb2lab ({1}) ***** error rgb2lab (ones (2,2)) ***** test rgb = rand (16, 16, 3, 5); lab = zeros (size (rgb)); for i = 1:5 lab(:,:,:,i) = rgb2lab (rgb(:,:,:,i)); endfor assert (rgb2lab (rgb), lab) 26 tests, 26 passed, 0 known failure, 0 skipped [inst/bestblk.m] >>>>> /<>/inst/bestblk.m ***** demo siz = bestblk ([200; 10], 50); disp (siz) ***** error bestblk ("string") ***** error bestblk ([100 200], "string") ***** error <2 elements> bestblk ([100], 5) ***** assert (bestblk ([ 10 12], 2), [ 2 2]); ***** assert (bestblk ([ 10 12], 3), [ 2 3]); ***** assert (bestblk ([300 100], 150), [150 100]); ***** assert (bestblk ([256 128], 17), [ 16 16]); ***** assert (bestblk ([ 17 17], 3), [ 3 3]); ***** assert (bestblk ([230 470]), bestblk ([230 470], 100)) ***** assert (bestblk ([10 12 10], 3), [2 3 2]); ***** assert (bestblk ([ 9 12 9], 3), [3 3 3]); ***** assert (bestblk ([10 12 10 11], 5), [5 4 5 4]); 12 tests, 12 passed, 0 known failure, 0 skipped [inst/immultiply.m] >>>>> /<>/inst/immultiply.m ***** assert (immultiply (uint8 ([255 50]), uint16 ([300 50])), uint8 ([255 255])); # default to first class and truncate ***** assert (immultiply (uint8 ([250 50]), uint16 ([ 3 4]), "uint32"), uint32 ([750 200])); # defining output class works (not in matlab?) ***** assert (immultiply (uint8 ([255 50]), 4), uint8 ([255 200])); # works multiplying by a scalar ***** assert (immultiply (logical ([ 1 0]), uint16 ([300 50])), uint16 ([300 0])); # output class defaults to whatever input is not logical ***** assert (immultiply (logical ([ 1 0]), logical ([ 1 1])), double ([ 1 0])); # tested on matlab for compatibility 5 tests, 5 passed, 0 known failure, 0 skipped [inst/rgb2ycbcr.m] >>>>> /<>/inst/rgb2ycbcr.m ***** test in(:,:,1) = magic (5); in(:,:,2) = magic (5); in(:,:,3) = magic (5); out(:,:,1) = [31 37 17 23 29 36 20 22 28 30 19 21 27 33 35 25 26 32 34 19 25 31 37 18 24]; out(:,:,2) = 128; out(:,:,3) = 128; assert (rgb2ycbcr (uint8 (in)), uint8 (out)); ***** shared cbcr cbcr = 0.5019607843137255; out(1:10, 1) = linspace (16/255, 235/255, 10); out(:, [2 3]) = cbcr; assert (rgb2ycbcr (gray (10)), out, 0.00001); ***** assert (rgb2ycbcr ([1 1 1]), [0.92157 cbcr cbcr], 0.0001); ***** assert (class (rgb2ycbcr (single (rand (5, 5, 3)))), "single") 3 tests, 3 passed, 0 known failure, 0 skipped [inst/roicolor.m] >>>>> /<>/inst/roicolor.m ***** demo roicolor([1:10],2,4); % Returns '1' where input values are between 2 and 4 (both included). ***** assert(roicolor([1:10],2,4),logical([0,1,1,1,zeros(1,6)])); ***** assert(roicolor([1,2;3,4],3,3),logical([0,0;1,0])); ***** assert(roicolor([1,2;3,4],[1,4]),logical([1,0;0,1])); 3 tests, 3 passed, 0 known failure, 0 skipped [inst/imclose.m] >>>>> /<>/inst/imclose.m ***** shared in, out in = [ 0 0 0 1 1 1 0 0 1 1 0 1 0 1 1 1 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0 1 0 1 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0]; out = [ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 0 0 0 0 1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0]; ***** assert (imclose (logical (in), ones (3)), logical (out)); out = [99 99 16 16 16 73 74 64 64 64 98 88 16 16 16 73 71 64 64 64 93 88 88 61 61 61 68 70 70 70 93 88 88 61 61 61 68 71 71 71 93 93 88 61 61 61 68 75 66 66 79 79 82 90 90 49 49 49 49 66 79 79 82 91 91 48 46 46 46 66 79 79 82 95 97 48 46 46 46 72 18 18 94 96 84 48 46 46 46 59 18 18 100 96 84 50 50 50 50 59]; ***** assert (imclose (magic (10), ones (3)), out); ***** assert (imclose (uint8 (magic (10)), strel ("square", 3)), uint8 (out)); ## using a se that will be decomposed in 2 pieces out =[ 99 99 88 74 74 74 74 70 70 70 98 93 88 74 74 74 74 70 70 70 93 93 88 74 74 74 74 70 70 70 93 93 88 74 74 74 74 71 71 71 93 93 88 75 75 75 75 75 75 75 93 93 90 90 90 72 72 72 72 72 93 93 91 91 91 72 72 72 72 72 93 93 93 95 97 72 72 72 72 72 94 94 94 96 97 72 72 72 72 72 100 100 100 97 97 72 72 72 72 72]; ***** assert (imclose (magic (10), ones(5)), out); ## using a weird non-symmetric and even-size se out =[ 92 99 16 16 16 70 74 58 58 58 98 88 60 73 16 73 69 70 64 58 88 81 88 60 60 60 69 69 70 70 87 87 61 68 61 60 68 69 71 69 86 93 87 61 61 61 68 75 68 69 23 82 89 89 90 45 68 45 68 66 23 23 82 89 91 48 45 45 45 66 79 23 82 95 97 46 48 46 45 72 18 79 94 96 78 50 46 46 46 59 18 18 100 94 94 78 50 50 46 59]; ***** assert (imclose (magic (10), [1 0 0 0; 1 1 1 0; 0 1 0 1]), out); 5 tests, 5 passed, 0 known failure, 0 skipped [inst/imhmax.m] >>>>> /<>/inst/imhmax.m ***** shared im0, im0_h2_out im0 = uint8 ([0 0 0 0 0; 0 1 2 1 0; 0 2 5 2 0; 0 1 2 1 0; 0 0 0 0 0]); im0_h2_out = uint8 ([0 0 0 0 0; 0 1 2 1 0; 0 2 3 2 0; 0 1 2 1 0; 0 0 0 0 0]); ***** error imhmax () ***** error imhmax (im0) ***** error imhmax ("hello", 2) ***** error imhmax (i.*im0, 2) ***** error imhmax (sparse (im0), 2) ***** error imhmax (im0, -2) ***** error imhmax (im0, 'a') ***** error imhmax (im0, ones (2)) ***** error imhmax (im0, 2*i) ***** assert (imhmax (im0, 2), im0_h2_out) ***** assert (imhmax (double (im0), 2), double (im0_h2_out)) ***** assert (imhmax (im0, 2, 8), im0_h2_out) ***** assert (imhmax (im0, 2, 4), im0_h2_out) ***** assert (imhmax (im0, 2, true (3)), im0_h2_out) ***** test out = imhmax (double (im0), 2); assert (size (out), size (im0)) assert (class (out), "double") ***** test out = imhmax (single (im0), 2); assert (size (out), size (im0)) assert (class (out), "single") ***** test out = imhmax (uint8 (im0), 2); assert (size (out), size (im0)) assert (class (out), "uint8") ***** test out = imhmax (uint16 (im0), 2); assert (size (out), size (im0)) assert (class (out), "uint16") ***** test im = cat (3, im0, im0, im0, im0); out = imhmax (im, 2); assert (size (out), size (im)) ***** test im = zeros (10); im(2:4, 2:4) = 3; im(6:8, 6:8) = 8; expected_4 = zeros (10); expected_4(6:8, 6:8) = 4; expected_2 = zeros (10); expected_2(2:4, 2:4) = 1; expected_2(6:8, 6:8) = 6; out = imhmax (im, 4); assert (out, expected_4, eps) out = imhmax (im, 2); assert (out, expected_2, eps) out = imhmax (0.1 .* im, 0.4); assert (out, 0.1 .* expected_4, eps) ***** test im2 = zeros (10); im2(2:4, 2:4) = 3; im2(6:9, 6:9)=8; im2(5, 5)=8; im2(6, 7)=0; im2(7, 8)=0; expected_4 = zeros (10); expected_4(6:9, 6:9) = 4; expected_4(5, 5) = 4; expected_4(6, 7) = 0; expected_4(7, 8) = 0; expected_8 = expected_4; expected_8(2:4, 2:4) = 3; out2 = imhmax (im2, 4); assert (out2, expected_8, eps) out2 = imhmax (im2, 4, 4); assert (out2, expected_4, eps) out2 = imhmax (im2, 4, 8); assert (out2, expected_8, eps) 21 tests, 21 passed, 0 known failure, 0 skipped [inst/imapplymatrix.m] >>>>> /<>/inst/imapplymatrix.m ***** error id=Octave:invalid-fun-call imapplymatrix () ***** error id=Octave:invalid-fun-call imapplymatrix (42) ***** error id=Octave:invalid-input-arg imapplymatrix (ones (2, 2, 2), 42) ***** error id=Octave:invalid-input-arg imapplymatrix ([], ones (2, 2)) ***** error id=Octave:invalid-input-arg imapplymatrix (ones (0, 2), ones (2, 2)) ***** error id=Octave:invalid-input-arg imapplymatrix (ones (2, 0), ones (2, 2)) ***** error id=Octave:invalid-input-arg imapplymatrix (4, 2, [2, 2]) ***** error id=Octave:invalid-input-arg imapplymatrix (4, 2, [2, 2], "uint8") ***** error id=Octave:invalid-input-arg imapplymatrix (4, 2, 0, 666) ***** assert (imapplymatrix ([], []), []) ***** assert (imapplymatrix ([], [], "uint16"), uint16 ([])) ***** assert (imapplymatrix (1, 10, []), 10) ***** assert (imapplymatrix (1, 10, ones (0, 5)), 10) ***** assert (imapplymatrix (1, 10, ones (5, 0)), 10) ***** assert (imapplymatrix (ones (0), ones (0), 3), []) ***** assert (imapplymatrix (ones (0), ones (4, 0), 3), zeros (4, 0)) ***** assert (imapplymatrix (ones (0), ones (0, 4), 3), zeros (0, 4)) ***** assert (imapplymatrix (ones (2, 0), ones (0, 4), 3), zeros (0, 4)) ***** assert (imapplymatrix (ones (0, 2), ones (0, 4), 3), zeros (0, 4)) ***** assert (imapplymatrix (ones (0, 2), ones (0, 4, 0), 3), zeros (0, 4, 0)) ***** assert (imapplymatrix("a", ones(2, 2)), nan (2, 2)) ***** assert (imapplymatrix("abc", ones(2, 2)), nan (2, 2)) ***** assert (imapplymatrix (1, 10), 10) ***** assert (imapplymatrix (1, 10, 3), 13) ***** assert (imapplymatrix (ones (1), uint8 (10), 3), uint8 (13)) ***** assert (imapplymatrix (uint8 (ones (1)), 10, 3), double (13)) ***** assert (imapplymatrix (uint8 (ones (1)), uint8 (10), 3), uint8 (13)) ***** assert (imapplymatrix (2.6 * ones (1), uint8 (10), 4.7), uint8 (31)) ***** assert (imapplymatrix (42, ones (1, 2)), 42 * ones (1, 2)) ***** assert (imapplymatrix (42, ones (2, 1)), 42 * ones (2, 1)) ***** assert (imapplymatrix (42, ones (2, 2)), 42 * ones (2, 2)) ***** assert (imapplymatrix (42, ones (2, 2), 0.5), 42.5 * ones (2, 2)) ***** assert (imapplymatrix ([4, 2], ones (2, 2, 2), 0.5), 6.5 * ones (2, 2)) ***** assert (imapplymatrix ([4, 2; 4, 2], ones (2, 2, 2), [0.5, 0.5]), 6.5 * ones (2, 2, 2)) ***** assert (imapplymatrix ([4, 2; 4, 2], ones (2, 2, 2), [0.5; 0.5]), 6.5 * ones (2, 2, 2)) ***** assert (imapplymatrix ([1, 2, 3], ones (2, 2, 3)), 6 * ones (2, 2, 1)) ***** assert (imapplymatrix ([1, 2, 3], ones (2, 2, 3), 1), 7 * ones (2, 2, 1)) ***** test expected = zeros (2, 2, 2, "uint8"); expected(:, :, 1) = 7 * ones (2, 2); expected(:, :, 2) = 16 * ones (2, 2); I = uint8 (ones (2, 2, 3)); assert (imapplymatrix ([1, 2, 3 4, 5, 6], I, [1, 1]), expected) ***** test expected = zeros (2, 2, 2, 2, "uint16"); expected(:, :, 1, 1) = 7 * ones (2, 2); expected(:, :, 2, 1) = 16 * ones (2, 2); expected(:, :, 1, 2) = 13 * ones (2, 2); expected(:, :, 2, 2) = 31 * ones (2, 2); I(:, :, :, 1) = uint16 (ones (2, 2, 3)); I(:, :, :, 2) = 2 * uint16 (ones (2, 2, 3)); assert (imapplymatrix ([1, 2, 3; 4, 5, 6], I, [1, 1]), expected) 39 tests, 39 passed, 0 known failure, 0 skipped [inst/mean2.m] >>>>> /<>/inst/mean2.m ***** test ## This throws a division by zero warning which Matlab does not, but ## that's because Matlab does not throw such warnings in the first ## place. Octave does, so we do not turn the warning off. warning ("off", "Octave:divide-by-zero", "local"); assert (mean2 ([]), NaN) ***** assert (mean2 (logical ([1 1; 0 0])), 0.5) ***** assert (mean2 (ones (3, 3, 3)), 1) ***** assert (mean2 (i), i) ***** assert (mean2 ([1 i]), [0.5+0.5i]) ***** assert (mean2 (speye (3)), sparse (1/3)) 6 tests, 6 passed, 0 known failure, 0 skipped [inst/makelut.m] >>>>> /<>/inst/makelut.m ***** demo makelut(@(x) sum(x(:))>=3, 2) % Returns '1' if one or more values % in the input matrix are 1 ***** assert(prod(makelut(@(x) sum(x(:))==2, 2)==makelut(@(x, a, b, c, d) sum(x(:))==a*b*c*d,2,2/(3*4*5),3,4,5))); # test multiple params ***** assert(prod(makelut(@(x) x(1,1)==1, 2)==[zeros(2^3,1);ones(2^3,1)])==1); # test 2-by-2 ***** assert(prod(makelut(@(x) x(1,1)==1, 3)==[zeros(2^8,1);ones(2^8,1)])==1); # test 3-by-3 ***** assert(prod(makelut(@(x) x(1,1)==1, 4)==[zeros(2^15,1);ones(2^15,1)])==1); # test 4-by-4 ***** assert(prod(makelut(@(x) x(2,1)==1, 3)==[zeros(2^7,1);ones(2^7,1);zeros(2^7,1);ones(2^7,1)])==1); # another test for 3-by-3 5 tests, 5 passed, 0 known failure, 0 skipped [inst/imrotate.m] >>>>> /<>/inst/imrotate.m ***** test ## Verify minimal loss across six rotations that add up to 360 +/- 1 deg.: methods = { "nearest", "bilinear", "bicubic", "Fourier" }; angles = [ 59 60 61 ]; tolerances = [ 7.4 8.5 8.6 # nearest 3.5 3.1 3.5 # bilinear 2.7 2.0 2.7 # bicubic 2.7 1.6 2.8 ]/8; # Fourier # This is peaks(50) without the dependency on the plot package x = y = linspace(-3,3,50); [X,Y] = meshgrid(x,y); x = 3*(1-X).^2.*exp(-X.^2 - (Y+1).^2) ... - 10*(X/5 - X.^3 - Y.^5).*exp(-X.^2-Y.^2) ... - 1/3*exp(-(X+1).^2 - Y.^2); x -= min(x(:)); # Fourier does not handle neg. values well x = x./max(x(:)); for m = 1:(length(methods)) y = x; for i = 1:5 y = imrotate(y, 60, methods{m}, "crop", 0); end for a = 1:(length(angles)) assert(norm((x - imrotate(y, angles(a), methods{m}, "crop", 0)) (10:40, 10:40)) < tolerances(m,a)); endfor endfor ***** xtest ## Verify exactness of near-90 and 90-degree rotations: X = rand(99); for angle = [90 180 270] for da = [-0.1 0.1] Y = imrotate(X, angle + da , "nearest", :, 0); Z = imrotate(Y, -(angle + da), "nearest", :, 0); assert(norm(X - Z) == 0); # exact zero-sum rotation assert(norm(Y - imrotate(X, angle, "nearest", :, 0)) == 0); # near zero-sum endfor endfor !!!!! known failure assert (norm (X - Z) == 0) failed ***** test ## Verify preserved pixel density: methods = { "nearest", "bilinear", "bicubic", "Fourier" }; ## This test does not seem to do justice to the Fourier method...: tolerances = [ 4 2.2 2.0 209 ]; range = 3:9:100; for m = 1:(length(methods)) t = []; for n = range t(end + 1) = sum(imrotate(eye(n), 20, methods{m}, :, 0)(:)); endfor assert(t, range, tolerances(m)); endfor ***** test a = reshape (1:18, [2 3 3]); a90(:,:,1) = [5 6; 3 4; 1 2]; a90(:,:,2) = a90(:,:,1) + 6; a90(:,:,3) = a90(:,:,2) + 6; a180(:,:,1) = [6 4 2; 5 3 1]; a180(:,:,2) = a180(:,:,1) + 6; a180(:,:,3) = a180(:,:,2) + 6; am90(:,:,1) = [2 1; 4 3; 6 5]; am90(:,:,2) = am90(:,:,1) + 6; am90(:,:,3) = am90(:,:,2) + 6; assert (imrotate (a, 0), a); assert (imrotate (a, 90), a90); assert (imrotate (a, -90), am90); assert (imrotate (a, 180), a180); assert (imrotate (a, -180), a180); assert (imrotate (a, 270), am90); assert (imrotate (a, -270), a90); assert (imrotate (a, 360), a); ***** test # bug #53309 in = ones (2, 4); out = [0 1 1 0; 0 1 1 0]; assert (imrotate (in, 90, "nearest", "crop"), out) assert (imrotate (repmat (in, [1 1 3]), 90, "nearest", "crop"), repmat (out, [1 1 3])) ***** test ## bug #53309 rgbs = { rand(5, 4, 3), # normal path, does interpolation rand(4, 4, 3), # rows and columns, same number, simple rotdim rand(4, 6, 3), # rows and columns differents, but of length even }; for rgb_i = 1:numel(rgbs) rgb = rgbs{rgb_i}; rot = imrotate (rgb, 90, "nearest", "crop"); for i = 1:3 assert (rot(:,:,i), imrotate (rgb(:,:,i), 90, "nearest", "crop")) endfor ## same check but with an integer class rgb = im2uint8 (rgb); rot = imrotate (rgb, 90, "nearest", "crop"); assert (class (rgb), class (rot)) for i = 1:3 assert (rot(:,:,i), imrotate (rgb(:,:,i), 90, "nearest", "crop")) endfor endfor 6 tests, 5 passed, 1 known failure, 0 skipped [inst/radon.m] >>>>> /<>/inst/radon.m ***** test A = radon (ones (2,2), 30); assert (A, [0 0 0.608253175473055 2.103325780167649 1.236538105676658 0.051882938682637 0]',1e-10) ***** test ***** # testing all types A = radon (single (ones (2,2)), 90); assert (A, B) A = radon (double (ones (2,2)), 90); assert (A, B) A = radon (int8 (ones (2,2)), 90); assert (A, B) A = radon (int32 (ones (2,2)), 90); assert (A, B) A = radon (int64 (ones (2,2)), 90); assert (A, B) A = radon (uint8 (ones (2,2)), 90); assert (A, B) A = radon (uint16 (ones (2,2)), 90); assert (A, B) A = radon (uint32 (ones (2,2)), 90); assert (A, B) A = radon (uint64 (ones (2,2)), 90); B = [0, 0.25, 1.75, 1.75, 0.25, 0. 0.]'; assert (A, B) bug #58567 A = radon (logical (ones (2,2)), 90); assert (A, B) ***** error radon (); ***** error radon ('xxx'); ***** error radon (ones (2, 2), ones (2,2)); ***** error radon (ones (2, 2), 'xxx'); 6 tests, 6 passed, 0 known failure, 0 skipped [inst/blockproc.m] >>>>> /<>/inst/blockproc.m ***** demo blockproc (eye (6), [2, 2], @(x) any (x(:))) # Returns a 3-by-3 diagonal ***** assert (blockproc (eye (6), [2, 2], "sum"), blockproc (eye (6), [2, 2], @sum)) ***** assert (blockproc (eye (6), [2, 2], "sum"), blockproc (eye (6), [2, 2], @(x) sum (x))) ***** assert (blockproc (eye (6), [1,2], @sum), kron (eye (3), [1; 1])) ***** assert (blockproc (eye (6), [2,2], @(x) any (x(:))), eye (3) != 0) ***** assert (blockproc (eye (6), [1,2],[1,1], @(x) sum (x(:))), [2,1,0; 3,2,0; 2,3,1; 1,3,2; 0,2,3; 0,1,2]) ***** assert (blockproc (eye (6), "indexed", [1, 2], [1, 1], @(x) sum (x(:))), [8,5,6; 6,2,3; 5,3,4; 4,3,5; 3,2,6; 6,5,8]) ***** assert (blockproc (eye (6), [2,3],[4,3], @(x) sum (x(:))), ones (3, 2) * 6) ***** assert (blockproc (eye (6), [2, 2], @(x) int8 (sum (x(:)))), eye (3, "int8") * 2) ***** assert (blockproc (uint8 (eye (6)), [1,2], [1,1], @(x) sum (x(:))), [2,1,0; 3,2,0; 2,3,1; 1,3,2; 0,2,3; 0,1,2]) ***** assert (blockproc (uint8 (eye (6)), "indexed", [1,2], [1,1], @(x) sum (x(:))), [2,1,0; 3,2,0; 2,3,1; 1,3,2; 0,2,3; 0,1,2]); ***** assert (blockproc (uint16 (eye (6)), [1,2], [1,1], @(x) sum (x(:))), [2,1,0; 3,2,0; 2,3,1; 1,3,2; 0,2,3; 0,1,2]); ***** assert (blockproc (uint16 (eye (6)), "indexed", [1,2], [1,1], @(x) sum (x(:))), [2,1,0; 3,2,0; 2,3,1; 1,3,2; 0,2,3; 0,1,2]); ***** assert (blockproc (eye (6), [2, 2], "sum"), blockproc (eye (6), [2, 2], inline ("sum (x)", "x"))) warning: inline is obsolete; use anonymous functions instead 13 tests, 13 passed, 0 known failure, 0 skipped [inst/isrgb.m] >>>>> /<>/inst/isrgb.m ***** assert (isrgb ("this is not a RGB image"), false); ***** assert (isrgb (rand (5, 5)), false); ***** assert (isrgb (rand (5, 5, 1, 5)), false); ***** assert (isrgb (rand (5, 5, 3, 5)), true); ***** assert (isrgb (rand (5, 5, 3)), true); ***** assert (isrgb (ones (5, 5, 3)), true); ***** assert (isrgb (ones (5, 5, 3) + eps), false); ***** assert (isrgb (zeros (5, 5, 3) - eps), false); ***** assert (isrgb (rand (5, 5, 3) > 0.5), false); ***** assert (isrgb (randi ([-100 100], 5, 5, 3, "int16")), true) 10 tests, 10 passed, 0 known failure, 0 skipped [inst/lab2single.m] >>>>> /<>/inst/lab2single.m ***** test l_max_f = 100 + (25500 / 65280); ab_max_f = 127 + (255 / 256); cm = [ -Inf Inf NaN l_max_f ab_max_f -200 -129 -128 -128+(255/65280)*(0.499) -128+(255/65280)*(0.500) -128+(255/65280)*(0.501) -127 -1 0 (100/65280)*(0.499999) (100/65280)*(0.51) (100/65280)*(0.500001) 1 99 100 101 126 127 128 254 255 256 257]; cm = repmat (single (cm), [1 3]); im2d = reshape (cm, [7 4 3]); imnd = permute (im2d, [1 4 3 2]); cm_uint8 = uint8 ([ 0 0 0 255 255 255 255 255 255 255 228 228 255 255 255 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 127 127 0 128 128 0 128 128 0 128 128 0 128 128 3 129 129 252 227 227 255 228 228 255 229 229 255 254 254 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255]); assert (lab2uint8 (cm), cm_uint8) im2d_uint8 = reshape (cm_uint8, [7 4 3]); assert (lab2uint8 (im2d), im2d_uint8) assert (lab2uint8 (imnd), permute (im2d_uint8, [1 4 3 2])) cm_uint16 = uint16 ([ 0 0 0 65535 65535 65535 65535 65535 65535 65535 58468 58468 65535 65535 65535 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0 256 256 0 32512 32512 0 32768 32768 0 32768 32768 1 32768 32768 1 32768 32768 653 33024 33024 64627 58112 58112 65280 58368 58368 65535 58624 58624 65535 65024 65024 65535 65280 65280 65535 65535 65535 65535 65535 65535 65535 65535 65535 65535 65535 65535 65535 65535 65535]); assert (lab2uint16 (cm), cm_uint16) im2d_uint16 = reshape (cm_uint16, [7 4 3]); assert (lab2uint16 (im2d), im2d_uint16) assert (lab2uint16 (imnd), permute (im2d_uint16, [1 4 3 2])) assert (lab2double (cm), double (cm)) assert (lab2double (im2d), double (im2d)) assert (lab2double (imnd), double (imnd)) 1 test, 1 passed, 0 known failure, 0 skipped [inst/imregionalmax.m] >>>>> /<>/inst/imregionalmax.m ***** test a = [ 7 3 9 3 10 3 4 2 3 10 1 3 1 4 6 9 4 10 8 7 9 3 4 8 5 9 3 3 8 9 3 6 9 4 1 10]; a4 = [ 1 0 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 1]; assert (imregionalmax (a, 4), logical (a4)) a8 = [ 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1]; assert (imregionalmax (a, 8), logical (a8)) assert (imregionalmax (a), logical (a8)) ***** test ## test float input images im0 = peaks (); im1 = im0 ./ 100; max_pos_expected = [1000; 1214; 1691; 2353]; max0 = imregionalmax (im0); max0_pos = find (max0); max1 = imregionalmax (im1); assert (max1, max0) assert (max0_pos, max_pos_expected) 2 tests, 2 passed, 0 known failure, 0 skipped [inst/im2uint16.m] >>>>> /<>/inst/im2uint16.m ***** assert (im2uint16 (uint16 ([1 2 3])), uint16 ([1 2 3])); ***** assert (im2uint16 (uint8 ([0 127 128 255])), uint16 ([0 32639 32896 65535])); ***** assert (im2uint16 ([0 0.5 1]), uint16 ([0 32768 65535])); ***** assert (im2uint16 ([0 1/65535 1.4/65535 1.5/65535 1]), uint16 ([0 1 1 2 65535])); ***** assert (im2uint16 ([1 2]), uint16 ([65535 65535])); ***** assert (im2uint16 ([-1 0 0.5 1]), uint16 ([0 0 32768 65535])); ***** assert (im2uint16 (int16 ([-32768 -1 0 32768])), uint16 ([0 32767 32768 65535])); ***** assert (im2uint16 ([false true]), uint16 ([0 65535])); ***** assert (im2uint16 ([true false]), uint16 ([65535 0])); ***** assert (im2uint16 (uint8 ([3 25]), "indexed"), uint16 ([3 25])); ***** assert (im2uint16 ([1 3 25], "indexed"), uint16 ([0 2 24])); ***** error im2uint16 ([0 1 2], "indexed"); ***** error im2uint16 (int16 ([17 8]), "indexed"); ***** error im2uint16 (int16 ([-7 8]), "indexed"); ***** error im2uint16 ([false true], "indexed"); ***** error im2uint16 (65537, "indexed"); 16 tests, 16 passed, 0 known failure, 0 skipped [inst/lab2uint8.m] >>>>> /<>/inst/lab2uint8.m ***** test cm_uint8 = uint8 ([0 1 2 3 4 127 128 200 254 255]); cm_uint8 = repmat (cm_uint8(:), [1 3]); im2d_uint8 = reshape (cm_uint8, [5 2 3]); imnd_uint8 = permute (im2d_uint8, [1 4 3 2]); cm_uint16 = uint16 ([0 256 512 768 1024 32512 32768 51200 65024 65280]); cm_uint16 = repmat (cm_uint16(:), [1 3]); assert (lab2uint16 (cm_uint8), cm_uint16) im2d_uint16 = reshape (cm_uint16, [5 2 3]); assert (lab2uint16 (im2d_uint8), im2d_uint16) assert (lab2uint16 (imnd_uint8), permute (im2d_uint16, [1 4 3 2])) l1 = 100/255; cm = [ 0 -128 -128 l1 -127 -127 2*l1 -126 -126 3*l1 -125 -125 4*l1 -124 -124 127*l1 -1 -1 128*l1 0 0 200*l1 72 72 254*l1 126 126 100 127 127]; im2d = reshape (cm, [5 2 3]); imnd = permute (im2d, [1 4 3 2]); assert (lab2double (cm_uint8), cm) assert (lab2double (im2d_uint8), im2d) assert (lab2double (imnd_uint8), imnd) assert (lab2single (cm_uint8), single (cm)) assert (lab2single (im2d_uint8), single (im2d)) assert (lab2single (imnd_uint8), single (imnd)) 1 test, 1 passed, 0 known failure, 0 skipped [inst/psf2otf.m] >>>>> /<>/inst/psf2otf.m ***** test psf = rand (6, 1); assert (psf2otf (psf), fft (circshift (psf, [-3])), eps); ***** test psf = rand (6, 6); assert (psf2otf (psf), fft2 (circshift (psf, [-3 -3])), eps); ***** test psf = rand (6, 6, 6); assert (psf2otf (psf), fftn (circshift (psf, [-3 -3 -3])), eps); ***** test psf = rand (7, 1); assert (psf2otf (psf), fft (circshift (psf, [-3])), eps); ***** test psf = rand (7, 7); assert (psf2otf (psf), fft2 (circshift (psf, [-3 -3])), eps); ***** test psf = rand (6, 7, 8); assert (psf2otf (psf), fftn (circshift (psf, [-3 -3 -4])), eps); ***** test psf = rand (6, 1); ppsf = [psf; 0]; assert (psf2otf (psf, 7), fft (circshift (ppsf, [-3])), eps); ***** test psf = rand (6, 1); ppsf = [[psf; 0] zeros(7, 6)]; assert (psf2otf (psf, [7 7]), fft2 (circshift (ppsf, [-3 0])), eps); ***** test psf = rand (6, 6); ppsf = [psf zeros(6, 1)]; assert (psf2otf (psf, [6 7]), fft2 (circshift (ppsf, [-3 -3])), eps); ***** error psf2otf ('foo') ***** error psf2otf (rand (16), 14) ***** error psf2otf (rand (16), [14 14]) ***** error psf2otf (rand (16), [18]) ***** error psf2otf (rand (16), [18 14]) ***** test psf = fspecial ("gaussian", 16) + 1i; otf = psf2otf (psf); assert (otf2psf (otf), psf, eps); 15 tests, 15 passed, 0 known failure, 0 skipped Checking C++ files ... [src/bwfill.cc] >>>>> /<>/src/bwfill.cc ***** test A = [0 1 0 0 1; 1 0 1 0 0; 1 0 1 1 0; 1 1 1 0 0; 1 0 0 1 0]; R4 = logical(ones(5)); R8 = logical([1 1 0 0 1; 1 0 1 0 0; 1 0 1 1 0; 1 1 1 0 0; 1 0 0 1 0]); assert (bwfill (A,1,1,4), R4) assert (bwfill (A,1,1,8), R8) assert (bwfill (A,1,1), R8) B = logical([0 1 0 0 1; 1 0 1 0 0; 1 0 1 1 0; 1 1 1 0 0; 1 0 0 1 0]); assert (bwfill (A,3,3,4), B) assert (bwfill (A,3,3,8), B) assert (bwfill (A,3,3), B) C = logical ([0 1 1 1 1; 1 0 1 1 1; 1 0 1 1 1; 1 1 1 1 1; 1 0 0 1 1]); assert (bwfill (A,3,1,8), C) assert (bwfill (A,3,1,4), R4) assert (bwfill (A, [3 1], [1 3], 4), R4); D = logical([0 1 1 1 1; 1 0 1 1 1; 1 0 1 1 1; 1 1 1 1 1; 1 0 0 1 1]); assert (bwfill (A, [3 1], [1 3], 8), D); assert (bwfill (A, [3 1], [1 3]), D); E = logical ([0 1 0 0 1; 1 0 1 0 0; 1 0 1 1 0; 1 1 1 0 0; 1 0 0 1 0]); assert (bwfill (A, "holes", 4), E); F = logical ([1 1 0 0 1; 1 1 1 0 0; 1 1 1 1 0; 1 1 1 0 0; 1 0 0 1 0]); assert (bwfill (A, "holes", 8), F); assert (bwfill (A, "holes"), F); ***** error id=Octave:invalid-fun-call bwfill () ***** error id=Octave:invalid-fun-call bwfill ("aaa") ***** error id=Octave:invalid-fun-call bwfill (rand (5) > 0.5) ***** error id=Octave:invalid-fun-call bwfill (rand (5) > 0.5, 2) ***** error bwfill (rand (5) > 0.5, "holes", 1) ***** error bwfill (rand (5) > 0.5, 2, 2, 5) ***** error id=Octave:invalid-fun-call bwfill (rand (5) > 0.5, "xxx") ***** error id=Octave:invalid-fun-call bwfill (rand (5) > 0.5, 2, 2, 4, 5) ***** error id=Octave:invalid-fun-call bwfill (rand (5) > 0.5, "holes", 4, 2) 10 tests, 10 passed, 0 known failure, 0 skipped [src/bwlabeln.cc] >>>>> /<>/src/bwlabeln.cc ***** shared a2d, a3d a2d = [1 0 0 0 0 0 1 0 0 1 1 0 0 1 0 1 0 1 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 1 1 1 0 0 0 0 1 1 0 1 0 0 0 1 0 0 1 1 0 0 0 0 1 0 1 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 1 1 0 0 1]; a3d = a2d; a3d(:,:,2) = [ 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 0 0 1 1 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0 0 0]; a3d(:,:,3) = [ 1 0 0 0 0 0 0 0 0 0 0 1 0 1 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0]; ***** test label2dc4 = [ 1 0 0 0 0 0 8 0 0 13 1 0 0 4 0 6 0 10 0 13 1 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 5 5 5 0 0 0 0 2 2 0 5 0 0 0 11 0 0 2 2 0 0 0 0 9 0 12 0 2 2 0 0 0 0 0 0 0 0 2 2 0 0 0 7 7 0 0 14]; assert (bwlabeln (a2d, 4), label2dc4) assert (bwlabeln (a2d, [0 1 0; 1 1 1; 0 1 0]), label2dc4) assert (bwlabeln (a2d, conndef (2, "minimal")), label2dc4) assert (bwlabeln (a2d, conndef (3, "minimal")), label2dc4) ***** test label2dc8 = [ 1 0 0 0 0 0 5 0 0 8 1 0 0 3 0 5 0 5 0 8 1 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 4 4 4 0 0 0 0 2 2 0 4 0 0 0 7 0 0 2 2 0 0 0 0 7 0 7 0 2 2 0 0 0 0 0 0 0 0 2 2 0 0 0 6 6 0 0 9]; assert (bwlabeln (a2d, 8), label2dc8) assert (bwlabeln (a2d, ones (3)), label2dc8) assert (bwlabeln (a2d, conndef (2, "maximal")), label2dc8) assert (bwlabeln (a2d, conndef (3, "maximal")), label2dc8) ***** test label3dc8 = [ 1 0 0 0 0 0 5 0 0 8 1 0 0 3 0 5 0 5 0 8 1 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 4 4 4 0 0 0 0 2 2 0 4 0 0 0 7 0 0 2 2 0 0 0 0 7 0 7 0 2 2 0 0 0 0 0 0 0 0 2 2 0 0 0 6 6 0 0 9]; label3dc8(:,:,2) = [ 0 0 0 0 0 0 0 0 0 0 10 0 0 12 12 0 0 16 0 0 0 0 0 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11 0 0 0 0 0 0 0 0 11 11 0 0 13 13 0 0 0 0 11 11 0 13 0 0 0 0 0 0 11 0 0 0 0 0 14 0 0 0 0 11 0 0 0 0 0 0 0 17 11 11 0 0 0 0 15 0 0 0]; label3dc8(:,:,3) = [ 18 0 0 0 0 0 0 0 0 0 0 18 0 20 20 0 0 22 0 0 0 0 0 20 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 21 21 21 0 0 0 0 0 0 0 0 0 0 0 0 0 0 19 0 0 0 0 0 0 0 0 0 19 19 0 0 0 0 0 0 0 23 19 19 0 0 0 0 0 0 0 0]; assert (bwlabeln (a3d, 8), label3dc8) assert (bwlabeln (a3d, ones (3, 3)), label3dc8) assert (bwlabeln (a3d, conndef (2, "maximal")), label3dc8) ***** test label3dc26 = [ 1 0 0 0 0 0 3 0 0 7 1 0 0 3 0 3 0 3 0 7 1 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 4 4 4 0 0 0 0 2 2 0 4 0 0 0 6 0 0 2 2 0 0 0 0 6 0 6 0 2 2 0 0 0 0 0 0 0 0 2 2 0 0 0 5 5 0 0 6]; label3dc26(:,:,2) = [ 0 0 0 0 0 0 0 0 0 0 1 0 0 3 3 0 0 3 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 0 4 4 0 0 0 0 2 2 0 4 0 0 0 0 0 0 2 0 0 0 0 0 6 0 0 0 0 2 0 0 0 0 0 0 0 6 2 2 0 0 0 0 5 0 0 0]; label3dc26(:,:,3) = [ 1 0 0 0 0 0 0 0 0 0 0 1 0 3 3 0 0 3 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 4 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 6 2 2 0 0 0 0 0 0 0 0]; assert (bwlabeln (a3d, 26), label3dc26) assert (bwlabeln (a3d, ones (3, 3, 3)), label3dc26) assert (bwlabeln (a3d, conndef (3, "maximal")), label3dc26) ***** test label3dc18 = [ 1 0 0 0 0 0 3 0 0 7 1 0 0 3 0 3 0 3 0 7 1 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 4 4 4 0 0 0 0 2 2 0 4 0 0 0 6 0 0 2 2 0 0 0 0 6 0 6 0 2 2 0 0 0 0 0 0 0 0 2 2 0 0 0 5 5 0 0 8]; label3dc18(:,:,2) = [ 0 0 0 0 0 0 0 0 0 0 1 0 0 3 3 0 0 3 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 2 2 0 0 4 4 0 0 0 0 2 2 0 4 0 0 0 0 0 0 2 0 0 0 0 0 6 0 0 0 0 2 0 0 0 0 0 0 0 8 2 2 0 0 0 0 5 0 0 0]; label3dc18(:,:,3) = [ 1 0 0 0 0 0 0 0 0 0 0 1 0 3 3 0 0 3 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 4 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 8 2 2 0 0 0 0 0 0 0 0]; assert (bwlabeln (a3d, 18), label3dc18) ***** test label2dc3 = [ 1 0 0 0 0 0 11 0 0 17 1 0 0 5 0 8 0 14 0 17 1 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 2 3 0 6 7 9 0 0 0 0 2 3 0 6 0 0 0 15 0 0 2 3 0 0 0 0 12 0 16 0 2 3 0 0 0 0 0 0 0 0 2 3 0 0 0 10 13 0 0 18]; assert (bwlabeln (a2d, [1 1 1]'), label2dc3) label3dc3 = label2dc3; label3dc3(:,:,2) = [ 0 0 0 0 0 0 0 0 0 0 19 0 0 24 26 0 0 31 0 0 0 0 0 24 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 22 0 0 0 0 0 0 0 0 20 22 0 0 27 28 0 0 0 0 20 22 0 25 0 0 0 0 0 0 20 0 0 0 0 0 29 0 0 0 0 23 0 0 0 0 0 0 0 32 21 23 0 0 0 0 30 0 0 0]; label3dc3(:,:,3) = [ 33 0 0 0 0 0 0 0 0 0 0 35 0 37 39 0 0 42 0 0 0 0 0 37 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 38 40 41 0 0 0 0 0 0 0 0 0 0 0 0 0 0 34 0 0 0 0 0 0 0 0 0 34 36 0 0 0 0 0 0 0 43 34 36 0 0 0 0 0 0 0 0]; assert (bwlabeln (a3d, [1 1 1]'), label3dc3) ***** test label2dc1 = zeros (size (a2d)); label2dc1(a2d != 0) = 1:nnz (a2d); assert (bwlabeln (a2d, [1]), label2dc1); assert (bwlabeln (a2d, [0 1 0]'), label2dc1); label3dc1 = zeros (size (a3d)); label3dc1(a3d != 0) = 1:nnz (a3d); assert (bwlabeln (a3d, [1]), label3dc1); assert (bwlabeln (a3d, [0 1 0]'), label3dc1); ***** shared in in = rand (10) > 0.8; ***** assert (bwlabel (in, 4), bwlabeln (in, 4)); ***** assert (bwlabel (in, 4), bwlabeln (in, [0 1 0; 1 1 1; 0 1 0])); ***** assert (bwlabel (in, 8), bwlabeln (in, 8)); ***** assert (bwlabel (in, 8), bwlabeln (in, [1 1 1; 1 1 1; 1 1 1])); ***** assert (bwlabel (logical ([0 1 0; 0 0 0; 1 0 1])), [0 2 0; 0 0 0; 1 0 3]); ***** assert (bwlabel ([0 1 0; 0 0 0; 1 0 1]), [0 2 0; 0 0 0; 1 0 3]); ***** assert (bwlabel ([0 -1 0; 0 0 0; 5 0 0.2]), [0 2 0; 0 0 0; 1 0 3]); ***** shared in, out in = [ 0 1 1 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 1 0 1 0 1 0 1 1 1 0 0 0 0 0 1 1 0]; out = [ 0 3 3 0 0 9 0 0 0 0 0 0 0 5 0 0 0 0 0 13 0 4 4 0 0 0 0 0 13 13 1 0 0 0 0 0 0 11 0 0 0 0 0 0 0 10 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 8 8 0 12 0 0 0 0 0 7 0 8 0 12 0 14 2 2 0 0 0 0 0 12 12 0]; ***** assert (nthargout ([1 2], @bwlabel, in, 4), {out, 14}); ***** assert (nthargout ([1 2], @bwlabel, logical (in), 4), {out, 14}); out = [ 0 3 3 0 0 7 0 0 0 0 0 0 0 3 0 0 0 0 0 11 0 4 4 0 0 0 0 0 11 11 1 0 0 0 0 0 0 9 0 0 0 0 0 0 0 8 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 5 5 0 10 0 0 0 0 0 6 0 5 0 10 0 12 2 2 0 0 0 0 0 10 10 0]; ***** assert (nthargout ([1 2], @bwlabel, in, 6), {out, 12}); ***** assert (nthargout ([1 2], @bwlabel, logical (in), 6), {out, 12}); ## The labeled image is not the same as Matlab, but they are ## labeled correctly. Do we really need to get them properly ## ordered? (the algorithm in bwlabeln does it) mout = [0 1 1 0 0 4 0 0 0 0 0 0 0 1 0 0 0 0 0 5 0 1 1 0 0 0 0 0 5 5 1 0 0 0 0 0 0 5 0 0 0 0 0 0 0 5 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 3 3 0 6 0 0 0 0 0 3 0 3 0 6 0 6 2 2 0 0 0 0 0 6 6 0]; out = [ 0 2 2 0 0 4 0 0 0 0 0 0 0 2 0 0 0 0 0 5 0 2 2 0 0 0 0 0 5 5 2 0 0 0 0 0 0 5 0 0 0 0 0 0 0 5 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 3 3 0 6 0 0 0 0 0 3 0 3 0 6 0 6 1 1 0 0 0 0 0 6 6 0]; ***** assert (nthargout ([1 2], @bwlabel, in, 8), {out, 6}); ***** assert (nthargout ([1 2], @bwlabel, logical (in), 8), {out, 6}); ***** error bwlabel (rand (10, 10, 10) > 0.8, 4) ***** error bwlabel (rand (10) > 0.8, "text") ***** error bwlabel ("text", 6) 23 tests, 23 passed, 0 known failure, 0 skipped [src/graycomatrix.cc] >>>>> /<>/src/graycomatrix.cc ***** shared a ***** test a = [0 0 0 1 2; 1 1 0 1 1; 2 2 1 0 0; 1 1 0 2 0; 0 0 1 0 1]; squeeze(graycomatrix(a, 3, 1, -pi/4)) == [4 2 0; 2 3 2; 1 2 0]; ***** assert(size(graycomatrix(a, 3, 1:5, [0:3]*-pi/4)), [3, 3, 5, 4]) ***** demo # Pattern Recognition Engineering (Nadler & Smith) # Digital Image Processing (Gonzales & Woods), p. 668 a = [0 0 0 1 2; 1 1 0 1 1; 2 2 1 0 0; 1 1 0 2 0; 0 0 1 0 1]; graycomatrix(a, 3, 1, [0 1]*-pi/4) 2 tests, 2 passed, 0 known failure, 0 skipped [src/imreconstruct.cc] >>>>> /<>/src/imreconstruct.cc ***** function recon = parallel_reconstruction (marker, mask, conn = conndef (ndims (marker), "maximal")) do previous = marker; marker = imdilate (marker, conn); ## FIXME https://savannah.gnu.org/bugs/index.php?43712 if (strcmp (class (marker), "logical")) marker = marker & mask; else marker = min (marker, mask); endif until (all ((marker == previous)(:))) recon = marker; ***** endfunction ***** test for cl = {"int8", "uint8", "int16", "uint16", "int32", "uint32"} cl = cl{1}; a = randi ([intmin(cl) intmax(cl)-30], 100, 100, cl); b = a + randi (20, 100, 100, cl); assert (imreconstruct (a, b), parallel_reconstruction (a, b)) endfor for cl = {"double", "single"} cl = cl{1}; a = (rand (100, 100, cl) - 0.5) .* 1000; b = a + rand (100, 100, cl) * 100; assert (imreconstruct (a, b), parallel_reconstruction (a, b)) endfor ***** test for cl = {"int8", "uint8", "int16", "uint16", "int32", "uint32"} cl = cl{1}; a = randi ([intmin(cl) intmax(cl)-30], 100, 100, cl); b = a + randi (20, 100, 100, cl); c = [0 1 0; 1 1 1; 0 1 0]; assert (imreconstruct (a, b, c), parallel_reconstruction (a, b, c)) endfor ***** test a = randi (210, 100, 100); b = a + randi (20, 100, 100); c = ones (3, 1); assert (imreconstruct (a, b, c), parallel_reconstruction (a, b, c)) ***** test a = randi (210, 500, 500, 10, 4); b = a + randi (20, 500, 500, 10, 4); c = ones (3, 3, 3); assert (imreconstruct (a, b, c), parallel_reconstruction (a, b, c)) ***** test a = randi (210, 500, 500, 10, 4); b = a + randi (20, 500, 500, 10, 4); c = conndef (4, "minimal"); assert (imreconstruct (a, b, c), parallel_reconstruction (a, b, c)) ***** test a = [ 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0]; b = [ 0 1 0 0 0 0 0 1 1 0 1 1 0 0 0 1 0 1 1 0 1 1 0 0 1 0 0 0 0 0 1 1 0 0 0 1 1 0 0 0 1 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 1 0 0 1 0 1]; c = [ 0 1 0 0 0 0 0 1 1 0 1 1 0 0 0 1 0 1 1 0 1 1 0 0 1 0 0 0 0 0 1 1 0 0 0 1 1 0 0 0 1 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0]; assert (imreconstruct (logical (a), logical (b)), logical (c)); c = [ 0 1 0 0 0 0 0 1 1 0 1 1 0 0 0 0 0 1 1 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 1 1 0 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0]; assert (imreconstruct (logical (a), logical (b), [0 1 0; 1 1 1; 0 1 0]), logical (c)); ***** test do b = rand (100, 100, 100) > 0.98; until (nnz (b) > 4) b = imdilate (b, ones (5, 5, 5)); a = false (size (b)); f = find (b); a(f(randi (numel (f), 6, 1))) = true; assert (imreconstruct (a, b), parallel_reconstruction (a, b)) ***** test a = randi (200, 100,100, 10, 10); b = a + randi (20, 100,100, 10, 10); c1 = ones (3, 3, 3); c2 = zeros (3, 3, 3, 3); c2(:,:,:,2) = c1; assert (imreconstruct (a, b, c1), imreconstruct (a, b, c2)) ***** test ## Values in MARKER above MASK should be clipped (bug #48794) ## (well, treated internally as if they were clipped) mask = logical ([1 1 1; 1 0 1; 1 1 1]); assert (imreconstruct (true (3, 3), mask), mask) mask = ones (5, 5); mask(2:4,2:4) = 0; assert (imreconstruct (ones (5, 5), mask), mask) mask = ones (5, 5); mask(2:4,2:4) = 0; assert (imreconstruct (repmat (2, [5, 5]), mask), mask) mask = ones (5, 5); mask(2:4,2:4) = 0; assert (imreconstruct (repmat (2, [5, 5]), mask), mask) marker = ones (3, 3, 3, 3); mask = marker; mask(2, 2, 2, 2) = 0; assert (imreconstruct (marker, mask), mask) marker = randi (210, 100, 100); assert (imreconstruct (marker +1, marker), marker) assert (imreconstruct (marker +1, marker), imreconstruct (marker, marker)) 9 tests, 9 passed, 0 known failure, 0 skipped [src/__spatial_filtering__.cc] >>>>> /<>/src/__spatial_filtering__.cc ***** error __spatial_filtering__ (ones (10), ones (3), "std", ones (10), 0) ***** error __spatial_filtering__ (ones (10), ones (3), "std", ones (3, 3, 3), 0) ***** error __spatial_filtering__ (ones (10), ones (3), "std", ones (1, 9), 0) ***** shared a, domain, s, out a = [ 82 2 97 43 79 43 41 65 51 11 60 65 21 56 94 77 36 38 75 39 32 68 78 1 16 75 76 90 81 56 43 90 82 41 36 1 87 19 18 63 63 64 2 48 18 43 38 25 22 99 12 46 90 79 3 92 39 79 10 22 38 98 11 10 40 90 88 38 4 76 54 37 9 4 33 98 36 47 53 57 38 76 82 50 14 74 64 99 7 33 88 96 41 62 84 89 97 23 41 3]; domain = ones (3); s = zeros (3); out = [ 2 1 1 1 16 36 36 11 21 1 1 1 1 1 18 18 2 1 1 1 1 1 18 18 2 2 2 1 1 1 10 10 2 2 2 3 3 25 4 4 9 4 3 3 3 36 4 4 9 4 4 4 14 36 4 4 9 4 4 4 14 23 7 3]; ***** assert (__spatial_filtering__ (a, domain, "ordered", s, 1), out); out = [ 97 97 97 94 94 90 90 90 90 90 94 94 94 90 90 90 90 90 82 75 87 90 90 99 90 90 90 92 92 92 87 99 98 98 90 92 92 92 88 99 98 98 90 98 98 98 88 79 98 98 82 98 98 99 99 99 96 96 84 98 98 99 99 99]; ***** assert (__spatial_filtering__ (a, domain, "ordered", s, nnz (domain)), out); out = [ 60 43 43 43 43 43 51 51 60 56 36 36 36 38 38 39 63 48 18 18 36 38 25 25 46 48 36 36 36 38 22 22 38 46 11 40 39 39 25 22 37 11 10 33 39 47 38 38 38 11 11 33 40 64 38 38 41 41 33 50 64 64 41 33]; ***** assert (__spatial_filtering__ (a, domain, "ordered", s, 4), out); out = [ 31.223 33.788 35.561 31.011 26.096 20.630 20.403 24.712 23.428 29.613 32.376 34.002 33.593 32.470 29.605 26.333 27.834 32.890 29.903 24.207 30.083 32.497 31.898 32.600 32.027 28.995 33.530 31.002 32.241 32.004 27.501 32.070 34.682 36.030 33.046 33.745 32.509 27.352 28.607 34.180 32.709 37.690 32.992 40.036 34.456 26.656 27.685 26.863 30.971 36.227 25.775 34.873 29.917 25.269 32.292 30.410 29.135 31.626 30.056 33.594 30.814 28.853 30.917 29.120]; ***** assert (__spatial_filtering__ (a, domain, "std", s), out, 0.001); out = [ 95 96 96 93 78 54 54 79 69 89 93 93 93 89 72 72 88 89 81 74 86 89 72 81 88 88 88 91 91 91 77 89 96 96 88 89 89 67 84 95 89 94 87 95 95 62 84 75 89 94 78 94 84 63 95 95 87 92 80 94 84 76 92 96]; ***** assert (__spatial_filtering__ (a, domain, "range", s), out); domain = [ 1 1 0 0 1 1 0 1 0]; out = [ 2 2 1 16 36 36 38 39 60 1 1 16 1 36 19 18 32 2 1 1 1 19 18 18 2 2 18 3 1 1 19 10 46 2 2 3 18 38 10 4 11 9 4 3 3 36 4 4 9 4 4 10 36 36 38 4 37 9 4 4 33 36 7 7]; ***** assert (__spatial_filtering__ (a, domain, "ordered", s, 1), out); out = [ 82 97 97 94 79 76 90 81 90 82 56 94 94 90 90 81 90 82 78 36 87 87 90 90 90 90 82 43 92 87 87 99 98 90 79 92 92 88 79 25 98 90 90 90 98 92 79 79 98 98 50 98 98 90 99 57 96 82 62 84 98 99 99 53]; ***** assert (__spatial_filtering__ (a, domain, "ordered", s, nnz (domain)), out); out = [ 68 78 94 79 77 43 75 75 78 78 41 75 77 87 81 75 82 78 48 18 75 76 76 81 64 90 79 41 43 39 79 22 90 79 48 48 90 79 38 22 46 46 79 79 92 88 47 76 76 82 33 40 90 88 88 53 82 50 50 74 89 98 47 47]; ***** assert (__spatial_filtering__ (a, domain, "ordered", s, 4), out); out = [ 34.2389 39.2772 39.6699 31.6812 20.7364 16.5439 22.2419 17.2395 11.9248 36.3084 21.6217 30.8350 36.4047 21.6726 30.9144 26.1017 22.2980 33.2746 27.5808 14.5017 36.8890 29.0259 34.6020 33.2521 32.2490 37.9579 26.9685 17.1959 32.5346 31.3847 33.5976 36.8280 21.3354 40.1833 34.0044 33.9882 32.9894 24.1102 25.6613 9.0995 35.4641 35.3794 39.0871 35.4753 39.9775 28.7193 26.7451 35.6553 35.2179 45.3398 19.3210 35.2987 28.4042 24.0832 26.8421 25.0539 23.4307 26.2812 26.3287 35.6959 25.2646 28.1016 34.9829 17.9221]; ***** assert (__spatial_filtering__ (a, domain, "std", s), out, 0.001); out = [ 80 95 96 78 43 40 52 42 30 81 55 78 93 54 71 63 58 80 77 35 86 68 72 72 88 88 64 40 91 86 68 89 52 88 77 89 74 50 69 21 87 81 86 87 95 56 75 75 89 94 46 88 62 54 61 53 59 73 58 80 65 63 92 46]; ***** assert (__spatial_filtering__ (a, domain, "range", s), out); s = [ 1 -3 4 6 -7 2 -1 3 -5]; out = [ -1 3 4 19 38 29 31 41 61 3 -6 9 4 33 22 21 33 5 -2 2 -6 21 12 11 4 -5 20 6 -2 2 16 13 39 -1 3 -4 19 32 12 3 13 4 3 0 4 36 6 -3 11 2 -3 11 38 29 35 1 34 6 1 5 34 33 9 0]; ***** assert (__spatial_filtering__ (a, domain, "ordered", s, 1), out); out = [ 83 94 98 87 80 79 93 84 93 85 53 91 95 92 83 74 84 75 79 29 89 80 87 91 87 93 83 45 95 84 88 101 101 83 72 94 93 91 72 26 91 87 91 92 101 93 76 80 95 99 53 100 91 91 102 59 99 75 65 87 95 101 92 50]; ***** assert (__spatial_filtering__ (a, domain, "ordered", s, nnz (domain)), out); out = [ 71 81 96 79 78 44 77 68 80 71 44 77 78 90 83 72 83 75 51 21 72 76 77 78 57 91 82 42 40 42 82 20 92 81 45 49 85 81 41 24 43 47 76 80 90 81 50 78 79 85 35 37 87 85 89 46 84 52 43 76 92 100 44 48]; ***** assert (__spatial_filtering__ (a, domain, "ordered", s, 4), out); out = [ 34.903 40.206 39.885 28.627 20.620 19.248 25.209 17.111 14.536 35.865 23.221 32.230 34.903 23.923 28.879 22.621 20.635 30.113 29.351 11.610 38.863 25.936 34.608 34.482 29.811 40.998 28.279 17.897 34.666 29.978 36.150 38.213 25.066 39.240 30.013 37.300 31.856 27.428 22.884 10.281 31.890 34.761 39.645 37.526 39.336 27.031 25.648 39.285 35.017 47.776 22.764 35.912 25.460 25.636 29.861 24.566 25.213 25.000 26.391 38.451 24.631 31.305 31.118 20.611]; ***** assert (__spatial_filtering__ (a, domain, "std", s), out, 0.001); out = [ 84 91 94 68 42 50 62 43 32 82 59 82 91 59 61 53 51 70 81 27 95 59 75 80 83 98 63 39 97 82 72 88 62 84 69 98 74 59 60 23 78 83 88 92 97 57 70 83 84 97 56 89 53 62 67 58 65 69 64 82 61 68 83 50]; ***** assert (__spatial_filtering__ (a, domain, "range", s), out); 18 tests, 18 passed, 0 known failure, 0 skipped [src/bwdist.cc] >>>>> /<>/src/bwdist.cc ***** shared bw bw = [0 1 0 1 0 1 1 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 0 0 0 1 0 0 0 1 0 0 0 1 1]; ***** test out = [ 1.00000 0.00000 1.00000 0.00000 1.00000 0.00000 0.00000 1.00000 1.41421 1.00000 1.00000 0.00000 0.00000 1.00000 1.00000 1.41421 2.23607 2.00000 1.00000 0.00000 0.00000 1.00000 2.00000 2.00000 2.00000 1.41421 1.00000 0.00000 0.00000 1.00000 1.00000 1.00000 1.00000 1.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 1.00000 1.00000 1.00000 0.00000 0.00000 0.00000 0.00000 1.00000 1.41421 1.00000 0.00000 1.00000 1.00000 1.00000 0.00000 1.00000 2.00000 1.00000 0.00000 0.00000]; out = single (out); assert (bwdist (bw), out, 0.0001); # default is euclidean assert (bwdist (bw, "euclidean"), out, 0.0001); assert (bwdist (logical (bw), "euclidean"), out, 0.0001); ***** test out = [ 1 0 1 0 1 0 0 1 1 1 1 0 0 1 1 1 2 2 1 0 0 1 2 2 2 1 1 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 1 1 0 1 1 1 0 1 2 1 0 0]; out = single (out); assert (bwdist (bw, "chessboard"), out); ***** test out = [ 1 0 1 0 1 0 0 1 2 1 1 0 0 1 1 2 3 2 1 0 0 1 2 2 2 2 1 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 2 1 0 1 1 1 0 1 2 1 0 0]; out = single (out); assert (bwdist (bw, "cityblock"), out); ***** test out = [ 1.00000 0.00000 1.00000 0.00000 1.00000 0.00000 0.00000 1.00000 1.41421 1.00000 1.00000 0.00000 0.00000 1.00000 1.00000 1.41421 2.41421 2.00000 1.00000 0.00000 0.00000 1.00000 2.00000 2.00000 2.00000 1.41421 1.00000 0.00000 0.00000 1.00000 1.00000 1.00000 1.00000 1.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 1.00000 1.00000 1.00000 0.00000 0.00000 0.00000 0.00000 1.00000 1.41421 1.00000 0.00000 1.00000 1.00000 1.00000 0.00000 1.00000 2.00000 1.00000 0.00000 0.00000]; out = single (out); assert (bwdist (bw, "quasi-euclidean"), out, 0.0001); bw(logical (bw)) = 3; # there is no actual check if matrix is binary or 0 and 1 assert (bwdist (bw, "quasi-euclidean"), out, 0.0001); bw(logical (bw)) = -2; # anything non-zero is considered object assert (bwdist (bw, "quasi-euclidean"), out, 0.0001); ***** test bw = [ 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1]; dist = [ 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0]; dist = single (dist); c = [ 1 5 9 13 13 21 25 29 33 2 6 10 14 14 22 26 30 34 3 7 10 15 19 23 27 31 35 8 8 12 16 20 24 28 32 36]; c = uint32 (c); [dout, cout] = bwdist (bw, "euclidean"); assert (dout, dist) assert (cout, c) ***** test bw = [ 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 1 1 0]; out = single ([ 1.00000 0.00000 0.00000 1.00000 2.00000 1.00000 0.00000 1.00000 1.00000 1.00000 1.00000 sqrt(2) sqrt(2)+1 sqrt(2) 1.00000 sqrt(2) 0.00000 0.00000 1.00000 2.00000 2.00000 sqrt(2) 1.00000 sqrt(2) 1.00000 1.00000 sqrt(2) sqrt(2) 1.00000 1.00000 0.00000 1.00000 2.00000 2.00000 2.00000 1.00000 0.00000 1.00000 1.00000 0.00000 1.00000 sqrt(2) 2.00000 sqrt(2) 1.00000 sqrt(2) sqrt(2) 1.00000 0.00000 1.00000 1.00000 sqrt(2) sqrt(2) 1.00000 1.00000 sqrt(2) 1.00000 1.00000 0.00000 1.00000 1.00000 0.00000 0.00000 1.00000 ]); assert (bwdist (bw, "quasi-euclidean"), out); ***** error bwdist (bw, "not a valid method"); ***** test ## Special case of there being no foreground element (bug #50874) expected_dist = single (Inf (2, 2)); expected_idx = uint32 ([0 0; 0 0]); [dist, idx] = bwdist (false (2, 2)); assert (dist, expected_dist) assert (idx, expected_idx) [dist, idx] = bwdist (zeros (2, 2)); assert (dist, expected_dist) assert (idx, expected_idx) ***** test ## Special case of 1D input (bug #50874) assert (bwdist ([1 0]), single ([0 1])) assert (bwdist ([1 0]'), single ([0 1]')) assert (bwdist ([0 1 0 0 0 0 1 1]), single ([1 0 1 2 2 1 0 0])) assert (bwdist ([1 1 0 0 0 0 1 1]'), single ([0 0 1 2 2 1 0 0])') assert (bwdist ([1 0], "euclidean"), single ([0 1])) assert (bwdist ([1 0], "chessboard"), single ([0 1])) assert (bwdist ([1 0], "cityblock"), single ([0 1])) assert (bwdist ([1 0], "quasi-euclidean"), single ([0 1])) ***** test ## test 1D input with 2nd output argument (indices) (bug #50874) expected_dist = single ([1 0 1]); expected_idx = uint32 ([2 2 2]); [dist, idx] = bwdist ([0 1 0]); assert (dist, expected_dist) assert (idx, expected_idx) [dist, idx] = bwdist ([0 1 0]'); assert (dist, expected_dist') assert (idx, expected_idx') expected_dist = single ([0 0 1 0 0]); expected_idx = uint32 ([1 2 2 4 5]); [dist, idx] = bwdist ([1 1 0 1 1]); assert (dist, expected_dist) assert (idx, expected_idx) expected_dist = single ([1 0 1 2 1 0 0 0 1 1 0 0 0 0 1 2 3 4]); expected_idx = uint32 ([2 2 2 2 6 6 7 8 8 11 11 12 13 14 14 14 14 14]); [dist, idx] = bwdist ([0 1 0 0 0 1 1 1 0 0 1 1 1 1 0 0 0 0]); assert (dist, expected_dist) assert (idx, expected_idx) expected_dist = single ([0 0 1 2 1 0 0 0 1 1 0 0 0 0 1 2 1 0]); expected_idx = uint32 ([1 2 2 2 6 6 7 8 8 11 11 12 13 14 14 14 18 18]); [dist, idx] = bwdist ([1 1 0 0 0 1 1 1 0 0 1 1 1 1 0 0 0 1]); assert (dist, expected_dist) assert (idx, expected_idx) ***** test assert (bwdist ([0 0]), single ([Inf, Inf])) assert (bwdist ([0 0]'), single ([Inf, Inf]')) ***** xtest ## This is Matlab incompatible because the bottom right corners is ## equally distant to the top right and bottom left corners. However, ## both are correct answers, and the returned value is just ## implementation dependent. bw = logical ([ 0 0 1 0 0 0 1 0 0 ]); expected_dist = single ([ 2.0 1.0 0.0 1.0 sqrt(2) 1.0 0.0 1.0 2.0 ]); expected_idx = uint32 ([ 3 7 7 3 3 7 3 3 3 ]); [dist, idx] = bwdist (bw); assert (dist, expected_dist) assert (idx, expected_idx) !!!!! known failure ASSERT errors for: assert (idx,expected_idx) Location | Observed | Expected | Reason (3,3) 7 3 Abs err 4 exceeds tol 0 by 4 12 tests, 11 passed, 1 known failure, 0 skipped [src/conndef.cc] >>>>> /<>/src/conndef.cc ***** assert (conndef (1, "minimal"), [1; 1; 1]); ***** assert (conndef (2, "minimal"), [0 1 0; 1 1 1; 0 1 0]); ***** test C = zeros (3, 3, 3); C(:,2,2) = 1; C(2,:,2) = 1; C(2,2,:) = 1; assert (conndef (3, "minimal"), C); ***** test C = zeros (3, 3, 3, 3); C(:,:,2,1) = [0 0 0 0 1 0 0 0 0]; C(:,:,1,2) = [0 0 0 0 1 0 0 0 0]; C(:,:,2,2) = [0 1 0 1 1 1 0 1 0]; C(:,:,3,2) = [0 0 0 0 1 0 0 0 0]; C(:,:,2,3) = [0 0 0 0 1 0 0 0 0]; assert (conndef (4, "minimal"), C); ***** assert (conndef (1, "maximal"), ones (3, 1)); ***** assert (conndef (2, "maximal"), ones (3, 3)); ***** assert (conndef (3, "maximal"), ones (3, 3, 3)); ***** assert (conndef (4, "maximal"), ones (3, 3, 3, 3)); ***** assert (nnz (conndef (3, "minimal")), 7) ***** assert (nnz (conndef (4, "minimal")), 9) ***** assert (nnz (conndef (5, "minimal")), 11) ***** assert (nnz (conndef (6, "minimal")), 13) ***** assert (find (conndef (3, "minimal")), [5 11 13 14 15 17 23](:)) ***** assert (find (conndef (4, "minimal")), [14 32 38 40 41 42 44 50 68](:)) ***** assert (find (conndef (5, "minimal")), [ 41 95 113 119 121 122 123 125 131 149 203](:)) ***** assert (find (conndef (6, "minimal")), [ 122 284 338 356 362 364 365 366 368 374 392 446 608](:)) ***** error conndef () ***** error conndef (-2, "minimal") ***** error conndef (char (2), "minimal") ***** error conndef ("minimal", 3) ***** error conndef (3, "invalid") ***** error conndef (10) ***** assert (conndef (2, "minimal"), conndef (4)) ***** assert (conndef (2, "maximal"), conndef (8)) ***** assert (conndef (3, "minimal"), conndef (6)) ***** assert (conndef (3, "maximal"), conndef (26)) ***** assert (conndef (18), reshape ([0 1 0 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 0 1 0 1 1 1 0 1 0], [3 3 3])) ***** test iptcheckconn ( 4, "func", "var") ***** test iptcheckconn ( 6, "func", "var") ***** test iptcheckconn ( 8, "func", "var") ***** test iptcheckconn (18, "func", "var") ***** test iptcheckconn (26, "func", "var") ***** test iptcheckconn (1, "func", "var") ***** test iptcheckconn (ones (3, 1), "func", "var") ***** test iptcheckconn (ones (3, 3), "func", "var") ***** test iptcheckconn (ones (3, 3, 3), "func", "var") ***** test iptcheckconn (ones (3, 3, 3, 3), "func", "var") ***** error iptcheckconn (3, "func", "VAR"); ***** error iptcheckconn ([1 1 1; 1 0 1; 1 1 1], "func", "VAR"); ***** error iptcheckconn ([1 2 1; 1 1 1; 1 1 1], "func", "VAR"); ***** error iptcheckconn ([0 1 1; 1 1 1; 1 1 1], "func", "VAR"); ***** error iptcheckconn (ones (3, 3, 3, 4), "func", "VAR"); 42 tests, 42 passed, 0 known failure, 0 skipped [src/hough_line.cc] >>>>> /<>/src/hough_line.cc ***** test I = zeros(100, 100); I(1,1) = 1; I(100,100) = 1; I(1,100) = 1; I(100, 1) = 1; I(50,50) = 1; [J, R] = houghtf(I); J = J / max(J(:)); assert(size(J) == [length(R) 181]); ***** demo I = zeros(100, 150); I(30,:) = 1; I(:, 65) = 1; I(35:45, 35:50) = 1; for i = 1:90, I(i,i) = 1;endfor I = imnoise(I, 'salt & pepper'); imshow(I); J = houghtf(I); J = J / max(J(:)); imshow(J); 1 test, 1 passed, 0 known failure, 0 skipped [src/intlut.cc] >>>>> /<>/src/intlut.cc ***** assert (intlut (uint8 (1:4), uint8 ( 255:-1:0)), uint8 (254:-1:251)); ***** assert (intlut (uint16 (1:4), uint16 (65535:-1:0)), uint16 (65534:-1:65531)); ***** assert (intlut (int16 (1:4), int16 (32767:-1:-32768)), int16 (-2:-1:-5)); ***** assert (intlut (uint8 (255), uint8 (0:255)), uint8 (255)); ***** assert (intlut (uint16 (65535), uint16 (0:65535)), uint16 (65535)); ***** assert (intlut (int16 (32767), int16 (-32768:32767)), int16 (32767)); ***** error intlut () ***** error intlut ("text") ***** error intlut (1:20, uint8 (0:255)); ***** error intlut (uint16 (1:20), uint8 (0:255)); ***** error intlut (uint8 (1:20), uint8 (0:200)); ***** error intlut (uint16 (1:20), uint16 (0:500)); ***** error intlut (uint8 (56), uint8 (magic (16) -1)) 13 tests, 13 passed, 0 known failure, 0 skipped [src/imerode.cc] >>>>> /<>/src/imerode.cc ***** assert (imerode (eye (3), [1]), eye (3)); ***** assert (imerode (eye (3), []), Inf (3, 3)); ***** test im = [0 1 0 1 1 1 0 1 0]; se = [1 0 0 0 1 0 0 1 1]; assert (imerode (im, se), [0 1 0; 0 0 0; 0 1 0]); assert (imerode (logical(im), se), logical ([0 1 0; 0 0 0; 0 1 0])); assert (imerode (im, se, "full"), [ 0 0 0 0 Inf 1 0 1 0 Inf 0 0 0 0 0 Inf 0 1 0 1 Inf Inf 0 1 0]); assert (imerode (logical(im), se, "full"), logical([0 0 0 0 1 1 0 1 0 1 0 0 0 0 0 1 0 1 0 1 1 1 0 1 0])); ***** xtest a = rand ([10 40 15 6 8 5]) > 0.2; se = ones ([5 3 7]); ## the image is not really indexed but this way it is padded with 1s assert (imerode (a, se), colfilt (a, "indexed", size (se), "sliding", @all)) assert (imerode (a, se, "valid"), convn (a, se, "valid") == nnz (se)) ## again, we need to pad it ourselves because convn pads with zeros b = true (size (a) + [4 2 6 0 0 0]); b(3:12, 2:41, 4:18,:,:,:) = a; assert (imdilate (b, se, "same"), convn (b, se, "same") > 0) b = true (size (a) + [8 4 12 0 0 0]); b(5:14, 3:42, 7:21,:,:,:) = a; assert (imdilate (b, se, "full"), convn (b, se, "full") > 0) ***** test im = [0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 1 0 1 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0]; se = [0 0 0 0 1 0 0 1 1]; out = [0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]; assert (imerode (im, se), out); assert (imerode (logical (im), se), logical (out)); assert (imerode (im, logical (se)), out); assert (imerode (logical (im), logical (se)), logical (out)); # with an even-size SE se = [0 0 0 1 0 1 0 0 0 1 1 1]; out = [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]; assert (imerode (im, se), out); out = [ 0 0 0 0 1 0 1 0 0 1 0 1 1 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 0 0 1 1 1 1 1]; assert (imdilate (im, se), out); ***** test a = [ 82 2 97 43 79 43 41 65 51 11 60 65 21 56 94 77 36 38 75 39 32 68 78 1 16 75 76 90 81 56 43 90 82 41 36 1 87 19 18 63 63 64 2 48 18 43 38 25 22 99 12 46 90 79 3 92 39 79 10 22 38 98 11 10 40 90 88 38 4 76 54 37 9 4 33 98 36 47 53 57 38 76 82 50 14 74 64 99 7 33 88 96 41 62 84 89 97 23 41 3]; domain = ones (3); out = [ 2 1 1 1 16 36 36 11 21 1 1 1 1 1 18 18 2 1 1 1 1 1 18 18 2 2 2 1 1 1 10 10 2 2 2 3 3 25 4 4 9 4 3 3 3 36 4 4 9 4 4 4 14 36 4 4 9 4 4 4 14 23 7 3]; assert (imerode (a, domain, "valid"), out); assert (imerode (uint8 (a), domain, "valid"), uint8 (out)); assert (imerode (uint8 (a), strel ("arbitrary", domain), "valid"), uint8 (out)); assert (imerode (uint8 (a), strel ("square", 3), "valid"), uint8 (out)); ***** ## Test for non-flat strel assert (imerode (a, strel ("arbitrary", domain, ones (3)), "valid"), out -1); out = [ 97 97 97 94 94 90 90 90 90 90 94 94 94 90 90 90 90 90 82 75 87 90 90 99 90 90 90 92 92 92 87 99 98 98 90 92 92 92 88 99 98 98 90 98 98 98 88 79 98 98 82 98 98 99 99 99 96 96 84 98 98 99 99 99]; assert (imdilate (a, domain, "valid"), out); assert (imdilate (uint8 (a), domain, "valid"), uint8 (out)); ***** ## Test for non-flat strel assert (imdilate (a, strel ("arbitrary", domain, ones (3)), "valid"), out +1); ## test while using SE that can be decomposed and an actual sequence domain = ones (5); out = [ 2 1 1 1 1 1 16 11 11 11 2 1 1 1 1 1 1 1 11 11 2 1 1 1 1 1 1 1 11 11 2 1 1 1 1 1 1 1 10 10 2 1 1 1 1 1 1 1 4 4 2 2 2 1 1 1 1 1 4 4 2 2 2 2 2 3 3 4 4 4 9 4 3 3 3 3 3 3 3 3 9 4 4 4 4 4 4 3 3 3 9 4 4 4 4 4 7 3 3 3]; assert (imerode (a, domain), out); assert (imerode (a, strel ("square", 5)), out); assert (imerode (a, getsequence (strel ("square", 5))), out); ## using a non-symmetric SE domain = [ 1 1 0 0 1 1 0 1 0]; out = [ 2 2 1 16 36 36 38 39 60 1 1 16 1 36 19 18 32 2 1 1 1 19 18 18 2 2 18 3 1 1 19 10 46 2 2 3 18 38 10 4 11 9 4 3 3 36 4 4 9 4 4 10 36 36 38 4 37 9 4 4 33 36 7 7]; assert (imerode (a, domain, "valid"), out); assert (imerode (a, strel ("arbitrary", domain, ones (3)), "valid"), out -1); out = [ 78 97 56 94 94 90 90 81 90 82 78 94 87 87 90 90 90 90 82 43 75 87 90 99 90 90 79 92 92 87 79 25 98 90 90 90 92 92 79 79 98 98 79 98 98 90 88 57 98 82 50 74 98 99 99 53 96 82 84 89 98 97 99 99]; assert (imdilate (a, domain, "valid"), out); assert (imdilate (a, strel ("arbitrary", domain, ones (3)), "valid"), out +1); ***** test im = reshape (magic(16), [4 8 4 2]); se = true (3, 3, 3); out = zeros (4, 8, 4, 2); out(:,:,1,1) = [ 3 3 46 2 2 2 47 47 3 3 30 2 2 2 31 31 17 17 16 16 16 20 13 13 33 33 16 16 16 36 13 13]; out(:,:,2,1) = [ 3 3 46 2 2 2 43 43 3 3 30 2 2 2 27 27 17 17 12 12 12 20 13 13 33 33 12 12 12 36 13 13]; out(:,:,3,1) = [ 3 3 42 6 6 6 43 43 3 3 26 6 6 6 27 27 21 21 12 12 12 20 9 9 37 37 12 12 12 36 9 9]; out(:,:,4,1) = [ 7 7 42 6 6 6 43 43 7 7 26 6 6 6 27 27 21 21 12 12 12 24 9 9 37 37 12 12 12 40 9 9]; out(:,:,1,2) = [ 11 11 38 10 10 10 39 39 11 11 22 10 10 10 23 23 25 25 8 8 8 28 5 5 41 41 8 8 8 44 5 5]; out(:,:,2,2) = [ 11 11 38 10 10 10 35 35 11 11 22 10 10 10 19 19 25 25 4 4 4 28 5 5 41 41 4 4 4 44 5 5]; out(:,:,3,2) = [ 11 11 34 14 14 14 35 35 11 11 18 14 14 14 19 19 29 29 4 4 4 28 1 1 45 45 4 4 4 44 1 1]; out(:,:,4,2) = [ 15 15 34 14 14 14 35 35 15 15 18 14 14 14 19 19 29 29 4 4 4 32 1 1 45 45 4 4 4 48 1 1]; assert (imerode (im, se), out); assert (imerode (uint16 (im), se), uint16 (out)); ## trying a more weird SE se(:,:,1) = [1 0 1; 0 1 1; 0 0 0]; se(:,:,3) = [1 0 1; 0 1 1; 0 0 1]; out(:,:,1,1) = [ 3 17 46 2 2 2 47 47 17 3 30 2 2 2 31 31 17 17 16 16 16 20 13 31 33 33 16 16 16 36 13 13]; out(:,:,2,1) = [ 3 3 46 2 2 20 43 61 3 3 30 2 20 2 27 43 33 17 12 20 20 20 13 13 51 33 12 12 30 36 13 13]; out(:,:,3,1) = [ 3 21 42 6 6 6 43 43 21 3 26 6 6 6 27 27 21 21 12 12 12 20 9 27 37 37 12 12 12 36 9 9]; out(:,:,4,1) = [ 7 7 42 6 6 24 57 57 7 7 26 6 24 6 43 43 37 21 26 24 24 24 9 9 55 37 12 12 26 40 9 9]; out(:,:,1,2) = [ 11 25 38 10 10 10 39 39 25 11 22 10 10 10 23 23 25 25 8 8 8 28 5 23 41 41 8 8 8 44 5 5]; out(:,:,2,2) = [ 11 11 38 10 10 28 35 53 11 11 22 10 22 10 19 35 41 25 4 22 22 28 5 5 59 41 4 4 22 44 5 5]; out(:,:,3,2) = [ 11 29 34 14 14 14 35 35 29 11 18 14 14 14 19 19 29 29 4 4 4 28 1 19 45 45 4 4 4 44 1 1]; out(:,:,4,2) = [ 15 15 34 14 14 32 49 49 15 15 18 14 18 14 35 35 45 29 18 18 18 32 1 1 63 45 4 4 18 48 1 1]; assert (imerode (im, se), out); assert (imerode (uint16 (im), se), uint16 (out)); ***** error imerode (ones (10), 45) ***** error imerode (ones (10), "some text") ***** error imerode (ones (10), {23, 45}) ***** error imerode (rand (10) > 10 , strel ("arbitrary", true (3), ones (3))) ***** xtest a = rand ([10 40 15 6 8 5]) > 0.8; se = ones ([5 3 7]); assert (imdilate (a, se), convn (a, se, "same") > 0) assert (imdilate (a, se, "full"), convn (a, se, "full") > 0) assert (imdilate (a, se, "valid"), convn (a, se, "valid") > 0) assert (imdilate (a, se), colfilt (a, size (se), "sliding", @any)) ***** test im = reshape (magic(16), [4 8 4 2]); se = true (3, 3, 3); out = zeros (4, 8, 4, 2); out(:,:,1,1) = [ 256 256 209 253 253 253 212 212 256 256 225 253 253 253 228 228 238 238 243 243 243 239 242 242 222 222 243 243 243 223 242 242]; out(:,:,2,1) = [ 256 256 213 253 253 253 212 212 256 256 229 253 253 253 228 228 238 238 243 243 243 239 246 246 222 222 243 243 243 223 246 246]; out(:,:,3,1) = [ 252 252 213 253 253 253 216 216 252 252 229 253 253 253 232 232 238 238 247 247 247 235 246 246 222 222 247 247 247 219 246 246]; out(:,:,4,1) = [ 252 252 213 249 249 249 216 216 252 252 229 249 249 249 232 232 234 234 247 247 247 235 246 246 218 218 247 247 247 219 246 246]; out(:,:,1,2) = [ 248 248 217 245 245 245 220 220 248 248 233 245 245 245 236 236 230 230 251 251 251 231 250 250 214 214 251 251 251 215 250 250]; out(:,:,2,2) = [ 248 248 221 245 245 245 220 220 248 248 237 245 245 245 236 236 230 230 251 251 251 231 254 254 214 214 251 251 251 215 254 254]; out(:,:,3,2) = [ 244 244 221 245 245 245 224 224 244 244 237 245 245 245 240 240 230 230 255 255 255 227 254 254 214 214 255 255 255 211 254 254]; out(:,:,4,2) = [ 244 244 221 241 241 241 224 224 244 244 237 241 241 241 240 240 226 226 255 255 255 227 254 254 210 210 255 255 255 211 254 254]; assert (imdilate (im, se), out); assert (imdilate (uint16 (im), se), uint16 (out)); ## trying a more weird SE se(:,:,1) = [1 0 1; 0 1 1; 0 0 0]; se(:,:,3) = [1 0 1; 0 1 1; 0 0 1]; out(:,:,1,1) = [ 256 256 209 239 253 253 212 194 256 256 225 239 239 239 228 212 222 222 243 239 243 239 242 242 208 208 225 243 243 223 242 242]; out(:,:,2,1) = [ 256 256 213 253 253 253 212 212 238 256 229 253 253 253 228 228 238 238 243 243 243 239 246 228 222 222 243 243 243 223 228 246]; out(:,:,3,1) = [ 252 252 213 235 253 253 216 198 252 252 229 235 235 253 232 216 222 238 247 235 247 235 246 246 204 222 229 247 247 219 246 246]; out(:,:,4,1) = [ 252 252 213 249 249 249 216 216 234 252 229 249 249 249 232 232 234 234 247 247 247 235 246 232 218 218 247 247 247 219 232 246]; out(:,:,1,2) = [ 248 248 217 231 245 245 220 202 248 248 233 233 233 231 236 220 214 214 251 233 251 231 250 250 200 200 233 251 251 215 250 250]; out(:,:,2,2) = [ 248 248 221 245 245 245 220 220 230 248 237 245 245 245 236 236 230 230 251 251 251 231 254 236 214 214 251 251 251 215 236 254]; out(:,:,3,2) = [ 244 244 221 227 245 245 224 206 244 244 237 237 237 245 240 224 214 230 255 237 255 227 254 254 196 214 237 255 255 211 254 254]; out(:,:,4,2) = [ 244 244 221 241 241 241 224 224 226 244 237 241 241 241 240 240 226 226 255 255 255 227 254 240 210 210 255 255 255 211 240 254]; assert (imdilate (im, se), out); assert (imdilate (uint16 (im), se), uint16 (out)); ***** test # scalar blank SE se = 0; assert (imerode (5, se), Inf) assert (imerode (true, se), true) assert (imerode (false, se), true) assert (imerode (uint8 (3), se), uint8 (255)) assert (imdilate (5, se), -Inf) assert (imdilate (true, se), false) assert (imdilate (false, se), false) assert (imdilate (uint8 (3), se), uint8 (0)) ***** test # empty SE se = []; assert (imerode (5, se), Inf) assert (imerode (true, se), true) assert (imerode (false, se), true) assert (imerode (uint8 (3), se), uint8 (255)) assert (imdilate (5, se), -Inf) assert (imdilate (true, se), false) assert (imdilate (false, se), false) assert (imdilate (uint8 (3), se), uint8 (0)) ***** test # non-scalar blank SE se = zeros (3, 3); assert (imerode (5, se), Inf) assert (imerode (true, se), true) assert (imerode (false, se), true) assert (imerode (uint8 (3), se), uint8 (255)) assert (imdilate (5, se), -Inf) assert (imdilate(true, se), false) assert (imdilate (false, se), false) assert (imdilate (uint8 (3), se), uint8 (0)) ***** test # erode only with out-of-border elements se = [1 1 1; 1 0 1; 1 1 1]; assert (imerode (5, se), Inf) assert (imerode (true, se), true) assert (imdilate (5, se), -Inf) assert (imdilate (true, se), false) ***** test # only true elements of SE are out-of-border se = [0 0 0; 1 0 0; 1 1 0]; assert (imerode (zeros (3), se), [0 0 0; 0 0 0; Inf 0 0]) assert (imerode (false (3), se), logical ([0 0 0; 0 0 0; 1 0 0])) assert (imdilate (zeros (3), se), [0 0 -Inf; 0 0 0; 0 0 0]) assert (imdilate (false (3), se), false (3, 3)) se = [0 0 0; 0 0 0; 1 1 1]; assert (imerode (zeros (3, 3), se), [0 0 0; 0 0 0; Inf Inf Inf]) assert (imerode (false (3, 3), se), logical ([0 0 0; 0 0 0; 1 1 1])) assert (imdilate (zeros (3, 3), se), [-Inf -Inf -Inf; 0 0 0; 0 0 0]) assert (imdilate (false (3, 3), se), false (3, 3)) ***** test # only true elements of even-sized SE are out-of-border se = logical ([0 1; 1 1]); assert (imerode (false (3, 3), se), logical ([0 0 0; 0 0 0; 0 0 1])) assert (imerode (zeros (3, 3), se), [0 0 0; 0 0 0; 0 0 Inf]) assert (imdilate (false (3, 3), se), false (3, 3)) assert (imdilate (zeros (3, 3), se), [-Inf 0 0; 0 0 0; 0 0 0]) 19 tests, 19 passed, 0 known failure, 0 skipped [src/watershed.cc] >>>>> /<>/src/watershed.cc ***** test ex = tril (ones (50), -1) + triu (repmat (2, [50 50]), 2); ex(1, 1) = 1; ex(end, end) = 1; in = ones (50); in(end,1) = 0; in(1,end) = 0; assert (watershed (in), ex) ***** test ex = tril (ones (49), -1) + triu (repmat (2, [49 49]), 2); ex(1, 1) = 1; ex(end, end) = 1; in = ones (49); in(end,1) = 0; in(1,end) = 0; assert (watershed (in), ex) c = (fspecial ('disk', 5) > 0) + 1; in(20:30,20:30) = c; c = (fspecial ('disk', 4) > 0) + 2; in(21:29,21:29) = c; assert (watershed (in), ex) ***** test ex = tril (ones (49), -1) + triu (repmat (2, [49 49]), 2); ex(1:28,1:28) = (tril (ones (28) ,7) + triu (repmat (2, [28 28]), 10)); ex(1,9) = 1; ex(end,end) = 1; ex(20:29, 29) = 0; in = ones (49); in(end,1) = 0; in(1,end) = 0; c = (fspecial ("disk", 5) > 0) + 1; in(1:11,38:48) = c; assert (watershed (in), ex) ***** test im = [ 3 4 5 6 0 2 3 4 5 6 1 2 3 4 5 0 1 2 3 4 1 0 1 2 3]; labeled8 = [ 1 1 1 0 2 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1]; labeled4 = [ 1 1 1 0 3 1 1 1 0 0 1 1 0 2 2 1 0 2 2 2 0 2 2 2 2]; labeled_weird = [ 1 1 1 0 2 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1]; assert (watershed (im), labeled8); assert (watershed (im, 8), labeled8); assert (watershed (im, 4), labeled4); assert (watershed (im, [1 1 0; 1 1 1; 0 1 1]), labeled_weird); ***** test im = [ 2 3 30 2 3 30 3 30 255 31 30 4 2 255 31 30 1 2 255 5]; labeled4 = [ 1 1 0 4 1 0 3 0 0 2 0 5 2 2 2 0 2 2 0 6]; labeled_weird = [ 1 1 0 3 1 1 1 0 0 1 1 1 2 0 0 0 2 2 0 4]; assert (watershed (im, 4), labeled4); assert (watershed (im, [1 1 0; 1 1 1; 0 1 1]), labeled_weird); ***** xtest ## The following test is required for Matlab compatibility. There must be ## something specific about their implementation that causes it to return ## this value. Even when solving it on paper, we get different results. im = [ 2 3 30 2 3 30 3 30 255 31 30 4 2 255 31 30 1 2 255 5]; labeled8 = [ 1 1 0 3 1 1 0 3 0 0 0 0 2 2 0 4 2 2 0 4]; assert (watershed (im), labeled8); assert (watershed (im, 8), labeled8); !!!!! known failure ASSERT errors for: assert (watershed (im),labeled8) Location | Observed | Expected | Reason (3,4) 3 0 Abs err 3 exceeds tol 0 by 3 (4,4) 0 4 Abs err 4 exceeds tol 0 by 4 ***** test im = [ 2 2 2 2 2 2 2 2 2 30 30 30 2 2 2 30 20 20 20 30 2 40 40 20 20 20 40 40 1 40 20 20 20 40 0 1 1 40 20 40 0 0 1 1 1 20 0 0 0]; labeled8 = [ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 2 2 2 0 3 3 3 2 2 2 0 3 3 3 2 2 2 0 3 3 3]; labeled4 = [ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 2 0 1 1 1 0 3 2 2 0 1 0 3 3 2 2 2 0 3 3 3]; labeled_weird = [ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 0 0 0 2 0 0 0 3 3 3 2 2 0 3 3 3 3 2 2 2 0 3 3 3]; assert (watershed (im), labeled8); assert (watershed (im, 8), labeled8); assert (watershed (im, 4), labeled4); assert (watershed (im, [1 1 0; 1 1 1; 0 1 1]), labeled_weird); ***** test im = [ 40 40 40 40 40 40 40 40 40 40 40 40 40 40 3 3 5 5 5 10 10 10 10 15 20 40 40 3 3 5 5 30 30 30 10 15 15 20 40 40 3 3 5 30 20 20 20 30 15 15 20 40 40 40 40 40 40 20 20 20 40 40 40 40 40 40 10 10 10 40 20 20 20 40 10 10 10 40 40 5 5 5 10 40 20 40 10 10 5 5 40 40 1 3 5 10 15 20 15 10 5 1 0 40 40 1 3 5 10 15 20 15 10 5 1 0 40 40 40 40 40 40 40 40 40 40 40 40 40 40]; labeled8 = [ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 2 2 2 0 3 3 3 3 3 3 2 2 2 2 2 2 0 3 3 3 3 3 3 2 2 2 2 2 2 0 3 3 3 3 3 3 2 2 2 2 2 2 0 3 3 3 3 3 3 2 2 2 2 2 2 0 3 3 3 3 3 3]; labeled4 = [ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 0 0 0 0 2 2 2 2 0 1 1 1 0 3 3 3 3 2 2 2 2 2 0 1 0 3 3 3 3 3 2 2 2 2 2 2 0 3 3 3 3 3 3 2 2 2 2 2 2 0 3 3 3 3 3 3 2 2 2 2 2 2 0 3 3 3 3 3 3]; labeled_weird = [ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 0 0 0 0 0 0 0 2 2 2 2 0 0 0 3 3 3 3 3 3 2 2 2 2 2 0 3 3 3 3 3 3 3 2 2 2 2 2 2 0 3 3 3 3 3 3 2 2 2 2 2 2 0 3 3 3 3 3 3 2 2 2 2 2 2 0 3 3 3 3 3 3]; assert (watershed (im), labeled8); assert (watershed (im, 8), labeled8); assert (watershed (im, 4), labeled4); assert (watershed (im, [1 1 0; 1 1 1; 0 1 1]), labeled_weird); ***** xtest ## This test is failing for Matlab compatibility im_full = [ 1 2 10 3 8 7 5 3 2 5 10 8 1 4 1 8 2 3 8 3 6]; matlab_result_full = [ 1 1 0 3 0 4 4 0 0 0 0 0 4 4 2 2 2 0 4 4 4]; assert (watershed (im_full), matlab_result_full); im_crop = [ 2 10 3 8 7 5 2 5 10 8 1 4 8 2 3 8 3 6]; matlab_result_crop = [ 1 0 2 0 3 3 1 0 0 0 3 3 1 1 1 0 3 3]; assert (watershed (im_crop), matlab_result_crop); !!!!! known failure ASSERT errors for: assert (watershed (im_full),matlab_result_full) Location | Observed | Expected | Reason (3,4) 2 0 Abs err 2 exceeds tol 0 by 2 (3,5) 0 4 Abs err 4 exceeds tol 0 by 4 9 tests, 7 passed, 2 known failures, 0 skipped [src/bwconncomp.cc] >>>>> /<>/src/bwconncomp.cc ***** test a = rand (10) > 0.5; cc = bwconncomp (a, 4); assert (cc.Connectivity, 4) assert (cc.ImageSize, [10 10]) b = false (10); for i = 1:numel (cc.PixelIdxList) b(cc.PixelIdxList{i}) = true; endfor assert (a, b) ***** test a = rand (10, 13) > 0.5; cc = bwconncomp (a, 4); assert (cc.ImageSize, [10 13]) b = false (10, 13); for i = 1:numel (cc.PixelIdxList) b(cc.PixelIdxList{i}) = true; endfor assert (a, b) ***** test a = rand (15) > 0.5; conn_8 = bwconncomp (a, 8); assert (conn_8, bwconncomp (a)) assert (conn_8, bwconncomp (a, ones (3))) assert (conn_8.Connectivity, 8) assert (bwconncomp (a, ones (3)).Connectivity, 8) assert (bwconncomp (a, [0 1 0; 1 1 1; 0 1 0]).Connectivity, 4) ***** test bw = logical ([ 1 0 0 1 0 1 0 1 0 0 1 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 1 0 1 1 0 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 ]); cc = bwconncomp (bw); cc = struct (); cc.Connectivity = 8; cc.ImageSize = [7 7]; cc.NumObjects = 4; ## The commented line has the results from Matlab. We return the ## same result but in a slightly different order. Since the order ## is not defined, it is not required for compatibility. #cc.PixelIdxList = {[1;2], [5;7;12;13;14], [22;23], [26;32;33;36;37;38]}; cc.PixelIdxList = {[1;2], [5;12;13;7;14], [22;23], [26;32;33;38;37;36]}; assert (bwconncomp (bw), cc) ***** test ## test that PixelIdxList is a row vector a = rand (40, 40) > 0.2; cc = bwconncomp (a, 4); assert (rows (cc.PixelIdxList), 1) assert (columns (cc.PixelIdxList), cc.NumObjects) ***** assert (bwconncomp (false (5)), struct ("ImageSize", [5 5], "NumObjects", 0, "PixelIdxList", {cell(1, 0)}, "Connectivity", 8)) ***** test in = [ 0 0 1 0 0 1 0 1 0 0 0 0 1 0 0 0 0 0 1 1 1 0 0 0 0 1 1 0 0 0 1 0 0 0 1 0 0 0 0 0 1 1 1 1 0 0 0 0 0 1 0 1 0 1 1 0 0 1 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 1 0 1 1 0 0 1 1 0 0 1 0 1 1 1 0 0 1 0]; assert (bwareaopen (in, 1, 4), logical (in)) out = [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0]; assert (bwareaopen (logical (in), 10, 4), logical (out)) assert (bwareaopen (in, 10, 4), logical (out)) assert (bwareaopen (in, 10, [0 1 0; 1 1 1; 0 1 0]), logical (out)) out = [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 1 0 0 0 1 0 0 0 1 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0]; assert (bwareaopen (in, 10, 8), logical (out)) assert (bwareaopen (in, 10, ones (3)), logical (out)) assert (bwareaopen (in, 10), logical (out)) out = [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 0 1 1 0 0 1 1 0 0 0 0 1 1 1 0 0 1 0]; assert (bwareaopen (in, 4, [1 1 0; 1 1 1; 0 1 1]), logical (out)) ***** error bwareaopen ("not an image", 78, 8) ***** error bwareaopen (rand (10) > 0.5, 10, 100) ***** error bwareaopen (rand (10) > 0.5, 10, "maximal") ***** error bwareaopen (rand (10) > 0.5, 10, [1 1 1; 0 1 1; 0 1 0]) 11 tests, 11 passed, 0 known failure, 0 skipped Summary: 2073 tests, 2032 passed, 41 known failures, 0 skipped dh_installdocs -a -O--buildsystem=octave dh_installchangelogs -a -O--buildsystem=octave dh_octave_changelogs -a -O--buildsystem=octave dh_octave_examples -a -O--buildsystem=octave dh_installsystemduser -a -O--buildsystem=octave dh_perl -a -O--buildsystem=octave dh_link -a -O--buildsystem=octave dh_strip_nondeterminism -a -O--buildsystem=octave dh_compress -a -O--buildsystem=octave dh_fixperms -a -O--buildsystem=octave dh_missing -a -O--buildsystem=octave debian/rules override_dh_dwz make[1]: Entering directory '/<>' dh_dwz --no-dwz-multifile make[1]: Leaving directory '/<>' dh_strip -a -O--buildsystem=octave e4bf51aeb13345720894f5de0b1e6c3afebb92ed c3cf9cdaaf1518dc207faf3a5d49804f6ea622a3 784aae05b9e7fde0a950a1b642d709a43099219e 56c52feb55ffc7fb546185372b4e4410f843f734 83155e82ddb3ee2c800aa35496797d3df30c636c 9ffb1212787cd5d3f3a904f26f435175a14738d0 f38715c5e7e2670ba7b8407191991608f5c83a61 25ac02dcde0e71857026e109fab67a6852478b12 3e7bb00c9169217d207781040e9dfc27ea44ad26 fa1a4a464e107654cfb944b24cd423ecfd9cc025 4b0897c18ef583fa61ef4c6ea649da7da1e44ace ce518993aa9f9944ecf69065be6301d0fefa84af 3d301623415255e63e2cb76d7266d81a4c16e5bf fa9b51d20ddeaebe921d133694e930184a5eadc6 e609ad967b27edb4a78b5f2efa9679fd20796a85 8851d0d93179c0fe9cf9f0cdb02c758e39b356e2 43ee024d31985afa9712c20adc6bc7ddcccb3525 c3b8b7545c8f171d5a9751f6f75cbe104b5c45ad dh_makeshlibs -a -O--buildsystem=octave dh_shlibdeps -a -O--buildsystem=octave dh_octave_substvar -a -O--buildsystem=octave dh_installdeb -a -O--buildsystem=octave dh_gencontrol -a -O--buildsystem=octave dpkg-gencontrol: warning: package octave-image: substitution variable ${octave:Upstream-Description} unused, but is defined dpkg-gencontrol: warning: package octave-image: substitution variable ${octave:Upstream-Description} unused, but is defined dh_md5sums -a -O--buildsystem=octave dh_builddeb -a -O--buildsystem=octave INFO: pkgstriptranslations version 154 INFO: pkgstriptranslations version 154 pkgstriptranslations: processing octave-image (in debian/octave-image); do_strip: , oemstrip: pkgstriptranslations: processing octave-image-dbgsym (in debian/.debhelper/octave-image/dbgsym-root); do_strip: , oemstrip: pkgmaintainermangler: Maintainer field overridden to "Ubuntu Developers " pkgmaintainermangler: Maintainer field overridden to "Ubuntu Developers " pkgstripfiles: processing control file: debian/octave-image/DEBIAN/control, package octave-image, directory debian/octave-image pkgstripfiles: Running PNG optimization (using 4 cpus) for package octave-image ... pkgstripfiles: No PNG files. dpkg-deb: building package 'octave-image' in '../octave-image_2.14.0-5_s390x.deb'. pkgstripfiles: processing control file: debian/.debhelper/octave-image/dbgsym-root/DEBIAN/control, package octave-image-dbgsym, directory debian/.debhelper/octave-image/dbgsym-root dpkg-deb: building package 'octave-image-dbgsym' in 'debian/.debhelper/scratch-space/build-octave-image/octave-image-dbgsym_2.14.0-5_s390x.deb'. Renaming octave-image-dbgsym_2.14.0-5_s390x.deb to octave-image-dbgsym_2.14.0-5_s390x.ddeb dpkg-genbuildinfo --build=any -O../octave-image_2.14.0-5_s390x.buildinfo dpkg-genchanges --build=any -mLaunchpad Build Daemon -O../octave-image_2.14.0-5_s390x.changes dpkg-genchanges: info: binary-only arch-specific upload (source code and arch-indep packages not included) dpkg-source --after-build . dpkg-buildpackage: info: binary-only upload (no source included) -------------------------------------------------------------------------------- Build finished at 2023-11-29T13:44:30Z Finished -------- I: Built successfully +------------------------------------------------------------------------------+ | Changes | +------------------------------------------------------------------------------+ octave-image_2.14.0-5_s390x.changes: ------------------------------------ Format: 1.8 Date: Sat, 07 Oct 2023 04:56:51 -0300 Source: octave-image Binary: octave-image Built-For-Profiles: noudeb Architecture: s390x Version: 2.14.0-5 Distribution: noble-proposed Urgency: medium Maintainer: Launchpad Build Daemon Changed-By: Rafael Laboissière Description: octave-image - image manipulation for Octave Changes: octave-image (2.14.0-5) unstable; urgency=medium . * d/p/add-distclean-target.patch: Fix typo in Forwarded URL * d/control: + Bump Standards-Version to 4.6.2 (no changes needed) + Update Homepage URL * d/copyright: Update Source URL Checksums-Sha1: 672464f117ff2c7f07a1530070dec1ad25826012 11480918 octave-image-dbgsym_2.14.0-5_s390x.ddeb 762a2eeb29b700d18c10e7ab9156e551aec0b331 22183 octave-image_2.14.0-5_s390x.buildinfo bbe986643b3c0a87aa8cedb4c7364cc82ecb11b0 694270 octave-image_2.14.0-5_s390x.deb Checksums-Sha256: d6075938d03c7312f03804269490797dccace4180a13b1d619dbdc71ca33d58a 11480918 octave-image-dbgsym_2.14.0-5_s390x.ddeb 83b14858cc7b90568c62c9fcce29e698e5b1ca3b9198887754f02188da3ad321 22183 octave-image_2.14.0-5_s390x.buildinfo 3912d38960e597cbf2da1eb29f1bbf8f89f0c289b754b79c92301727d2606c5f 694270 octave-image_2.14.0-5_s390x.deb Files: e0b30dfbdb22791fb70fe8c02c22c5a7 11480918 debug optional octave-image-dbgsym_2.14.0-5_s390x.ddeb 7277fefd6c9e944dbbbc5b30a98ddfca 22183 math optional octave-image_2.14.0-5_s390x.buildinfo e679a333ffe5f53719f95c7f3754db15 694270 math optional octave-image_2.14.0-5_s390x.deb /<>/octave-image_2.14.0-5_s390x.changes.new could not be renamed to /<>/octave-image_2.14.0-5_s390x.changes: Illegal seek Distribution field may be wrong!!! +------------------------------------------------------------------------------+ | Buildinfo | +------------------------------------------------------------------------------+ Format: 1.0 Source: octave-image Binary: octave-image octave-image-dbgsym Architecture: s390x Version: 2.14.0-5 Checksums-Md5: e0b30dfbdb22791fb70fe8c02c22c5a7 11480918 octave-image-dbgsym_2.14.0-5_s390x.ddeb e679a333ffe5f53719f95c7f3754db15 694270 octave-image_2.14.0-5_s390x.deb Checksums-Sha1: 672464f117ff2c7f07a1530070dec1ad25826012 11480918 octave-image-dbgsym_2.14.0-5_s390x.ddeb bbe986643b3c0a87aa8cedb4c7364cc82ecb11b0 694270 octave-image_2.14.0-5_s390x.deb Checksums-Sha256: d6075938d03c7312f03804269490797dccace4180a13b1d619dbdc71ca33d58a 11480918 octave-image-dbgsym_2.14.0-5_s390x.ddeb 3912d38960e597cbf2da1eb29f1bbf8f89f0c289b754b79c92301727d2606c5f 694270 octave-image_2.14.0-5_s390x.deb Build-Origin: Ubuntu Build-Architecture: s390x Build-Date: Wed, 29 Nov 2023 13:44:29 +0000 Build-Path: /<> Build-Tainted-By: merged-usr-via-aliased-dirs usr-local-has-programs Installed-Build-Depends: adduser (= 3.137ubuntu1), aglfn (= 1.7+git20191031.4036a9c-2), autoconf (= 2.71-3), automake (= 1:1.16.5-1.3), autopoint (= 0.21-13build1), autotools-dev (= 20220109.1), base-files (= 13ubuntu5), base-passwd (= 3.6.2), bash (= 5.2.21-2ubuntu1), binutils (= 2.41-7ubuntu1), binutils-common (= 2.41-7ubuntu1), binutils-s390x-linux-gnu (= 2.41-7ubuntu1), bsdextrautils (= 2.39.2-6ubuntu1), bsdutils (= 1:2.39.2-6ubuntu1), build-essential (= 12.10ubuntu1), bzip2 (= 1.0.8-5build1), ca-certificates (= 20230311ubuntu1), cme (= 1.038-2), coreutils (= 9.1-1ubuntu2), cpp (= 4:13.2.0-2ubuntu1), cpp-13 (= 13.2.0-7ubuntu1), dash (= 0.5.12-6ubuntu1), debconf (= 1.5.82), debhelper (= 13.11.8ubuntu1), debianutils (= 5.14), debugedit (= 1:5.0-5), dh-autoreconf (= 20), dh-octave (= 1.5.1), dh-octave-autopkgtest (= 1.5.1), dh-strip-nondeterminism (= 1.13.1-1), diffstat (= 1.65-1), diffutils (= 1:3.10-1), dpkg (= 1.22.1ubuntu3), dpkg-dev (= 1.22.1ubuntu3), dwz (= 0.15-1), file (= 1:5.45-2), findutils (= 4.9.0-5), fontconfig (= 2.14.2-4ubuntu1), fontconfig-config (= 2.14.2-4ubuntu1), fonts-freefont-otf (= 20211204+svn4273-2), fonts-noto-core (= 20201225-2), fonts-noto-mono (= 20201225-2), g++ (= 4:13.2.0-2ubuntu1), g++-13 (= 13.2.0-7ubuntu1), gcc (= 4:13.2.0-2ubuntu1), gcc-13 (= 13.2.0-7ubuntu1), gcc-13-base (= 13.2.0-7ubuntu1), gettext (= 0.21-13build1), gettext-base (= 0.21-13build1), gfortran (= 4:13.2.0-2ubuntu1), gfortran-13 (= 13.2.0-7ubuntu1), gnuplot-data (= 5.4.4+dfsg1-2build1), gnuplot-nox (= 5.4.4+dfsg1-2build1), gpg (= 2.2.40-1.1ubuntu1), gpgconf (= 2.2.40-1.1ubuntu1), grep (= 3.11-3), groff-base (= 1.23.0-3), gzip (= 1.12-1ubuntu1), hdf5-helpers (= 1.10.8+repack1-1ubuntu1), hostname (= 3.23+nmu1ubuntu1), ibverbs-providers (= 48.0-1), init-system-helpers (= 1.65.2ubuntu1), intltool-debian (= 0.35.0+20060710.6), iso-codes (= 4.15.0-1), libacl1 (= 2.3.1-3), libaec-dev (= 1.1.2-1), libaec0 (= 1.1.2-1), libalgorithm-c3-perl (= 0.11-2), libaliased-perl (= 0.34-3), libamd3 (= 1:7.3.1+dfsg-2), libapp-cmd-perl (= 0.336-1), libapt-pkg-perl (= 0.1.40build3), libapt-pkg6.0 (= 2.7.7), libarchive-zip-perl (= 1.68-1), libarpack2 (= 3.9.1-1), libarray-intspan-perl (= 2.004-2), libasan8 (= 13.2.0-7ubuntu1), libasound2 (= 1.2.10-1), libasound2-data (= 1.2.10-1), libassuan0 (= 2.5.6-1), libatomic1 (= 13.2.0-7ubuntu1), libattr1 (= 1:2.5.1-4), libaudit-common (= 1:3.1.1-1build1), libaudit1 (= 1:3.1.1-1build1), libavahi-client3 (= 0.8-13ubuntu2), libavahi-common-data (= 0.8-13ubuntu2), libavahi-common3 (= 0.8-13ubuntu2), libb-hooks-endofscope-perl (= 0.26-1), libb-hooks-op-check-perl (= 0.22-2build1), libberkeleydb-perl (= 0.64-2), libbinutils (= 2.41-7ubuntu1), libblas-dev (= 3.11.0-2build1), libblas3 (= 3.11.0-2build1), libblkid1 (= 2.39.2-6ubuntu1), libboolean-perl (= 0.46-3), libbrotli1 (= 1.1.0-2), libbsd0 (= 0.11.7-4), libbtf2 (= 1:7.3.1+dfsg-2), libbz2-1.0 (= 1.0.8-5build1), libc-bin (= 2.38-3ubuntu1), libc-dev-bin (= 2.38-3ubuntu1), libc6 (= 2.38-3ubuntu1), libc6-dev (= 2.38-3ubuntu1), libcairo2 (= 1.18.0-1), libcamd3 (= 1:7.3.1+dfsg-2), libcap-ng0 (= 0.8.3-1build3), libcap2 (= 1:2.66-4ubuntu1), libcapture-tiny-perl (= 0.48-2), libcarp-assert-more-perl (= 2.3.0-1), libcbor0.10 (= 0.10.2-1.1ubuntu1), libcc1-0 (= 13.2.0-7ubuntu1), libccolamd3 (= 1:7.3.1+dfsg-2), libcgi-pm-perl (= 4.60-1), libcholmod5 (= 1:7.3.1+dfsg-2), libclass-c3-perl (= 0.35-2), libclass-data-inheritable-perl (= 0.08-3), libclass-load-perl (= 0.25-2), libclass-method-modifiers-perl (= 2.15-1), libclass-xsaccessor-perl (= 1.19-4build1), libclone-choose-perl (= 0.010-2), libclone-perl (= 0.46-1), libcolamd3 (= 1:7.3.1+dfsg-2), libcom-err2 (= 1.47.0-2ubuntu1), libcombblas2.0.0 (= 2.0.0-3), libconfig-model-backend-yaml-perl (= 2.134-2), libconfig-model-dpkg-perl (= 3.002), libconfig-model-perl (= 2.153-3), libconfig-tiny-perl (= 2.30-1), libconst-fast-perl (= 0.014-2), libconvert-binhex-perl (= 1.125-3), libcpanel-json-xs-perl (= 4.37-1), libcrypt-dev (= 1:4.4.36-2), libcrypt1 (= 1:4.4.36-2), libctf-nobfd0 (= 2.41-7ubuntu1), libctf0 (= 2.41-7ubuntu1), libcups2 (= 2.4.6-0ubuntu3), libcurl3-gnutls (= 8.4.0-2ubuntu1), libcurl4 (= 8.4.0-2ubuntu1), libcurl4-openssl-dev (= 8.4.0-2ubuntu1), libcxsparse4 (= 1:7.3.1+dfsg-2), libdata-dpath-perl (= 0.59-1), libdata-messagepack-perl (= 1.02-1build1), libdata-optlist-perl (= 0.114-1), libdata-section-perl (= 0.200008-1), libdata-validate-domain-perl (= 0.10-1.1), libdata-validate-ip-perl (= 0.31-1), libdata-validate-uri-perl (= 0.07-2), libdatrie1 (= 0.2.13-2), libdav1d7 (= 1.3.0-2), libdb5.3 (= 5.3.28+dfsg2-4), libdbus-1-3 (= 1.14.10-1ubuntu1), libde265-0 (= 1.0.13-1), libdebconfclient0 (= 0.270ubuntu1), libdebhelper-perl (= 13.11.8ubuntu1), libdeflate0 (= 1.18-1), libdevel-callchecker-perl (= 0.008-2), libdevel-size-perl (= 0.83-2build1), libdevel-stacktrace-perl (= 2.0400-2), libdouble-conversion3 (= 3.3.0-1), libdpkg-perl (= 1.22.1ubuntu3), libdrm-amdgpu1 (= 2.4.117-1), libdrm-common (= 2.4.117-1), libdrm-nouveau2 (= 2.4.117-1), libdrm-radeon1 (= 2.4.117-1), libdrm2 (= 2.4.117-1), libdw1 (= 0.190-1), libdynaloader-functions-perl (= 0.003-3), libedit2 (= 3.1-20230828-1), libegl-mesa0 (= 23.2.1-1ubuntu4), libegl1 (= 1.7.0-1), libelf1 (= 0.190-1), libemail-address-xs-perl (= 1.05-1build1), libencode-locale-perl (= 1.05-3), liberror-perl (= 0.17029-2), libevdev2 (= 1.13.1+dfsg-1), libevent-core-2.1-7 (= 2.1.12-stable-9), libevent-pthreads-2.1-7 (= 2.1.12-stable-9), libexception-class-perl (= 1.45-1), libexpat1 (= 2.5.0-2), libexporter-lite-perl (= 0.09-2), libexporter-tiny-perl (= 1.006002-1), libfabric1 (= 1.17.0-3), libffi8 (= 3.4.4-2), libfftw3-bin (= 3.3.10-1ubuntu1), libfftw3-dev (= 3.3.10-1ubuntu1), libfftw3-double3 (= 3.3.10-1ubuntu1), libfftw3-long3 (= 3.3.10-1ubuntu1), libfftw3-mpi3 (= 3.3.10-1ubuntu1), libfftw3-single3 (= 3.3.10-1ubuntu1), libfido2-1 (= 1.14.0-1), libfile-basedir-perl (= 0.09-2), libfile-find-rule-perl (= 0.34-3), libfile-homedir-perl (= 1.006-2), libfile-listing-perl (= 6.16-1), libfile-stripnondeterminism-perl (= 1.13.1-1), libfile-which-perl (= 1.27-2), libflac12 (= 1.4.3+ds-2ubuntu1), libfltk-gl1.3 (= 1.3.8-6), libfltk1.3 (= 1.3.8-6), libfont-ttf-perl (= 1.06-2), libfontconfig1 (= 2.14.2-4ubuntu1), libfreetype6 (= 2.13.2+dfsg-1), libfribidi0 (= 1.0.13-3), libgbm1 (= 23.2.1-1ubuntu4), libgcc-13-dev (= 13.2.0-7ubuntu1), libgcc-s1 (= 13.2.0-7ubuntu1), libgcrypt20 (= 1.10.2-3ubuntu1), libgd3 (= 2.3.3-9ubuntu1), libgdbm-compat4 (= 1.23-5), libgdbm6 (= 1.23-5), libgetopt-long-descriptive-perl (= 0.111-1), libgfortran-13-dev (= 13.2.0-7ubuntu1), libgfortran5 (= 13.2.0-7ubuntu1), libgl-dev (= 1.7.0-1), libgl1 (= 1.7.0-1), libgl1-mesa-dri (= 23.2.1-1ubuntu4), libgl2ps1.4 (= 1.4.2+dfsg1-2), libglapi-mesa (= 23.2.1-1ubuntu4), libglib2.0-0 (= 2.78.1-4), libglpk40 (= 5.0-1build1), libglu1-mesa (= 9.0.2-1.1), libglvnd0 (= 1.7.0-1), libglx-dev (= 1.7.0-1), libglx-mesa0 (= 23.2.1-1ubuntu4), libglx0 (= 1.7.0-1), libgmp10 (= 2:6.3.0+dfsg-2ubuntu4), libgnutls30 (= 3.8.1-4ubuntu6), libgomp1 (= 13.2.0-7ubuntu1), libgpg-error0 (= 1.47-3), libgraphicsmagick++-q16-12 (= 1.4+really1.3.42-1), libgraphicsmagick-q16-3 (= 1.4+really1.3.42-1), libgraphite2-3 (= 1.3.14-1build2), libgssapi-krb5-2 (= 1.20.1-5build1), libgudev-1.0-0 (= 1:238-3), libharfbuzz0b (= 8.0.1-1), libhash-merge-perl (= 0.302-1), libhdf5-103-1 (= 1.10.8+repack1-1ubuntu1), libhdf5-cpp-103-1 (= 1.10.8+repack1-1ubuntu1), libhdf5-dev (= 1.10.8+repack1-1ubuntu1), libhdf5-fortran-102 (= 1.10.8+repack1-1ubuntu1), libhdf5-hl-100 (= 1.10.8+repack1-1ubuntu1), libhdf5-hl-cpp-100 (= 1.10.8+repack1-1ubuntu1), libhdf5-hl-fortran-100 (= 1.10.8+repack1-1ubuntu1), libhdf5-openmpi-103-1 (= 1.10.8+repack1-1ubuntu1), libheif-plugin-dav1d (= 1.17.1-1ubuntu3), libheif-plugin-libde265 (= 1.17.1-1ubuntu3), libheif1 (= 1.17.1-1ubuntu3), libhogweed6 (= 3.9.1-2), libhtml-form-perl (= 6.11-1), libhtml-html5-entities-perl (= 0.004-3), libhtml-parser-perl (= 3.81-1), libhtml-tagset-perl (= 3.20-6), libhtml-tokeparser-simple-perl (= 3.16-4), libhtml-tree-perl (= 5.07-3), libhttp-cookies-perl (= 6.10-1), libhttp-date-perl (= 6.06-1), libhttp-message-perl (= 6.44-2ubuntu1), libhttp-negotiate-perl (= 6.01-2), libhwloc-plugins (= 2.9.3-2), libhwloc15 (= 2.9.3-2), libhwy1 (= 1.0.7-8), libhypre-2.28.0 (= 2.28.0-7), libibverbs1 (= 48.0-1), libice6 (= 2:1.0.10-1build2), libicu72 (= 72.1-3ubuntu3), libidn2-0 (= 2.3.4-1build1), libimport-into-perl (= 1.002005-2), libindirect-perl (= 0.39-2build1), libinput-bin (= 1.23.0-2), libinput10 (= 1.23.0-2), libio-html-perl (= 1.004-3), libio-interactive-perl (= 1.025-1), libio-socket-ssl-perl (= 2.084-1), libio-string-perl (= 1.08-4), libio-stringy-perl (= 2.111-3), libio-tiecombine-perl (= 1.005-3), libipc-run3-perl (= 0.048-3), libipc-system-simple-perl (= 1.30-2), libisl23 (= 0.26-3), libiterator-perl (= 0.03+ds1-2), libiterator-util-perl (= 0.02+ds1-2), libitm1 (= 13.2.0-7ubuntu1), libjack-jackd2-0 (= 1.9.21~dfsg-3), libjansson4 (= 2.14-2), libjbig0 (= 2.1-6.1ubuntu1), libjpeg-dev (= 8c-2ubuntu11), libjpeg-turbo8 (= 2.1.5-2ubuntu1), libjpeg-turbo8-dev (= 2.1.5-2ubuntu1), libjpeg8 (= 8c-2ubuntu11), libjpeg8-dev (= 8c-2ubuntu11), libjson-maybexs-perl (= 1.004005-1), libjson-perl (= 4.10000-1), libjxl0.7 (= 0.7.0-10.2ubuntu1), libk5crypto3 (= 1.20.1-5build1), libkeyutils1 (= 1.6.3-2), libklu2 (= 1:7.3.1+dfsg-2), libkrb5-3 (= 1.20.1-5build1), libkrb5support0 (= 1.20.1-5build1), liblapack-dev (= 3.11.0-2build1), liblapack3 (= 3.11.0-2build1), liblcms2-2 (= 2.14-2), libldap2 (= 2.6.6+dfsg-1~exp1ubuntu1), liblist-compare-perl (= 0.55-2), liblist-moreutils-perl (= 0.430-2), liblist-moreutils-xs-perl (= 0.430-3build2), liblist-someutils-perl (= 0.59-1), liblist-utilsby-perl (= 0.12-2), libllvm15 (= 1:15.0.7-10build1), liblog-any-adapter-screen-perl (= 0.140-2), liblog-any-perl (= 1.717-1), liblog-log4perl-perl (= 1.57-1), libltdl7 (= 2.4.7-7), liblua5.4-0 (= 5.4.6-0ubuntu2), liblwp-mediatypes-perl (= 6.04-2), liblwp-protocol-https-perl (= 6.11-1), liblz4-1 (= 1.9.4-1), liblzma5 (= 5.4.5-0.1), liblzo2-2 (= 2.10-2build3), libmagic-mgc (= 1:5.45-2), libmagic1 (= 1:5.45-2), libmailtools-perl (= 2.21-2), libmarkdown2 (= 2.2.7-2), libmd0 (= 1.1.0-1), libmd4c0 (= 0.4.8-1), libmetis5 (= 5.1.0.dfsg-7build2), libmime-tools-perl (= 5.510-3), libmldbm-perl (= 2.05-4), libmodule-implementation-perl (= 0.09-2), libmodule-pluggable-perl (= 5.2-4), libmodule-runtime-perl (= 0.016-2), libmoo-perl (= 2.005005-1), libmoox-aliases-perl (= 0.001006-2), libmount1 (= 2.39.2-6ubuntu1), libmouse-perl (= 2.5.10-1build5), libmousex-nativetraits-perl (= 1.09-3), libmousex-strictconstructor-perl (= 0.02-3), libmp3lame0 (= 3.100-6), libmpc3 (= 1.3.1-1), libmpfr6 (= 4.2.1-1), libmpg123-0 (= 1.32.3-1), libmro-compat-perl (= 0.15-2), libmtdev1 (= 1.1.6-1build4), libmumps-5.6 (= 5.6.1-1ubuntu1), libmunge2 (= 0.5.15-2), libnamespace-clean-perl (= 0.27-2), libncurses-dev (= 6.4+20231121-1build1), libncurses6 (= 6.4+20231121-1build1), libncursesw6 (= 6.4+20231121-1build1), libnet-domain-tld-perl (= 1.75-3), libnet-http-perl (= 6.23-1), libnet-ipv6addr-perl (= 1.02-1), libnet-netmask-perl (= 2.0002-2), libnet-smtp-ssl-perl (= 1.04-2), libnet-ssleay-perl (= 1.92-2build2), libnetaddr-ip-perl (= 4.079+dfsg-2build1), libnettle8 (= 3.9.1-2), libnghttp2-14 (= 1.58.0-1), libnl-3-200 (= 3.7.0-0.2), libnl-route-3-200 (= 3.7.0-0.2), libnsl-dev (= 1.3.0-3), libnsl2 (= 1.3.0-3), libnumber-compare-perl (= 0.03-3), libobject-pad-perl (= 0.806-1), libogg0 (= 1.3.5-3), libopengl0 (= 1.7.0-1), libopenmpi3 (= 4.1.6-1ubuntu1), libopus0 (= 1.4-1), libp11-kit0 (= 0.25.0-4ubuntu1), libpackage-stash-perl (= 0.40-1), libpam-modules (= 1.5.2-9.1ubuntu1), libpam-modules-bin (= 1.5.2-9.1ubuntu1), libpam-runtime (= 1.5.2-9.1ubuntu1), libpam0g (= 1.5.2-9.1ubuntu1), libpango-1.0-0 (= 1.51.0+ds-3), libpangocairo-1.0-0 (= 1.51.0+ds-3), libpangoft2-1.0-0 (= 1.51.0+ds-3), libparams-classify-perl (= 0.015-2build2), libparams-util-perl (= 1.102-2), libparams-validate-perl (= 1.31-1), libparse-debcontrol-perl (= 2.005-6), libparse-recdescent-perl (= 1.967015+dfsg-4), libpath-iterator-rule-perl (= 1.015-2), libpath-tiny-perl (= 0.144-1), libpciaccess0 (= 0.17-3), libpcre2-16-0 (= 10.42-4), libpcre2-8-0 (= 10.42-4), libperl5.36 (= 5.36.0-10ubuntu1), libperlio-gzip-perl (= 0.20-1build1), libperlio-utf8-strict-perl (= 0.010-1), libpetsc-real3.18 (= 3.18.6+dfsg1-1ubuntu3), libpipeline1 (= 1.5.7-1), libpixman-1-0 (= 0.42.2-1), libpmix2 (= 5.0.1-3ubuntu1), libpng16-16 (= 1.6.40-2), libpod-constants-perl (= 0.19-2), libpod-parser-perl (= 1.66-1), libpod-pom-perl (= 2.01-4), libportaudio2 (= 19.6.0-1.2), libproc-processtable-perl (= 0.636-1), libpsl5 (= 0.21.2-1build1), libpthread-stubs0-dev (= 0.4-1build2), libptscotch-7.0 (= 7.0.4-1), libqhull-r8.0 (= 2020.2-6), libqrupdate1 (= 1.1.2-4), libqscintilla2-qt5-15 (= 2.14.1+dfsg-1), libqscintilla2-qt5-l10n (= 2.14.1+dfsg-1), libqt5core5a (= 5.15.10+dfsg-5), libqt5dbus5 (= 5.15.10+dfsg-5), libqt5gui5 (= 5.15.10+dfsg-5), libqt5help5 (= 5.15.10-5), libqt5network5 (= 5.15.10+dfsg-5), libqt5printsupport5 (= 5.15.10+dfsg-5), libqt5sql5 (= 5.15.10+dfsg-5), libqt5widgets5 (= 5.15.10+dfsg-5), libqt5xml5 (= 5.15.10+dfsg-5), librdmacm1 (= 48.0-1), libreadline-dev (= 8.2-3), libreadline8 (= 8.2-3), libregexp-common-perl (= 2017060201-3), libregexp-pattern-license-perl (= 3.11.0-1), libregexp-pattern-perl (= 0.2.14-2), libregexp-wildcards-perl (= 1.05-3), librole-tiny-perl (= 2.002004-1), librtmp1 (= 2.4+20151223.gitfa8646d.1-2build4), libsamplerate0 (= 0.2.2-4), libsasl2-2 (= 2.1.28+dfsg1-4), libsasl2-modules-db (= 2.1.28+dfsg1-4), libscalapack-openmpi2.2 (= 2.2.1-3), libscotch-7.0 (= 7.0.4-1), libseccomp2 (= 2.5.4-2ubuntu1), libselinux1 (= 3.5-1build2), libsemanage-common (= 3.5-1build1), libsemanage2 (= 3.5-1build1), libsensors-config (= 1:3.6.0-7ubuntu1), libsensors5 (= 1:3.6.0-7ubuntu1), libsepol2 (= 3.5-2), libsereal-decoder-perl (= 5.004+ds-1), libsereal-encoder-perl (= 5.004+ds-1), libset-intspan-perl (= 1.19-3), libsframe1 (= 2.41-7ubuntu1), libsharpyuv0 (= 1.3.2-0.3), libsm6 (= 2:1.2.3-1build2), libsmartcols1 (= 2.39.2-6ubuntu1), libsndfile1 (= 1.2.2-1ubuntu2), libsoftware-copyright-perl (= 0.012-2), libsoftware-license-perl (= 0.104005-1), libsoftware-licensemoreutils-perl (= 1.009-1), libsort-versions-perl (= 1.62-3), libspqr4 (= 1:7.3.1+dfsg-2), libsqlite3-0 (= 3.44.2-1), libssh-4 (= 0.10.5-3ubuntu1), libssl-dev (= 3.0.10-1ubuntu3), libssl3 (= 3.0.10-1ubuntu3), libstdc++-13-dev (= 13.2.0-7ubuntu1), libstdc++6 (= 13.2.0-7ubuntu1), libstrictures-perl (= 2.000006-1), libstring-copyright-perl (= 0.003014-1), libstring-escape-perl (= 2010.002-3), libstring-license-perl (= 0.0.9-2ubuntu1), libstring-rewriteprefix-perl (= 0.009-1), libsub-exporter-perl (= 0.990-1), libsub-exporter-progressive-perl (= 0.001013-3), libsub-identify-perl (= 0.14-3), libsub-install-perl (= 0.929-1), libsub-name-perl (= 0.27-1), libsub-override-perl (= 0.09-4), libsub-quote-perl (= 2.006008-1ubuntu1), libsub-uplevel-perl (= 0.2800-3), libsuitesparseconfig7 (= 1:7.3.1+dfsg-2), libsundials-ida6 (= 6.4.1+dfsg1-3build1), libsundials-nvecparallel-petsc6 (= 6.4.1+dfsg1-3build1), libsundials-sunlinsol3 (= 6.4.1+dfsg1-3build1), libsundials-sunmatrix4 (= 6.4.1+dfsg1-3build1), libsuperlu-dist8 (= 8.1.2+dfsg1-2), libsuperlu6 (= 6.0.1+dfsg1-1), libsyntax-keyword-try-perl (= 0.29-1), libsystemd0 (= 253.5-1ubuntu7), libsz2 (= 1.1.2-1), libtasn1-6 (= 4.19.0-3), libterm-readkey-perl (= 2.38-2build1), libtest-exception-perl (= 0.43-3), libtext-autoformat-perl (= 1.750000-2), libtext-glob-perl (= 0.11-3), libtext-levenshtein-damerau-perl (= 0.41-3), libtext-levenshteinxs-perl (= 0.03-5build1), libtext-markdown-discount-perl (= 0.16-1), libtext-reform-perl (= 1.20-5), libtext-template-perl (= 1.61-1), libtext-unidecode-perl (= 1.30-3), libtext-xslate-perl (= 3.5.9-1build2), libthai-data (= 0.1.29-1build1), libthai0 (= 0.1.29-1build1), libtiff6 (= 4.5.1+git230720-1ubuntu1), libtime-duration-perl (= 1.21-2), libtime-moment-perl (= 0.44-2build1), libtimedate-perl (= 2.3300-2), libtinfo6 (= 6.4+20231121-1build1), libtirpc-common (= 1.3.4+ds-1), libtirpc-dev (= 1.3.4+ds-1), libtirpc3 (= 1.3.4+ds-1), libtoml-tiny-perl (= 0.16-1), libtool (= 2.4.7-7), libtrilinos-amesos-13.2 (= 13.2.0-5), libtrilinos-aztecoo-13.2 (= 13.2.0-5), libtrilinos-epetra-13.2 (= 13.2.0-5), libtrilinos-epetraext-13.2 (= 13.2.0-5), libtrilinos-galeri-13.2 (= 13.2.0-5), libtrilinos-ifpack-13.2 (= 13.2.0-5), libtrilinos-kokkos-13.2 (= 13.2.0-5), libtrilinos-ml-13.2 (= 13.2.0-5), libtrilinos-teuchos-13.2 (= 13.2.0-5), libtrilinos-trilinosss-13.2 (= 13.2.0-5), libtrilinos-triutils-13.2 (= 13.2.0-5), libtrilinos-zoltan-13.2 (= 13.2.0-5), libtry-tiny-perl (= 0.31-2), libubsan1 (= 13.2.0-7ubuntu1), libuchardet0 (= 0.0.7-1build2), libudev1 (= 253.5-1ubuntu7), libumfpack6 (= 1:7.3.1+dfsg-2), libunicode-utf8-perl (= 0.62-2), libunistring5 (= 1.1-2), liburi-perl (= 5.21-1), libuuid1 (= 2.39.2-6ubuntu1), libvariable-magic-perl (= 0.63-1), libvorbis0a (= 1.3.7-1build2), libvorbisenc2 (= 1.3.7-1build2), libwacom-common (= 2.8.0-1), libwacom9 (= 2.8.0-1), libwayland-client0 (= 1.22.0-2.1), libwayland-server0 (= 1.22.0-2.1), libwebp7 (= 1.3.2-0.3), libwebpmux3 (= 1.3.2-0.3), libwmflite-0.2-7 (= 0.2.13-1.1), libwww-mechanize-perl (= 2.17-1ubuntu1), libwww-perl (= 6.72-1), libwww-robotrules-perl (= 6.02-1), libx11-6 (= 2:1.8.7-1), libx11-data (= 2:1.8.7-1), libx11-dev (= 2:1.8.7-1), libx11-xcb1 (= 2:1.8.7-1), libxau-dev (= 1:1.0.9-1build5), libxau6 (= 1:1.0.9-1build5), libxcb-dri2-0 (= 1.15-1), libxcb-dri3-0 (= 1.15-1), libxcb-glx0 (= 1.15-1), libxcb-icccm4 (= 0.4.1-1.1build2), libxcb-image0 (= 0.4.0-2), libxcb-keysyms1 (= 0.4.0-1build3), libxcb-present0 (= 1.15-1), libxcb-randr0 (= 1.15-1), libxcb-render-util0 (= 0.3.9-1build3), libxcb-render0 (= 1.15-1), libxcb-shape0 (= 1.15-1), libxcb-shm0 (= 1.15-1), libxcb-sync1 (= 1.15-1), libxcb-util1 (= 0.4.0-1build2), libxcb-xfixes0 (= 1.15-1), libxcb-xinerama0 (= 1.15-1), libxcb-xinput0 (= 1.15-1), libxcb-xkb1 (= 1.15-1), libxcb1 (= 1.15-1), libxcb1-dev (= 1.15-1), libxcursor1 (= 1:1.2.1-1), libxdmcp-dev (= 1:1.1.3-0ubuntu5), libxdmcp6 (= 1:1.1.3-0ubuntu5), libxext6 (= 2:1.3.4-1build1), libxfixes3 (= 1:6.0.0-2), libxft2 (= 2.3.6-1), libxinerama1 (= 2:1.1.4-3), libxkbcommon-x11-0 (= 1.6.0-1), libxkbcommon0 (= 1.6.0-1), libxml-libxml-perl (= 2.0207+dfsg+really+2.0134-1build1), libxml-namespacesupport-perl (= 1.12-2), libxml-sax-base-perl (= 1.09-3), libxml-sax-perl (= 1.02+dfsg-3), libxml2 (= 2.9.14+dfsg-1.3build2), libxnvctrl0 (= 510.47.03-0ubuntu1), libxpm4 (= 1:3.5.12-1.1ubuntu1), libxrender1 (= 1:0.9.10-1.1), libxs-parse-keyword-perl (= 0.38-1), libxs-parse-sublike-perl (= 0.21-2), libxshmfence1 (= 1.3-1build4), libxxf86vm1 (= 1:1.1.4-1build3), libxxhash0 (= 0.8.2-2), libyaml-0-2 (= 0.2.5-1), libyaml-libyaml-perl (= 0.86+ds-1), libyaml-pp-perl (= 0.37.0-1), libyaml-tiny-perl (= 1.74-1), libzstd1 (= 1.5.5+dfsg2-2), licensecheck (= 3.3.9-1ubuntu1), lintian (= 2.116.3ubuntu4), linux-libc-dev (= 6.6.0-13.13), login (= 1:4.13+dfsg1-1ubuntu1), lto-disabled-list (= 44), lzip (= 1.23-6), lzop (= 1.04-2build2), m4 (= 1.4.19-4), make (= 4.3-4.1build1), man-db (= 2.12.0-1), mawk (= 1.3.4.20231102-1), mpi-default-bin (= 1.15), ncurses-base (= 6.4+20231121-1build1), ncurses-bin (= 6.4+20231121-1build1), netbase (= 6.4), ocl-icd-libopencl1 (= 2.3.2-1), octave (= 8.4.0-1build1), octave-common (= 8.4.0-1build1), octave-dev (= 8.4.0-1build1), openmpi-bin (= 4.1.6-1ubuntu1), openmpi-common (= 4.1.6-1ubuntu1), openssh-client (= 1:9.4p1-1ubuntu1), openssl (= 3.0.10-1ubuntu3), passwd (= 1:4.13+dfsg1-1ubuntu1), patch (= 2.7.6-7build2), patchutils (= 0.4.2-1build2), perl (= 5.36.0-10ubuntu1), perl-base (= 5.36.0-10ubuntu1), perl-modules-5.36 (= 5.36.0-10ubuntu1), perl-openssl-defaults (= 7), po-debconf (= 1.0.21+nmu1), readline-common (= 8.2-3), rpcsvc-proto (= 1.4.2-0ubuntu6), sed (= 4.9-1), sensible-utils (= 0.0.20), sgml-base (= 1.31), shared-mime-info (= 2.4-1), sysvinit-utils (= 3.08-3ubuntu1), t1utils (= 1.41-4build2), tar (= 1.34+dfsg-1.2ubuntu1), tex-common (= 6.18), texinfo (= 7.1-2), texinfo-lib (= 7.1-2), ucf (= 3.0043+nmu1), unzip (= 6.0-28ubuntu1), util-linux (= 2.39.2-6ubuntu1), x11-common (= 1:7.7+23ubuntu2), x11proto-dev (= 2023.2-1), xkb-data (= 2.38-2), xorg-sgml-doctools (= 1:1.11-1.1), xtrans-dev (= 1.4.0-1), xz-utils (= 5.4.5-0.1), zlib1g (= 1:1.3.dfsg-3ubuntu1), zlib1g-dev (= 1:1.3.dfsg-3ubuntu1) Environment: DEB_BUILD_OPTIONS="parallel=4" DEB_BUILD_PROFILES="noudeb" LANG="C.UTF-8" LC_ALL="C.UTF-8" SOURCE_DATE_EPOCH="1696665411" +------------------------------------------------------------------------------+ | Package contents | +------------------------------------------------------------------------------+ octave-image_2.14.0-5_s390x.deb ------------------------------- new Debian package, version 2.0. size 694270 bytes: control archive=7010 bytes. 786 bytes, 18 lines control 22780 bytes, 246 lines md5sums Package: octave-image Version: 2.14.0-5 Architecture: s390x Maintainer: Ubuntu Developers Original-Maintainer: Debian Octave Group Installed-Size: 3726 Depends: libc6 (>= 2.29), libgcc-s1 (>= 3.3.1), libstdc++6 (>= 11), octave-abi-58, octave (>= 8.4.0) Section: math Priority: optional Multi-Arch: same Homepage: https://gnu-octave.github.io/packages/image/ Description: image manipulation for Octave This package provides functions for processing images. The package also provides functions for feature extraction, image statistics, spatial and geometric transformations, morphological operations, linear filtering, and much more. . This Octave add-on package is part of the Octave-Forge project. drwxr-xr-x root/root 0 2023-10-07 07:56 ./ drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/ drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/lib/ drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/ drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/ drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/ drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/ drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/ -rw-r--r-- root/root 181 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/PKG_ADD -rw-r--r-- root/root 221 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/PKG_DEL -rw-r--r-- root/root 129408 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/__bilateral__.oct -rw-r--r-- root/root 51464 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/__boundary__.oct -rw-r--r-- root/root 96672 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/__custom_gaussian_smoothing__.oct -rw-r--r-- root/root 43280 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/__eps__.oct -rw-r--r-- root/root 9200 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/__spatial_filtering__.cc-tst -rw-r--r-- root/root 240144 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/__spatial_filtering__.oct -rw-r--r-- root/root 4594 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/bwconncomp.cc-tst -rw-r--r-- root/root 109128 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/bwconncomp.oct -rw-r--r-- root/root 7748 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/bwdist.cc-tst -rw-r--r-- root/root 67960 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/bwdist.oct -rw-r--r-- root/root 1738 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/bwfill.cc-tst -rw-r--r-- root/root 63784 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/bwfill.oct -rw-r--r-- root/root 13627 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/bwlabeln.cc-tst -rw-r--r-- root/root 121368 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/bwlabeln.oct -rw-r--r-- root/root 3220 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/conndef.cc-tst -rw-r--r-- root/root 88528 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/conndef.oct -rw-r--r-- root/root 724 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/graycomatrix.cc-tst -rw-r--r-- root/root 51472 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/graycomatrix.oct -rw-r--r-- root/root 524 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/hough_line.cc-tst -rw-r--r-- root/root 51504 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/hough_line.oct -rw-r--r-- root/root 16346 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/imerode.cc-tst -rw-r--r-- root/root 269488 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/imerode.oct -rw-r--r-- root/root 5384 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/imreconstruct.cc-tst -rw-r--r-- root/root 220200 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/imreconstruct.oct -rw-r--r-- root/root 943 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/intlut.cc-tst -rw-r--r-- root/root 59696 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/intlut.oct -rw-r--r-- root/root 55592 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/nonmax_suppress.oct -rw-r--r-- root/root 51472 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/rotate_scale.oct -rw-r--r-- root/root 8118 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/watershed.cc-tst -rw-r--r-- root/root 187144 2023-10-07 07:56 ./usr/lib/s390x-linux-gnu/octave/packages/image-2.14.0/s390x-ibm-linux-gnu-api-v58/watershed.oct drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/share/ drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/share/doc/ drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/share/doc/octave-image/ lrwxrwxrwx root/root 0 2023-10-07 07:56 ./usr/share/doc/octave-image/NEWS -> ../../octave/packages/image-2.14.0/packinfo/NEWS -rw-r--r-- root/root 2045 2023-10-07 07:56 ./usr/share/doc/octave-image/changelog.Debian.gz -rw-r--r-- root/root 5984 2023-10-07 07:56 ./usr/share/doc/octave-image/copyright drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/share/octave/ drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/share/octave/packages/ drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/ drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref2d/ -rw-r--r-- root/root 2532 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref2d/contains.m -rw-r--r-- root/root 1504 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref2d/disp.m -rw-r--r-- root/root 11270 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref2d/imref2d.m -rw-r--r-- root/root 3140 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref2d/intrinsicToWorld.m -rw-r--r-- root/root 1975 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref2d/sizesMatch.m -rw-r--r-- root/root 3023 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref2d/subsasgn.m -rw-r--r-- root/root 2011 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref2d/subsref.m -rw-r--r-- root/root 2893 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref2d/worldToIntrinsic.m -rw-r--r-- root/root 2855 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref2d/worldToSubscript.m drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref3d/ -rw-r--r-- root/root 2942 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref3d/contains.m -rw-r--r-- root/root 1767 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref3d/disp.m -rw-r--r-- root/root 13768 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref3d/imref3d.m -rw-r--r-- root/root 4077 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref3d/intrinsicToWorld.m -rw-r--r-- root/root 3799 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref3d/subsasgn.m -rw-r--r-- root/root 2279 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref3d/subsref.m -rw-r--r-- root/root 3583 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref3d/worldToIntrinsic.m -rw-r--r-- root/root 3554 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@imref3d/worldToSubscript.m drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@strel/ -rw-r--r-- root/root 1516 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@strel/display.m -rw-r--r-- root/root 1065 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@strel/getheight.m -rw-r--r-- root/root 2030 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@strel/getneighbors.m -rw-r--r-- root/root 963 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@strel/getnhood.m -rw-r--r-- root/root 2697 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@strel/getsequence.m -rw-r--r-- root/root 1234 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@strel/isflat.m -rw-r--r-- root/root 1307 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@strel/isscalar.m -rw-r--r-- root/root 1046 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@strel/numel.m -rw-r--r-- root/root 2568 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@strel/reflect.m -rw-r--r-- root/root 1294 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@strel/size.m -rw-r--r-- root/root 25438 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@strel/strel.m -rw-r--r-- root/root 1731 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@strel/subsref.m -rw-r--r-- root/root 1177 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/@strel/translate.m -rw-r--r-- root/root 5709 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/affine.m -rw-r--r-- root/root 6580 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/affine2d.m -rw-r--r-- root/root 5909 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/affine3d.m -rw-r--r-- root/root 6413 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/analyze75info.m -rw-r--r-- root/root 2579 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/analyze75read.m -rw-r--r-- root/root 10441 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/analyze75write.m -rw-r--r-- root/root 2168 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/applylut.m -rw-r--r-- root/root 4833 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/axes2pix.m -rw-r--r-- root/root 3427 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/bestblk.m -rw-r--r-- root/root 6720 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/blockproc.m -rw-r--r-- root/root 1870 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/bwarea.m -rw-r--r-- root/root 10570 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/bwareafilt.m -rw-r--r-- root/root 3805 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/bwboundaries.m -rw-r--r-- root/root 3370 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/bweuler.m -rw-r--r-- root/root 3345 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/bwhitmiss.m -rw-r--r-- root/root 45855 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/bwmorph.m -rw-r--r-- root/root 3300 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/bwpack.m -rw-r--r-- root/root 9728 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/bwperim.m -rw-r--r-- root/root 4327 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/bwpropfilt.m -rw-r--r-- root/root 1433 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/bwselect.m -rw-r--r-- root/root 3702 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/bwunpack.m -rw-r--r-- root/root 6910 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/checkerboard.m -rw-r--r-- root/root 8894 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/col2im.m -rw-r--r-- root/root 6948 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/colfilt.m -rw-r--r-- root/root 5850 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/colorangle.m -rw-r--r-- root/root 1543 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/colorgradient.m -rw-r--r-- root/root 1261 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/corr2.m -rw-r--r-- root/root 11377 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/cp2tform.m -rw-r--r-- root/root 19210 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/deconvwnr.m -rw-r--r-- root/root 262991 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/doc-cache -rw-r--r-- root/root 30319 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/edge.m -rw-r--r-- root/root 4361 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/edgetaper.m -rw-r--r-- root/root 4501 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/entropy.m -rw-r--r-- root/root 6044 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/entropyfilt.m -rw-r--r-- root/root 2519 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/fchcode.m -rw-r--r-- root/root 5666 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/fftconv2.m -rw-r--r-- root/root 6115 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/fftconvn.m -rw-r--r-- root/root 2824 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/findbounds.m -rw-r--r-- root/root 20812 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/fspecial.m -rw-r--r-- root/root 2757 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/getrangefromclass.m -rw-r--r-- root/root 11700 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/grayslice.m -rw-r--r-- root/root 32889 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/graythresh.m -rw-r--r-- root/root 3549 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/histeq.m -rw-r--r-- root/root 8888 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/hough.m -rw-r--r-- root/root 3282 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/hough_circle.m -rw-r--r-- root/root 12807 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/houghlines.m -rw-r--r-- root/root 11381 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/houghpeaks.m -rw-r--r-- root/root 3975 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/houghtf.m -rw-r--r-- root/root 5948 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/im2bw.m -rw-r--r-- root/root 8952 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/im2col.m -rw-r--r-- root/root 2229 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/im2int16.m -rw-r--r-- root/root 2899 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/im2single.m -rw-r--r-- root/root 3232 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/im2uint16.m -rw-r--r-- root/root 3312 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/im2uint8.m -rw-r--r-- root/root 3114 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imabsdiff.m -rw-r--r-- root/root 3689 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imadd.m -rw-r--r-- root/root 19022 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imadjust.m -rw-r--r-- root/root 7456 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imapplymatrix.m -rw-r--r-- root/root 5223 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imattributes.m -rw-r--r-- root/root 7141 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imbothat.m -rw-r--r-- root/root 7297 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imcast.m -rw-r--r-- root/root 4935 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imclearborder.m -rw-r--r-- root/root 4711 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imclose.m -rw-r--r-- root/root 2835 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imcomplement.m -rw-r--r-- root/root 9624 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imcrop.m -rw-r--r-- root/root 2792 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imdivide.m -rw-r--r-- root/root 5986 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imextendedmax.m -rw-r--r-- root/root 5995 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imextendedmin.m -rw-r--r-- root/root 16146 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imfill.m -rw-r--r-- root/root 6939 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imfilter.m -rw-r--r-- root/root 22194 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imfindcircles.m -rw-r--r-- root/root 26790 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imfuse.m -rw-r--r-- root/root 3282 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imgetfile.m -rw-r--r-- root/root 3547 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imgradient.m -rw-r--r-- root/root 4598 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imgradientxy.m -rw-r--r-- root/root 7054 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imhist.m -rw-r--r-- root/root 6023 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imhmax.m -rw-r--r-- root/root 6439 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imhmin.m -rw-r--r-- root/root 8071 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imimposemin.m -rw-r--r-- root/root 4925 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imlincomb.m -rw-r--r-- root/root 4731 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/immaximas.m -rw-r--r-- root/root 1892 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/immse.m -rw-r--r-- root/root 2768 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/immultiply.m -rw-r--r-- root/root 5337 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imnoise.m -rw-r--r-- root/root 4737 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imopen.m -rw-r--r-- root/root 5239 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imperspectivewarp.m -rw-r--r-- root/root 6664 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/impixel.m -rw-r--r-- root/root 9038 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/impyramid.m -rw-r--r-- root/root 6832 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imquantize.m -rw-r--r-- root/root 3270 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imregionalmax.m -rw-r--r-- root/root 4011 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imregionalmin.m -rw-r--r-- root/root 11275 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imremap.m -rw-r--r-- root/root 34405 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imresize.m -rw-r--r-- root/root 14715 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imrotate.m -rw-r--r-- root/root 8837 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imsharpen.m -rw-r--r-- root/root 4231 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imshear.m -rw-r--r-- root/root 9199 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imshowpair.m -rw-r--r-- root/root 19033 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imsmooth.m -rw-r--r-- root/root 4241 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imsubtract.m -rw-r--r-- root/root 6855 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imtophat.m -rw-r--r-- root/root 17152 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imtransform.m -rw-r--r-- root/root 2628 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/imtranslate.m -rw-r--r-- root/root 5544 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/integralImage.m -rw-r--r-- root/root 3929 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/integralImage3.m -rw-r--r-- root/root 2406 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/iptcheckmap.m -rw-r--r-- root/root 3517 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/iptnum2ordinal.m -rw-r--r-- root/root 10330 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/iradon.m -rw-r--r-- root/root 3555 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/isbw.m -rw-r--r-- root/root 2913 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/isgray.m -rw-r--r-- root/root 2326 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/isind.m -rw-r--r-- root/root 2550 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/isrgb.m -rw-r--r-- root/root 4056 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/lab2double.m -rw-r--r-- root/root 4994 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/lab2rgb.m -rw-r--r-- root/root 4014 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/lab2single.m -rw-r--r-- root/root 2920 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/lab2uint16.m -rw-r--r-- root/root 2732 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/lab2uint8.m -rw-r--r-- root/root 5432 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/lab2xyz.m -rw-r--r-- root/root 6347 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/label2rgb.m -rw-r--r-- root/root 2412 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/labelmatrix.m -rw-r--r-- root/root 2671 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/makelut.m -rw-r--r-- root/root 7116 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/maketform.m -rw-r--r-- root/root 4927 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/mat2gray.m -rw-r--r-- root/root 1759 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/mean2.m -rw-r--r-- root/root 5096 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/medfilt2.m -rw-r--r-- root/root 2773 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/mmgradm.m -rw-r--r-- root/root 14607 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/montage.m -rw-r--r-- root/root 7516 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/nlfilter.m -rw-r--r-- root/root 1194 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/nonmax_supress.m -rw-r--r-- root/root 5631 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/normxcorr2.m -rw-r--r-- root/root 6404 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/ntsc2rgb.m -rw-r--r-- root/root 2493 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/ordfilt2.m -rw-r--r-- root/root 4864 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/ordfiltn.m -rw-r--r-- root/root 3984 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/otf2psf.m -rw-r--r-- root/root 5478 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/otsuthresh.m drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/packinfo/ -rw-r--r-- root/root 528 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/packinfo/DESCRIPTION -rw-r--r-- root/root 2793 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/packinfo/INDEX -rw-r--r-- root/root 35069 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/packinfo/NEWS -rw-r--r-- root/root 25275 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/padarray.m -rw-r--r-- root/root 8460 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/phantom.m -rw-r--r-- root/root 7006 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/poly2mask.m drwxr-xr-x root/root 0 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/private/ -rw-r--r-- root/root 1704 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/private/analyze75filename.m -rw-r--r-- root/root 3148 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/private/colorspace_conversion_input_check.m -rw-r--r-- root/root 1513 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/private/colorspace_conversion_revert.m -rw-r--r-- root/root 1508 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/private/handle_colorspec.m -rw-r--r-- root/root 2009 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/private/im2col_check.m -rw-r--r-- root/root 3703 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/private/imarithmetics.m -rw-r--r-- root/root 1425 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/private/interp_method.m -rw-r--r-- root/root 932 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/private/is_float_image.m -rw-r--r-- root/root 1007 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/private/isimage.m -rw-r--r-- root/root 1102 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/private/ispart.m -rw-r--r-- root/root 1290 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/private/istform.m -rw-r--r-- root/root 3304 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/private/lab2cls.m -rw-r--r-- root/root 1651 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/private/pad_for_sliding_filter.m -rw-r--r-- root/root 1491 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/private/prepare_strel.m -rw-r--r-- root/root 4023 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/private/ycbcrfunc.m -rw-r--r-- root/root 3486 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/psf2otf.m -rw-r--r-- root/root 2157 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/psnr.m -rw-r--r-- root/root 9832 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/qtdecomp.m -rw-r--r-- root/root 3794 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/qtgetblk.m -rw-r--r-- root/root 2601 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/qtsetblk.m -rw-r--r-- root/root 3498 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/radon.m -rw-r--r-- root/root 3451 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/rangefilt.m -rw-r--r-- root/root 70359 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/regionprops.m -rw-r--r-- root/root 4638 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/rgb2lab.m -rw-r--r-- root/root 4868 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/rgb2ntsc.m -rw-r--r-- root/root 5189 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/rgb2xyz.m -rw-r--r-- root/root 2831 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/rgb2ycbcr.m -rw-r--r-- root/root 5717 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/rho_filter.m -rw-r--r-- root/root 2147 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/roicolor.m -rw-r--r-- root/root 1075 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/std2.m -rw-r--r-- root/root 4832 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/stdfilt.m -rw-r--r-- root/root 13705 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/stretchlim.m -rw-r--r-- root/root 2616 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/subimage.m -rw-r--r-- root/root 2267 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/tformfwd.m -rw-r--r-- root/root 2269 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/tforminv.m -rw-r--r-- root/root 14006 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/tiff_tag_read.m -rw-r--r-- root/root 6636 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/viscircles.m -rw-r--r-- root/root 6433 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/wavelength2rgb.m -rw-r--r-- root/root 13066 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/wiener2.m -rw-r--r-- root/root 4950 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/xyz2lab.m -rw-r--r-- root/root 4732 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/xyz2rgb.m -rw-r--r-- root/root 2339 2023-10-07 07:56 ./usr/share/octave/packages/image-2.14.0/ycbcr2rgb.m +------------------------------------------------------------------------------+ | Post Build | +------------------------------------------------------------------------------+ +------------------------------------------------------------------------------+ | Cleanup | +------------------------------------------------------------------------------+ Purging /<> Not removing build depends: as requested +------------------------------------------------------------------------------+ | Summary | +------------------------------------------------------------------------------+ Build Architecture: s390x Build Type: any Build-Space: 131608 Build-Time: 325 Distribution: noble-proposed Host Architecture: s390x Install-Time: 64 Job: octave-image_2.14.0-5.dsc Machine Architecture: s390x Package: octave-image Package-Time: 390 Source-Version: 2.14.0-5 Space: 131608 Status: successful Version: 2.14.0-5 -------------------------------------------------------------------------------- Finished at 2023-11-29T13:44:30Z Build needed 00:06:30, 131608k disk space RUN: /usr/share/launchpad-buildd/bin/in-target scan-for-processes --backend=chroot --series=noble --arch=s390x PACKAGEBUILD-27031084 Scanning for processes to kill in build PACKAGEBUILD-27031084