1 module vips.operations; 2 3 /** 4 5 THIS FILE IS AUTO-GENERATED, DO NOT EDIT 6 7 You can regenerate this file by running the gen-operators.d script 8 9 rdmd gen-operators.d 10 11 Operators were generated for the following Vips version 12 8.7.1 13 14 */ 15 16 import vips.base; 17 import vips.bindings; 18 19 void system(string cmd_format, VOption options = VOption()) 20 { 21 baseOp("system", 22 options 23 .set("cmd-format", cmd_format) 24 ); 25 } 26 27 VImage add(VImage left, VImage right, VOption options = VOption()) 28 { 29 VImage output; 30 baseOp("add", 31 options 32 .set("left", left) 33 .set("right", right) 34 .set("out", &output) 35 ); 36 return output; 37 } 38 39 VImage subtract(VImage left, VImage right, VOption options = VOption()) 40 { 41 VImage output; 42 baseOp("subtract", 43 options 44 .set("left", left) 45 .set("right", right) 46 .set("out", &output) 47 ); 48 return output; 49 } 50 51 VImage multiply(VImage left, VImage right, VOption options = VOption()) 52 { 53 VImage output; 54 baseOp("multiply", 55 options 56 .set("left", left) 57 .set("right", right) 58 .set("out", &output) 59 ); 60 return output; 61 } 62 63 VImage divide(VImage left, VImage right, VOption options = VOption()) 64 { 65 VImage output; 66 baseOp("divide", 67 options 68 .set("left", left) 69 .set("right", right) 70 .set("out", &output) 71 ); 72 return output; 73 } 74 75 VImage relational(VImage left, VImage right, VipsOperationRelational relational, VOption options = VOption()) 76 { 77 VImage output; 78 baseOp("relational", 79 options 80 .set("left", left) 81 .set("right", right) 82 .set("out", &output) 83 .set("relational", relational) 84 ); 85 return output; 86 } 87 88 VImage remainder(VImage left, VImage right, VOption options = VOption()) 89 { 90 VImage output; 91 baseOp("remainder", 92 options 93 .set("left", left) 94 .set("right", right) 95 .set("out", &output) 96 ); 97 return output; 98 } 99 100 VImage boolean(VImage left, VImage right, VipsOperationBoolean boolean, VOption options = VOption()) 101 { 102 VImage output; 103 baseOp("boolean", 104 options 105 .set("left", left) 106 .set("right", right) 107 .set("out", &output) 108 .set("boolean", boolean) 109 ); 110 return output; 111 } 112 113 VImage math2(VImage left, VImage right, VipsOperationMath2 math2, VOption options = VOption()) 114 { 115 VImage output; 116 baseOp("math2", 117 options 118 .set("left", left) 119 .set("right", right) 120 .set("out", &output) 121 .set("math2", math2) 122 ); 123 return output; 124 } 125 126 VImage complex2(VImage left, VImage right, VipsOperationComplex2 cmplx, VOption options = VOption()) 127 { 128 VImage output; 129 baseOp("complex2", 130 options 131 .set("left", left) 132 .set("right", right) 133 .set("out", &output) 134 .set("cmplx", cmplx) 135 ); 136 return output; 137 } 138 139 VImage complexform(VImage left, VImage right, VOption options = VOption()) 140 { 141 VImage output; 142 baseOp("complexform", 143 options 144 .set("left", left) 145 .set("right", right) 146 .set("out", &output) 147 ); 148 return output; 149 } 150 151 VImage sum(VImage[] input, VOption options = VOption()) 152 { 153 VImage output; 154 baseOp("sum", 155 options 156 .set("in", input) 157 .set("out", &output) 158 ); 159 return output; 160 } 161 162 VImage invert(VImage input, VOption options = VOption()) 163 { 164 VImage output; 165 baseOp("invert", 166 options 167 .set("in", input) 168 .set("out", &output) 169 ); 170 return output; 171 } 172 173 VImage linear(VImage input, double[] a, double[] b, VOption options = VOption()) 174 { 175 VImage output; 176 baseOp("linear", 177 options 178 .set("in", input) 179 .set("out", &output) 180 .set("a", a) 181 .set("b", b) 182 ); 183 return output; 184 } 185 186 VImage math(VImage input, VipsOperationMath math, VOption options = VOption()) 187 { 188 VImage output; 189 baseOp("math", 190 options 191 .set("in", input) 192 .set("out", &output) 193 .set("math", math) 194 ); 195 return output; 196 } 197 198 VImage abs(VImage input, VOption options = VOption()) 199 { 200 VImage output; 201 baseOp("abs", 202 options 203 .set("in", input) 204 .set("out", &output) 205 ); 206 return output; 207 } 208 209 VImage sign(VImage input, VOption options = VOption()) 210 { 211 VImage output; 212 baseOp("sign", 213 options 214 .set("in", input) 215 .set("out", &output) 216 ); 217 return output; 218 } 219 220 VImage round(VImage input, VipsOperationRound round, VOption options = VOption()) 221 { 222 VImage output; 223 baseOp("round", 224 options 225 .set("in", input) 226 .set("out", &output) 227 .set("round", round) 228 ); 229 return output; 230 } 231 232 VImage relational_const(VImage input, VipsOperationRelational relational, double[] c, VOption options = VOption()) 233 { 234 VImage output; 235 baseOp("relational_const", 236 options 237 .set("in", input) 238 .set("out", &output) 239 .set("relational", relational) 240 .set("c", c) 241 ); 242 return output; 243 } 244 245 VImage remainder_const(VImage input, double[] c, VOption options = VOption()) 246 { 247 VImage output; 248 baseOp("remainder_const", 249 options 250 .set("in", input) 251 .set("out", &output) 252 .set("c", c) 253 ); 254 return output; 255 } 256 257 VImage boolean_const(VImage input, VipsOperationBoolean boolean, double[] c, VOption options = VOption()) 258 { 259 VImage output; 260 baseOp("boolean_const", 261 options 262 .set("in", input) 263 .set("out", &output) 264 .set("boolean", boolean) 265 .set("c", c) 266 ); 267 return output; 268 } 269 270 VImage math2_const(VImage input, VipsOperationMath2 math2, double[] c, VOption options = VOption()) 271 { 272 VImage output; 273 baseOp("math2_const", 274 options 275 .set("in", input) 276 .set("out", &output) 277 .set("math2", math2) 278 .set("c", c) 279 ); 280 return output; 281 } 282 283 VImage complex(VImage input, VipsOperationComplex cmplx, VOption options = VOption()) 284 { 285 VImage output; 286 baseOp("complex", 287 options 288 .set("in", input) 289 .set("out", &output) 290 .set("cmplx", cmplx) 291 ); 292 return output; 293 } 294 295 VImage complexget(VImage input, VipsOperationComplexget get, VOption options = VOption()) 296 { 297 VImage output; 298 baseOp("complexget", 299 options 300 .set("in", input) 301 .set("out", &output) 302 .set("get", get) 303 ); 304 return output; 305 } 306 307 double avg(VImage input, VOption options = VOption()) 308 { 309 double output; 310 baseOp("avg", 311 options 312 .set("in", input) 313 .set("out", &output) 314 ); 315 return output; 316 } 317 318 double min(VImage input, VOption options = VOption()) 319 { 320 double output; 321 baseOp("min", 322 options 323 .set("in", input) 324 .set("out", &output) 325 ); 326 return output; 327 } 328 329 double max(VImage input, VOption options = VOption()) 330 { 331 double output; 332 baseOp("max", 333 options 334 .set("in", input) 335 .set("out", &output) 336 ); 337 return output; 338 } 339 340 double deviate(VImage input, VOption options = VOption()) 341 { 342 double output; 343 baseOp("deviate", 344 options 345 .set("in", input) 346 .set("out", &output) 347 ); 348 return output; 349 } 350 351 VImage stats(VImage input, VOption options = VOption()) 352 { 353 VImage output; 354 baseOp("stats", 355 options 356 .set("in", input) 357 .set("out", &output) 358 ); 359 return output; 360 } 361 362 VImage hist_find(VImage input, VOption options = VOption()) 363 { 364 VImage output; 365 baseOp("hist_find", 366 options 367 .set("in", input) 368 .set("out", &output) 369 ); 370 return output; 371 } 372 373 VImage hist_find_ndim(VImage input, VOption options = VOption()) 374 { 375 VImage output; 376 baseOp("hist_find_ndim", 377 options 378 .set("in", input) 379 .set("out", &output) 380 ); 381 return output; 382 } 383 384 VImage hist_find_indexed(VImage input, VImage index, VOption options = VOption()) 385 { 386 VImage output; 387 baseOp("hist_find_indexed", 388 options 389 .set("in", input) 390 .set("index", index) 391 .set("out", &output) 392 ); 393 return output; 394 } 395 396 VImage hough_line(VImage input, VOption options = VOption()) 397 { 398 VImage output; 399 baseOp("hough_line", 400 options 401 .set("in", input) 402 .set("out", &output) 403 ); 404 return output; 405 } 406 407 VImage hough_circle(VImage input, VOption options = VOption()) 408 { 409 VImage output; 410 baseOp("hough_circle", 411 options 412 .set("in", input) 413 .set("out", &output) 414 ); 415 return output; 416 } 417 418 VImage project(VImage input, out VImage rows, VOption options = VOption()) 419 { 420 VImage columns; 421 baseOp("project", 422 options 423 .set("in", input) 424 .set("columns", &columns) 425 .set("rows", &rows) 426 ); 427 return columns; 428 } 429 430 VImage profile(VImage input, out VImage rows, VOption options = VOption()) 431 { 432 VImage columns; 433 baseOp("profile", 434 options 435 .set("in", input) 436 .set("columns", &columns) 437 .set("rows", &rows) 438 ); 439 return columns; 440 } 441 442 VImage measure(VImage input, int h, int v, VOption options = VOption()) 443 { 444 VImage output; 445 baseOp("measure", 446 options 447 .set("in", input) 448 .set("out", &output) 449 .set("h", h) 450 .set("v", v) 451 ); 452 return output; 453 } 454 455 double[] getpoint(VImage input, int x, int y, VOption options = VOption()) 456 { 457 double[] out_array; 458 baseOp("getpoint", 459 options 460 .set("in", input) 461 .set("out-array", &out_array) 462 .set("x", x) 463 .set("y", y) 464 ); 465 return out_array; 466 } 467 468 int find_trim(VImage input, out int top, out int width, out int height, VOption options = VOption()) 469 { 470 int left; 471 baseOp("find_trim", 472 options 473 .set("in", input) 474 .set("left", &left) 475 .set("top", &top) 476 .set("width", &width) 477 .set("height", &height) 478 ); 479 return left; 480 } 481 482 VImage copy(VImage input, VOption options = VOption()) 483 { 484 VImage output; 485 baseOp("copy", 486 options 487 .set("in", input) 488 .set("out", &output) 489 ); 490 return output; 491 } 492 493 VImage tilecache(VImage input, VOption options = VOption()) 494 { 495 VImage output; 496 baseOp("tilecache", 497 options 498 .set("in", input) 499 .set("out", &output) 500 ); 501 return output; 502 } 503 504 VImage linecache(VImage input, VOption options = VOption()) 505 { 506 VImage output; 507 baseOp("linecache", 508 options 509 .set("in", input) 510 .set("out", &output) 511 ); 512 return output; 513 } 514 515 VImage sequential(VImage input, VOption options = VOption()) 516 { 517 VImage output; 518 baseOp("sequential", 519 options 520 .set("in", input) 521 .set("out", &output) 522 ); 523 return output; 524 } 525 526 VImage cache(VImage input, VOption options = VOption()) 527 { 528 VImage output; 529 baseOp("cache", 530 options 531 .set("in", input) 532 .set("out", &output) 533 ); 534 return output; 535 } 536 537 VImage embed(VImage input, int x, int y, int width, int height, VOption options = VOption()) 538 { 539 VImage output; 540 baseOp("embed", 541 options 542 .set("in", input) 543 .set("out", &output) 544 .set("x", x) 545 .set("y", y) 546 .set("width", width) 547 .set("height", height) 548 ); 549 return output; 550 } 551 552 VImage gravity(VImage input, VipsCompassDirection direction, int width, int height, VOption options = VOption()) 553 { 554 VImage output; 555 baseOp("gravity", 556 options 557 .set("in", input) 558 .set("out", &output) 559 .set("direction", direction) 560 .set("width", width) 561 .set("height", height) 562 ); 563 return output; 564 } 565 566 VImage flip(VImage input, VipsDirection direction, VOption options = VOption()) 567 { 568 VImage output; 569 baseOp("flip", 570 options 571 .set("in", input) 572 .set("out", &output) 573 .set("direction", direction) 574 ); 575 return output; 576 } 577 578 VImage insert(VImage main, VImage sub, int x, int y, VOption options = VOption()) 579 { 580 VImage output; 581 baseOp("insert", 582 options 583 .set("main", main) 584 .set("sub", sub) 585 .set("out", &output) 586 .set("x", x) 587 .set("y", y) 588 ); 589 return output; 590 } 591 592 VImage join(VImage in1, VImage in2, VipsDirection direction, VOption options = VOption()) 593 { 594 VImage output; 595 baseOp("join", 596 options 597 .set("in1", in1) 598 .set("in2", in2) 599 .set("out", &output) 600 .set("direction", direction) 601 ); 602 return output; 603 } 604 605 VImage arrayjoin(VImage[] input, VOption options = VOption()) 606 { 607 VImage output; 608 baseOp("arrayjoin", 609 options 610 .set("in", input) 611 .set("out", &output) 612 ); 613 return output; 614 } 615 616 VImage extract_area(VImage input, int left, int top, int width, int height, VOption options = VOption()) 617 { 618 VImage output; 619 baseOp("extract_area", 620 options 621 .set("input", input) 622 .set("out", &output) 623 .set("left", left) 624 .set("top", top) 625 .set("width", width) 626 .set("height", height) 627 ); 628 return output; 629 } 630 631 VImage smartcrop(VImage input, int width, int height, VOption options = VOption()) 632 { 633 VImage output; 634 baseOp("smartcrop", 635 options 636 .set("input", input) 637 .set("out", &output) 638 .set("width", width) 639 .set("height", height) 640 ); 641 return output; 642 } 643 644 VImage extract_band(VImage input, int band, VOption options = VOption()) 645 { 646 VImage output; 647 baseOp("extract_band", 648 options 649 .set("in", input) 650 .set("out", &output) 651 .set("band", band) 652 ); 653 return output; 654 } 655 656 VImage bandjoin(VImage[] input, VOption options = VOption()) 657 { 658 VImage output; 659 baseOp("bandjoin", 660 options 661 .set("in", input) 662 .set("out", &output) 663 ); 664 return output; 665 } 666 667 VImage bandjoin_const(VImage input, double[] c, VOption options = VOption()) 668 { 669 VImage output; 670 baseOp("bandjoin_const", 671 options 672 .set("in", input) 673 .set("out", &output) 674 .set("c", c) 675 ); 676 return output; 677 } 678 679 VImage bandrank(VImage[] input, VOption options = VOption()) 680 { 681 VImage output; 682 baseOp("bandrank", 683 options 684 .set("in", input) 685 .set("out", &output) 686 ); 687 return output; 688 } 689 690 VImage bandmean(VImage input, VOption options = VOption()) 691 { 692 VImage output; 693 baseOp("bandmean", 694 options 695 .set("in", input) 696 .set("out", &output) 697 ); 698 return output; 699 } 700 701 VImage bandbool(VImage input, VipsOperationBoolean boolean, VOption options = VOption()) 702 { 703 VImage output; 704 baseOp("bandbool", 705 options 706 .set("in", input) 707 .set("out", &output) 708 .set("boolean", boolean) 709 ); 710 return output; 711 } 712 713 VImage replicate(VImage input, int across, int down, VOption options = VOption()) 714 { 715 VImage output; 716 baseOp("replicate", 717 options 718 .set("in", input) 719 .set("out", &output) 720 .set("across", across) 721 .set("down", down) 722 ); 723 return output; 724 } 725 726 VImage vipsCast(VImage input, VipsBandFormat format, VOption options = VOption()) 727 { 728 VImage output; 729 baseOp("cast", 730 options 731 .set("in", input) 732 .set("out", &output) 733 .set("format", format) 734 ); 735 return output; 736 } 737 738 VImage rot(VImage input, VipsAngle angle, VOption options = VOption()) 739 { 740 VImage output; 741 baseOp("rot", 742 options 743 .set("in", input) 744 .set("out", &output) 745 .set("angle", angle) 746 ); 747 return output; 748 } 749 750 VImage rot45(VImage input, VOption options = VOption()) 751 { 752 VImage output; 753 baseOp("rot45", 754 options 755 .set("in", input) 756 .set("out", &output) 757 ); 758 return output; 759 } 760 761 VImage autorot(VImage input, VOption options = VOption()) 762 { 763 VImage output; 764 baseOp("autorot", 765 options 766 .set("in", input) 767 .set("out", &output) 768 ); 769 return output; 770 } 771 772 VImage ifthenelse(VImage cond, VImage in1, VImage in2, VOption options = VOption()) 773 { 774 VImage output; 775 baseOp("ifthenelse", 776 options 777 .set("cond", cond) 778 .set("in1", in1) 779 .set("in2", in2) 780 .set("out", &output) 781 ); 782 return output; 783 } 784 785 VImage recomb(VImage input, VImage m, VOption options = VOption()) 786 { 787 VImage output; 788 baseOp("recomb", 789 options 790 .set("in", input) 791 .set("out", &output) 792 .set("m", m) 793 ); 794 return output; 795 } 796 797 VImage bandfold(VImage input, VOption options = VOption()) 798 { 799 VImage output; 800 baseOp("bandfold", 801 options 802 .set("in", input) 803 .set("out", &output) 804 ); 805 return output; 806 } 807 808 VImage bandunfold(VImage input, VOption options = VOption()) 809 { 810 VImage output; 811 baseOp("bandunfold", 812 options 813 .set("in", input) 814 .set("out", &output) 815 ); 816 return output; 817 } 818 819 VImage flatten(VImage input, VOption options = VOption()) 820 { 821 VImage output; 822 baseOp("flatten", 823 options 824 .set("in", input) 825 .set("out", &output) 826 ); 827 return output; 828 } 829 830 VImage premultiply(VImage input, VOption options = VOption()) 831 { 832 VImage output; 833 baseOp("premultiply", 834 options 835 .set("in", input) 836 .set("out", &output) 837 ); 838 return output; 839 } 840 841 VImage unpremultiply(VImage input, VOption options = VOption()) 842 { 843 VImage output; 844 baseOp("unpremultiply", 845 options 846 .set("in", input) 847 .set("out", &output) 848 ); 849 return output; 850 } 851 852 VImage grid(VImage input, int tile_height, int across, int down, VOption options = VOption()) 853 { 854 VImage output; 855 baseOp("grid", 856 options 857 .set("in", input) 858 .set("out", &output) 859 .set("tile-height", tile_height) 860 .set("across", across) 861 .set("down", down) 862 ); 863 return output; 864 } 865 866 VImage transpose3d(VImage input, VOption options = VOption()) 867 { 868 VImage output; 869 baseOp("transpose3d", 870 options 871 .set("in", input) 872 .set("out", &output) 873 ); 874 return output; 875 } 876 877 VImage scale(VImage input, VOption options = VOption()) 878 { 879 VImage output; 880 baseOp("scale", 881 options 882 .set("in", input) 883 .set("out", &output) 884 ); 885 return output; 886 } 887 888 VImage wrap(VImage input, VOption options = VOption()) 889 { 890 VImage output; 891 baseOp("wrap", 892 options 893 .set("in", input) 894 .set("out", &output) 895 ); 896 return output; 897 } 898 899 VImage zoom(VImage input, int xfac, int yfac, VOption options = VOption()) 900 { 901 VImage output; 902 baseOp("zoom", 903 options 904 .set("input", input) 905 .set("out", &output) 906 .set("xfac", xfac) 907 .set("yfac", yfac) 908 ); 909 return output; 910 } 911 912 VImage subsample(VImage input, int xfac, int yfac, VOption options = VOption()) 913 { 914 VImage output; 915 baseOp("subsample", 916 options 917 .set("input", input) 918 .set("out", &output) 919 .set("xfac", xfac) 920 .set("yfac", yfac) 921 ); 922 return output; 923 } 924 925 VImage msb(VImage input, VOption options = VOption()) 926 { 927 VImage output; 928 baseOp("msb", 929 options 930 .set("in", input) 931 .set("out", &output) 932 ); 933 return output; 934 } 935 936 VImage byteswap(VImage input, VOption options = VOption()) 937 { 938 VImage output; 939 baseOp("byteswap", 940 options 941 .set("in", input) 942 .set("out", &output) 943 ); 944 return output; 945 } 946 947 VImage falsecolour(VImage input, VOption options = VOption()) 948 { 949 VImage output; 950 baseOp("falsecolour", 951 options 952 .set("in", input) 953 .set("out", &output) 954 ); 955 return output; 956 } 957 958 VImage gamma(VImage input, VOption options = VOption()) 959 { 960 VImage output; 961 baseOp("gamma", 962 options 963 .set("in", input) 964 .set("out", &output) 965 ); 966 return output; 967 } 968 969 VImage composite(VImage[] input, int[] mode, VOption options = VOption()) 970 { 971 VImage output; 972 baseOp("composite", 973 options 974 .set("in", input) 975 .set("out", &output) 976 .set("mode", mode) 977 ); 978 return output; 979 } 980 981 VImage composite2(VImage base, VImage overlay, VipsBlendMode mode, VOption options = VOption()) 982 { 983 VImage output; 984 baseOp("composite2", 985 options 986 .set("base", base) 987 .set("overlay", overlay) 988 .set("out", &output) 989 .set("mode", mode) 990 ); 991 return output; 992 } 993 994 VImage black(int width, int height, VOption options = VOption()) 995 { 996 VImage output; 997 baseOp("black", 998 options 999 .set("out", &output) 1000 .set("width", width) 1001 .set("height", height) 1002 ); 1003 return output; 1004 } 1005 1006 VImage gaussnoise(int width, int height, VOption options = VOption()) 1007 { 1008 VImage output; 1009 baseOp("gaussnoise", 1010 options 1011 .set("out", &output) 1012 .set("width", width) 1013 .set("height", height) 1014 ); 1015 return output; 1016 } 1017 1018 VImage text(string text, VOption options = VOption()) 1019 { 1020 VImage output; 1021 baseOp("text", 1022 options 1023 .set("out", &output) 1024 .set("text", text) 1025 ); 1026 return output; 1027 } 1028 1029 VImage xyz(int width, int height, VOption options = VOption()) 1030 { 1031 VImage output; 1032 baseOp("xyz", 1033 options 1034 .set("out", &output) 1035 .set("width", width) 1036 .set("height", height) 1037 ); 1038 return output; 1039 } 1040 1041 VImage gaussmat(double sigma, double min_ampl, VOption options = VOption()) 1042 { 1043 VImage output; 1044 baseOp("gaussmat", 1045 options 1046 .set("out", &output) 1047 .set("sigma", sigma) 1048 .set("min-ampl", min_ampl) 1049 ); 1050 return output; 1051 } 1052 1053 VImage logmat(double sigma, double min_ampl, VOption options = VOption()) 1054 { 1055 VImage output; 1056 baseOp("logmat", 1057 options 1058 .set("out", &output) 1059 .set("sigma", sigma) 1060 .set("min-ampl", min_ampl) 1061 ); 1062 return output; 1063 } 1064 1065 VImage eye(int width, int height, VOption options = VOption()) 1066 { 1067 VImage output; 1068 baseOp("eye", 1069 options 1070 .set("out", &output) 1071 .set("width", width) 1072 .set("height", height) 1073 ); 1074 return output; 1075 } 1076 1077 VImage grey(int width, int height, VOption options = VOption()) 1078 { 1079 VImage output; 1080 baseOp("grey", 1081 options 1082 .set("out", &output) 1083 .set("width", width) 1084 .set("height", height) 1085 ); 1086 return output; 1087 } 1088 1089 VImage zone(int width, int height, VOption options = VOption()) 1090 { 1091 VImage output; 1092 baseOp("zone", 1093 options 1094 .set("out", &output) 1095 .set("width", width) 1096 .set("height", height) 1097 ); 1098 return output; 1099 } 1100 1101 VImage sines(int width, int height, VOption options = VOption()) 1102 { 1103 VImage output; 1104 baseOp("sines", 1105 options 1106 .set("out", &output) 1107 .set("width", width) 1108 .set("height", height) 1109 ); 1110 return output; 1111 } 1112 1113 VImage mask_ideal(int width, int height, double frequency_cutoff, VOption options = VOption()) 1114 { 1115 VImage output; 1116 baseOp("mask_ideal", 1117 options 1118 .set("out", &output) 1119 .set("width", width) 1120 .set("height", height) 1121 .set("frequency-cutoff", frequency_cutoff) 1122 ); 1123 return output; 1124 } 1125 1126 VImage mask_ideal_ring(int width, int height, double frequency_cutoff, double ringwidth, VOption options = VOption()) 1127 { 1128 VImage output; 1129 baseOp("mask_ideal_ring", 1130 options 1131 .set("out", &output) 1132 .set("width", width) 1133 .set("height", height) 1134 .set("frequency-cutoff", frequency_cutoff) 1135 .set("ringwidth", ringwidth) 1136 ); 1137 return output; 1138 } 1139 1140 VImage mask_ideal_band(int width, int height, double frequency_cutoff_x, double frequency_cutoff_y, double radius, VOption options = VOption()) 1141 { 1142 VImage output; 1143 baseOp("mask_ideal_band", 1144 options 1145 .set("out", &output) 1146 .set("width", width) 1147 .set("height", height) 1148 .set("frequency-cutoff-x", frequency_cutoff_x) 1149 .set("frequency-cutoff-y", frequency_cutoff_y) 1150 .set("radius", radius) 1151 ); 1152 return output; 1153 } 1154 1155 VImage mask_butterworth(int width, int height, double order, double frequency_cutoff, double amplitude_cutoff, VOption options = VOption()) 1156 { 1157 VImage output; 1158 baseOp("mask_butterworth", 1159 options 1160 .set("out", &output) 1161 .set("width", width) 1162 .set("height", height) 1163 .set("order", order) 1164 .set("frequency-cutoff", frequency_cutoff) 1165 .set("amplitude-cutoff", amplitude_cutoff) 1166 ); 1167 return output; 1168 } 1169 1170 VImage mask_butterworth_ring(int width, int height, double order, double frequency_cutoff, double amplitude_cutoff, double ringwidth, VOption options = VOption()) 1171 { 1172 VImage output; 1173 baseOp("mask_butterworth_ring", 1174 options 1175 .set("out", &output) 1176 .set("width", width) 1177 .set("height", height) 1178 .set("order", order) 1179 .set("frequency-cutoff", frequency_cutoff) 1180 .set("amplitude-cutoff", amplitude_cutoff) 1181 .set("ringwidth", ringwidth) 1182 ); 1183 return output; 1184 } 1185 1186 VImage mask_butterworth_band(int width, int height, double order, double frequency_cutoff_x, double frequency_cutoff_y, double radius, double amplitude_cutoff, VOption options = VOption()) 1187 { 1188 VImage output; 1189 baseOp("mask_butterworth_band", 1190 options 1191 .set("out", &output) 1192 .set("width", width) 1193 .set("height", height) 1194 .set("order", order) 1195 .set("frequency-cutoff-x", frequency_cutoff_x) 1196 .set("frequency-cutoff-y", frequency_cutoff_y) 1197 .set("radius", radius) 1198 .set("amplitude-cutoff", amplitude_cutoff) 1199 ); 1200 return output; 1201 } 1202 1203 VImage mask_gaussian(int width, int height, double frequency_cutoff, double amplitude_cutoff, VOption options = VOption()) 1204 { 1205 VImage output; 1206 baseOp("mask_gaussian", 1207 options 1208 .set("out", &output) 1209 .set("width", width) 1210 .set("height", height) 1211 .set("frequency-cutoff", frequency_cutoff) 1212 .set("amplitude-cutoff", amplitude_cutoff) 1213 ); 1214 return output; 1215 } 1216 1217 VImage mask_gaussian_ring(int width, int height, double frequency_cutoff, double amplitude_cutoff, double ringwidth, VOption options = VOption()) 1218 { 1219 VImage output; 1220 baseOp("mask_gaussian_ring", 1221 options 1222 .set("out", &output) 1223 .set("width", width) 1224 .set("height", height) 1225 .set("frequency-cutoff", frequency_cutoff) 1226 .set("amplitude-cutoff", amplitude_cutoff) 1227 .set("ringwidth", ringwidth) 1228 ); 1229 return output; 1230 } 1231 1232 VImage mask_gaussian_band(int width, int height, double frequency_cutoff_x, double frequency_cutoff_y, double radius, double amplitude_cutoff, VOption options = VOption()) 1233 { 1234 VImage output; 1235 baseOp("mask_gaussian_band", 1236 options 1237 .set("out", &output) 1238 .set("width", width) 1239 .set("height", height) 1240 .set("frequency-cutoff-x", frequency_cutoff_x) 1241 .set("frequency-cutoff-y", frequency_cutoff_y) 1242 .set("radius", radius) 1243 .set("amplitude-cutoff", amplitude_cutoff) 1244 ); 1245 return output; 1246 } 1247 1248 VImage mask_fractal(int width, int height, double fractal_dimension, VOption options = VOption()) 1249 { 1250 VImage output; 1251 baseOp("mask_fractal", 1252 options 1253 .set("out", &output) 1254 .set("width", width) 1255 .set("height", height) 1256 .set("fractal-dimension", fractal_dimension) 1257 ); 1258 return output; 1259 } 1260 1261 VImage buildlut(VImage input, VOption options = VOption()) 1262 { 1263 VImage output; 1264 baseOp("buildlut", 1265 options 1266 .set("in", input) 1267 .set("out", &output) 1268 ); 1269 return output; 1270 } 1271 1272 VImage invertlut(VImage input, VOption options = VOption()) 1273 { 1274 VImage output; 1275 baseOp("invertlut", 1276 options 1277 .set("in", input) 1278 .set("out", &output) 1279 ); 1280 return output; 1281 } 1282 1283 VImage tonelut(VOption options = VOption()) 1284 { 1285 VImage output; 1286 baseOp("tonelut", 1287 options 1288 .set("out", &output) 1289 ); 1290 return output; 1291 } 1292 1293 VImage identity(VOption options = VOption()) 1294 { 1295 VImage output; 1296 baseOp("identity", 1297 options 1298 .set("out", &output) 1299 ); 1300 return output; 1301 } 1302 1303 VImage fractsurf(int width, int height, double fractal_dimension, VOption options = VOption()) 1304 { 1305 VImage output; 1306 baseOp("fractsurf", 1307 options 1308 .set("out", &output) 1309 .set("width", width) 1310 .set("height", height) 1311 .set("fractal-dimension", fractal_dimension) 1312 ); 1313 return output; 1314 } 1315 1316 VImage worley(int width, int height, VOption options = VOption()) 1317 { 1318 VImage output; 1319 baseOp("worley", 1320 options 1321 .set("out", &output) 1322 .set("width", width) 1323 .set("height", height) 1324 ); 1325 return output; 1326 } 1327 1328 VImage perlin(int width, int height, VOption options = VOption()) 1329 { 1330 VImage output; 1331 baseOp("perlin", 1332 options 1333 .set("out", &output) 1334 .set("width", width) 1335 .set("height", height) 1336 ); 1337 return output; 1338 } 1339 1340 VImage csvload(string filename, VOption options = VOption()) 1341 { 1342 VImage output; 1343 baseOp("csvload", 1344 options 1345 .set("filename", filename) 1346 .set("out", &output) 1347 ); 1348 return output; 1349 } 1350 1351 VImage matrixload(string filename, VOption options = VOption()) 1352 { 1353 VImage output; 1354 baseOp("matrixload", 1355 options 1356 .set("filename", filename) 1357 .set("out", &output) 1358 ); 1359 return output; 1360 } 1361 1362 VImage rawload(string filename, int width, int height, int bands, VOption options = VOption()) 1363 { 1364 VImage output; 1365 baseOp("rawload", 1366 options 1367 .set("filename", filename) 1368 .set("out", &output) 1369 .set("width", width) 1370 .set("height", height) 1371 .set("bands", bands) 1372 ); 1373 return output; 1374 } 1375 1376 VImage vipsload(string filename, VOption options = VOption()) 1377 { 1378 VImage output; 1379 baseOp("vipsload", 1380 options 1381 .set("filename", filename) 1382 .set("out", &output) 1383 ); 1384 return output; 1385 } 1386 1387 VImage analyzeload(string filename, VOption options = VOption()) 1388 { 1389 VImage output; 1390 baseOp("analyzeload", 1391 options 1392 .set("filename", filename) 1393 .set("out", &output) 1394 ); 1395 return output; 1396 } 1397 1398 VImage ppmload(string filename, VOption options = VOption()) 1399 { 1400 VImage output; 1401 baseOp("ppmload", 1402 options 1403 .set("filename", filename) 1404 .set("out", &output) 1405 ); 1406 return output; 1407 } 1408 1409 VImage radload(string filename, VOption options = VOption()) 1410 { 1411 VImage output; 1412 baseOp("radload", 1413 options 1414 .set("filename", filename) 1415 .set("out", &output) 1416 ); 1417 return output; 1418 } 1419 1420 VImage pngload(string filename, VOption options = VOption()) 1421 { 1422 VImage output; 1423 baseOp("pngload", 1424 options 1425 .set("filename", filename) 1426 .set("out", &output) 1427 ); 1428 return output; 1429 } 1430 1431 VImage pngload_buffer(VipsBlob* buffer, VOption options = VOption()) 1432 { 1433 VImage output; 1434 baseOp("pngload_buffer", 1435 options 1436 .set("buffer", buffer) 1437 .set("out", &output) 1438 ); 1439 return output; 1440 } 1441 1442 VImage jpegload(string filename, VOption options = VOption()) 1443 { 1444 VImage output; 1445 baseOp("jpegload", 1446 options 1447 .set("filename", filename) 1448 .set("out", &output) 1449 ); 1450 return output; 1451 } 1452 1453 VImage jpegload_buffer(VipsBlob* buffer, VOption options = VOption()) 1454 { 1455 VImage output; 1456 baseOp("jpegload_buffer", 1457 options 1458 .set("buffer", buffer) 1459 .set("out", &output) 1460 ); 1461 return output; 1462 } 1463 1464 void csvsave(VImage input, string filename, VOption options = VOption()) 1465 { 1466 baseOp("csvsave", 1467 options 1468 .set("in", input) 1469 .set("filename", filename) 1470 ); 1471 } 1472 1473 void matrixsave(VImage input, string filename, VOption options = VOption()) 1474 { 1475 baseOp("matrixsave", 1476 options 1477 .set("in", input) 1478 .set("filename", filename) 1479 ); 1480 } 1481 1482 void matrixprint(VImage input, VOption options = VOption()) 1483 { 1484 baseOp("matrixprint", 1485 options 1486 .set("in", input) 1487 ); 1488 } 1489 1490 void rawsave(VImage input, string filename, VOption options = VOption()) 1491 { 1492 baseOp("rawsave", 1493 options 1494 .set("in", input) 1495 .set("filename", filename) 1496 ); 1497 } 1498 1499 void rawsave_fd(VImage input, int fd, VOption options = VOption()) 1500 { 1501 baseOp("rawsave_fd", 1502 options 1503 .set("in", input) 1504 .set("fd", fd) 1505 ); 1506 } 1507 1508 void vipssave(VImage input, string filename, VOption options = VOption()) 1509 { 1510 baseOp("vipssave", 1511 options 1512 .set("in", input) 1513 .set("filename", filename) 1514 ); 1515 } 1516 1517 void ppmsave(VImage input, string filename, VOption options = VOption()) 1518 { 1519 baseOp("ppmsave", 1520 options 1521 .set("in", input) 1522 .set("filename", filename) 1523 ); 1524 } 1525 1526 void radsave(VImage input, string filename, VOption options = VOption()) 1527 { 1528 baseOp("radsave", 1529 options 1530 .set("in", input) 1531 .set("filename", filename) 1532 ); 1533 } 1534 1535 VipsBlob* radsave_buffer(VImage input, VOption options = VOption()) 1536 { 1537 VipsBlob* buffer; 1538 baseOp("radsave_buffer", 1539 options 1540 .set("in", input) 1541 .set("buffer", &buffer) 1542 ); 1543 return buffer; 1544 } 1545 1546 void pngsave(VImage input, string filename, VOption options = VOption()) 1547 { 1548 baseOp("pngsave", 1549 options 1550 .set("in", input) 1551 .set("filename", filename) 1552 ); 1553 } 1554 1555 VipsBlob* pngsave_buffer(VImage input, VOption options = VOption()) 1556 { 1557 VipsBlob* buffer; 1558 baseOp("pngsave_buffer", 1559 options 1560 .set("in", input) 1561 .set("buffer", &buffer) 1562 ); 1563 return buffer; 1564 } 1565 1566 void jpegsave(VImage input, string filename, VOption options = VOption()) 1567 { 1568 baseOp("jpegsave", 1569 options 1570 .set("in", input) 1571 .set("filename", filename) 1572 ); 1573 } 1574 1575 VipsBlob* jpegsave_buffer(VImage input, VOption options = VOption()) 1576 { 1577 VipsBlob* buffer; 1578 baseOp("jpegsave_buffer", 1579 options 1580 .set("in", input) 1581 .set("buffer", &buffer) 1582 ); 1583 return buffer; 1584 } 1585 1586 void jpegsave_mime(VImage input, VOption options = VOption()) 1587 { 1588 baseOp("jpegsave_mime", 1589 options 1590 .set("in", input) 1591 ); 1592 } 1593 1594 VImage thumbnail(string filename, int width, VOption options = VOption()) 1595 { 1596 VImage output; 1597 baseOp("thumbnail", 1598 options 1599 .set("filename", filename) 1600 .set("out", &output) 1601 .set("width", width) 1602 ); 1603 return output; 1604 } 1605 1606 VImage thumbnail_buffer(VipsBlob* buffer, int width, VOption options = VOption()) 1607 { 1608 VImage output; 1609 baseOp("thumbnail_buffer", 1610 options 1611 .set("buffer", buffer) 1612 .set("out", &output) 1613 .set("width", width) 1614 ); 1615 return output; 1616 } 1617 1618 VImage thumbnail_image(VImage input, int width, VOption options = VOption()) 1619 { 1620 VImage output; 1621 baseOp("thumbnail_image", 1622 options 1623 .set("in", input) 1624 .set("out", &output) 1625 .set("width", width) 1626 ); 1627 return output; 1628 } 1629 1630 VImage mapim(VImage input, VImage index, VOption options = VOption()) 1631 { 1632 VImage output; 1633 baseOp("mapim", 1634 options 1635 .set("in", input) 1636 .set("out", &output) 1637 .set("index", index) 1638 ); 1639 return output; 1640 } 1641 1642 VImage shrink(VImage input, double hshrink, double vshrink, VOption options = VOption()) 1643 { 1644 VImage output; 1645 baseOp("shrink", 1646 options 1647 .set("in", input) 1648 .set("out", &output) 1649 .set("hshrink", hshrink) 1650 .set("vshrink", vshrink) 1651 ); 1652 return output; 1653 } 1654 1655 VImage shrinkh(VImage input, int hshrink, VOption options = VOption()) 1656 { 1657 VImage output; 1658 baseOp("shrinkh", 1659 options 1660 .set("in", input) 1661 .set("out", &output) 1662 .set("hshrink", hshrink) 1663 ); 1664 return output; 1665 } 1666 1667 VImage shrinkv(VImage input, int vshrink, VOption options = VOption()) 1668 { 1669 VImage output; 1670 baseOp("shrinkv", 1671 options 1672 .set("in", input) 1673 .set("out", &output) 1674 .set("vshrink", vshrink) 1675 ); 1676 return output; 1677 } 1678 1679 VImage reduceh(VImage input, double hshrink, VOption options = VOption()) 1680 { 1681 VImage output; 1682 baseOp("reduceh", 1683 options 1684 .set("in", input) 1685 .set("out", &output) 1686 .set("hshrink", hshrink) 1687 ); 1688 return output; 1689 } 1690 1691 VImage reducev(VImage input, double vshrink, VOption options = VOption()) 1692 { 1693 VImage output; 1694 baseOp("reducev", 1695 options 1696 .set("in", input) 1697 .set("out", &output) 1698 .set("vshrink", vshrink) 1699 ); 1700 return output; 1701 } 1702 1703 VImage reduce(VImage input, double hshrink, double vshrink, VOption options = VOption()) 1704 { 1705 VImage output; 1706 baseOp("reduce", 1707 options 1708 .set("in", input) 1709 .set("out", &output) 1710 .set("hshrink", hshrink) 1711 .set("vshrink", vshrink) 1712 ); 1713 return output; 1714 } 1715 1716 VImage quadratic(VImage input, VImage coeff, VOption options = VOption()) 1717 { 1718 VImage output; 1719 baseOp("quadratic", 1720 options 1721 .set("in", input) 1722 .set("out", &output) 1723 .set("coeff", coeff) 1724 ); 1725 return output; 1726 } 1727 1728 VImage affine(VImage input, double[] matrix, VOption options = VOption()) 1729 { 1730 VImage output; 1731 baseOp("affine", 1732 options 1733 .set("in", input) 1734 .set("out", &output) 1735 .set("matrix", matrix) 1736 ); 1737 return output; 1738 } 1739 1740 VImage similarity(VImage input, VOption options = VOption()) 1741 { 1742 VImage output; 1743 baseOp("similarity", 1744 options 1745 .set("in", input) 1746 .set("out", &output) 1747 ); 1748 return output; 1749 } 1750 1751 VImage rotate(VImage input, double angle, VOption options = VOption()) 1752 { 1753 VImage output; 1754 baseOp("rotate", 1755 options 1756 .set("in", input) 1757 .set("out", &output) 1758 .set("angle", angle) 1759 ); 1760 return output; 1761 } 1762 1763 VImage resize(VImage input, double scale, VOption options = VOption()) 1764 { 1765 VImage output; 1766 baseOp("resize", 1767 options 1768 .set("in", input) 1769 .set("out", &output) 1770 .set("scale", scale) 1771 ); 1772 return output; 1773 } 1774 1775 VImage colourspace(VImage input, VipsInterpretation space, VOption options = VOption()) 1776 { 1777 VImage output; 1778 baseOp("colourspace", 1779 options 1780 .set("in", input) 1781 .set("out", &output) 1782 .set("space", space) 1783 ); 1784 return output; 1785 } 1786 1787 VImage Lab2XYZ(VImage input, VOption options = VOption()) 1788 { 1789 VImage output; 1790 baseOp("Lab2XYZ", 1791 options 1792 .set("in", input) 1793 .set("out", &output) 1794 ); 1795 return output; 1796 } 1797 1798 VImage XYZ2Lab(VImage input, VOption options = VOption()) 1799 { 1800 VImage output; 1801 baseOp("XYZ2Lab", 1802 options 1803 .set("in", input) 1804 .set("out", &output) 1805 ); 1806 return output; 1807 } 1808 1809 VImage Lab2LCh(VImage input, VOption options = VOption()) 1810 { 1811 VImage output; 1812 baseOp("Lab2LCh", 1813 options 1814 .set("in", input) 1815 .set("out", &output) 1816 ); 1817 return output; 1818 } 1819 1820 VImage LCh2Lab(VImage input, VOption options = VOption()) 1821 { 1822 VImage output; 1823 baseOp("LCh2Lab", 1824 options 1825 .set("in", input) 1826 .set("out", &output) 1827 ); 1828 return output; 1829 } 1830 1831 VImage LCh2CMC(VImage input, VOption options = VOption()) 1832 { 1833 VImage output; 1834 baseOp("LCh2CMC", 1835 options 1836 .set("in", input) 1837 .set("out", &output) 1838 ); 1839 return output; 1840 } 1841 1842 VImage CMC2LCh(VImage input, VOption options = VOption()) 1843 { 1844 VImage output; 1845 baseOp("CMC2LCh", 1846 options 1847 .set("in", input) 1848 .set("out", &output) 1849 ); 1850 return output; 1851 } 1852 1853 VImage XYZ2Yxy(VImage input, VOption options = VOption()) 1854 { 1855 VImage output; 1856 baseOp("XYZ2Yxy", 1857 options 1858 .set("in", input) 1859 .set("out", &output) 1860 ); 1861 return output; 1862 } 1863 1864 VImage Yxy2XYZ(VImage input, VOption options = VOption()) 1865 { 1866 VImage output; 1867 baseOp("Yxy2XYZ", 1868 options 1869 .set("in", input) 1870 .set("out", &output) 1871 ); 1872 return output; 1873 } 1874 1875 VImage scRGB2XYZ(VImage input, VOption options = VOption()) 1876 { 1877 VImage output; 1878 baseOp("scRGB2XYZ", 1879 options 1880 .set("in", input) 1881 .set("out", &output) 1882 ); 1883 return output; 1884 } 1885 1886 VImage XYZ2scRGB(VImage input, VOption options = VOption()) 1887 { 1888 VImage output; 1889 baseOp("XYZ2scRGB", 1890 options 1891 .set("in", input) 1892 .set("out", &output) 1893 ); 1894 return output; 1895 } 1896 1897 VImage LabQ2Lab(VImage input, VOption options = VOption()) 1898 { 1899 VImage output; 1900 baseOp("LabQ2Lab", 1901 options 1902 .set("in", input) 1903 .set("out", &output) 1904 ); 1905 return output; 1906 } 1907 1908 VImage Lab2LabQ(VImage input, VOption options = VOption()) 1909 { 1910 VImage output; 1911 baseOp("Lab2LabQ", 1912 options 1913 .set("in", input) 1914 .set("out", &output) 1915 ); 1916 return output; 1917 } 1918 1919 VImage LabQ2LabS(VImage input, VOption options = VOption()) 1920 { 1921 VImage output; 1922 baseOp("LabQ2LabS", 1923 options 1924 .set("in", input) 1925 .set("out", &output) 1926 ); 1927 return output; 1928 } 1929 1930 VImage LabS2LabQ(VImage input, VOption options = VOption()) 1931 { 1932 VImage output; 1933 baseOp("LabS2LabQ", 1934 options 1935 .set("in", input) 1936 .set("out", &output) 1937 ); 1938 return output; 1939 } 1940 1941 VImage LabS2Lab(VImage input, VOption options = VOption()) 1942 { 1943 VImage output; 1944 baseOp("LabS2Lab", 1945 options 1946 .set("in", input) 1947 .set("out", &output) 1948 ); 1949 return output; 1950 } 1951 1952 VImage Lab2LabS(VImage input, VOption options = VOption()) 1953 { 1954 VImage output; 1955 baseOp("Lab2LabS", 1956 options 1957 .set("in", input) 1958 .set("out", &output) 1959 ); 1960 return output; 1961 } 1962 1963 VImage rad2float(VImage input, VOption options = VOption()) 1964 { 1965 VImage output; 1966 baseOp("rad2float", 1967 options 1968 .set("in", input) 1969 .set("out", &output) 1970 ); 1971 return output; 1972 } 1973 1974 VImage float2rad(VImage input, VOption options = VOption()) 1975 { 1976 VImage output; 1977 baseOp("float2rad", 1978 options 1979 .set("in", input) 1980 .set("out", &output) 1981 ); 1982 return output; 1983 } 1984 1985 VImage LabQ2sRGB(VImage input, VOption options = VOption()) 1986 { 1987 VImage output; 1988 baseOp("LabQ2sRGB", 1989 options 1990 .set("in", input) 1991 .set("out", &output) 1992 ); 1993 return output; 1994 } 1995 1996 VImage sRGB2HSV(VImage input, VOption options = VOption()) 1997 { 1998 VImage output; 1999 baseOp("sRGB2HSV", 2000 options 2001 .set("in", input) 2002 .set("out", &output) 2003 ); 2004 return output; 2005 } 2006 2007 VImage HSV2sRGB(VImage input, VOption options = VOption()) 2008 { 2009 VImage output; 2010 baseOp("HSV2sRGB", 2011 options 2012 .set("in", input) 2013 .set("out", &output) 2014 ); 2015 return output; 2016 } 2017 2018 VImage dE76(VImage left, VImage right, VOption options = VOption()) 2019 { 2020 VImage output; 2021 baseOp("dE76", 2022 options 2023 .set("left", left) 2024 .set("right", right) 2025 .set("out", &output) 2026 ); 2027 return output; 2028 } 2029 2030 VImage dE00(VImage left, VImage right, VOption options = VOption()) 2031 { 2032 VImage output; 2033 baseOp("dE00", 2034 options 2035 .set("left", left) 2036 .set("right", right) 2037 .set("out", &output) 2038 ); 2039 return output; 2040 } 2041 2042 VImage dECMC(VImage left, VImage right, VOption options = VOption()) 2043 { 2044 VImage output; 2045 baseOp("dECMC", 2046 options 2047 .set("left", left) 2048 .set("right", right) 2049 .set("out", &output) 2050 ); 2051 return output; 2052 } 2053 2054 VImage sRGB2scRGB(VImage input, VOption options = VOption()) 2055 { 2056 VImage output; 2057 baseOp("sRGB2scRGB", 2058 options 2059 .set("in", input) 2060 .set("out", &output) 2061 ); 2062 return output; 2063 } 2064 2065 VImage scRGB2BW(VImage input, VOption options = VOption()) 2066 { 2067 VImage output; 2068 baseOp("scRGB2BW", 2069 options 2070 .set("in", input) 2071 .set("out", &output) 2072 ); 2073 return output; 2074 } 2075 2076 VImage scRGB2sRGB(VImage input, VOption options = VOption()) 2077 { 2078 VImage output; 2079 baseOp("scRGB2sRGB", 2080 options 2081 .set("in", input) 2082 .set("out", &output) 2083 ); 2084 return output; 2085 } 2086 2087 VImage maplut(VImage input, VImage lut, VOption options = VOption()) 2088 { 2089 VImage output; 2090 baseOp("maplut", 2091 options 2092 .set("in", input) 2093 .set("out", &output) 2094 .set("lut", lut) 2095 ); 2096 return output; 2097 } 2098 2099 int percent(VImage input, double percent, VOption options = VOption()) 2100 { 2101 int threshold; 2102 baseOp("percent", 2103 options 2104 .set("in", input) 2105 .set("percent", percent) 2106 .set("threshold", &threshold) 2107 ); 2108 return threshold; 2109 } 2110 2111 VImage stdif(VImage input, int width, int height, VOption options = VOption()) 2112 { 2113 VImage output; 2114 baseOp("stdif", 2115 options 2116 .set("in", input) 2117 .set("out", &output) 2118 .set("width", width) 2119 .set("height", height) 2120 ); 2121 return output; 2122 } 2123 2124 VImage hist_cum(VImage input, VOption options = VOption()) 2125 { 2126 VImage output; 2127 baseOp("hist_cum", 2128 options 2129 .set("in", input) 2130 .set("out", &output) 2131 ); 2132 return output; 2133 } 2134 2135 VImage hist_match(VImage input, VImage vipsRef, VOption options = VOption()) 2136 { 2137 VImage output; 2138 baseOp("hist_match", 2139 options 2140 .set("in", input) 2141 .set("ref", vipsRef) 2142 .set("out", &output) 2143 ); 2144 return output; 2145 } 2146 2147 VImage hist_norm(VImage input, VOption options = VOption()) 2148 { 2149 VImage output; 2150 baseOp("hist_norm", 2151 options 2152 .set("in", input) 2153 .set("out", &output) 2154 ); 2155 return output; 2156 } 2157 2158 VImage hist_equal(VImage input, VOption options = VOption()) 2159 { 2160 VImage output; 2161 baseOp("hist_equal", 2162 options 2163 .set("in", input) 2164 .set("out", &output) 2165 ); 2166 return output; 2167 } 2168 2169 VImage hist_plot(VImage input, VOption options = VOption()) 2170 { 2171 VImage output; 2172 baseOp("hist_plot", 2173 options 2174 .set("in", input) 2175 .set("out", &output) 2176 ); 2177 return output; 2178 } 2179 2180 VImage hist_local(VImage input, int width, int height, VOption options = VOption()) 2181 { 2182 VImage output; 2183 baseOp("hist_local", 2184 options 2185 .set("in", input) 2186 .set("out", &output) 2187 .set("width", width) 2188 .set("height", height) 2189 ); 2190 return output; 2191 } 2192 2193 bool hist_ismonotonic(VImage input, VOption options = VOption()) 2194 { 2195 bool monotonic; 2196 baseOp("hist_ismonotonic", 2197 options 2198 .set("in", input) 2199 .set("monotonic", &monotonic) 2200 ); 2201 return monotonic; 2202 } 2203 2204 double hist_entropy(VImage input, VOption options = VOption()) 2205 { 2206 double output; 2207 baseOp("hist_entropy", 2208 options 2209 .set("in", input) 2210 .set("out", &output) 2211 ); 2212 return output; 2213 } 2214 2215 VImage conv(VImage input, VImage mask, VOption options = VOption()) 2216 { 2217 VImage output; 2218 baseOp("conv", 2219 options 2220 .set("in", input) 2221 .set("out", &output) 2222 .set("mask", mask) 2223 ); 2224 return output; 2225 } 2226 2227 VImage conva(VImage input, VImage mask, VOption options = VOption()) 2228 { 2229 VImage output; 2230 baseOp("conva", 2231 options 2232 .set("in", input) 2233 .set("out", &output) 2234 .set("mask", mask) 2235 ); 2236 return output; 2237 } 2238 2239 VImage convf(VImage input, VImage mask, VOption options = VOption()) 2240 { 2241 VImage output; 2242 baseOp("convf", 2243 options 2244 .set("in", input) 2245 .set("out", &output) 2246 .set("mask", mask) 2247 ); 2248 return output; 2249 } 2250 2251 VImage convi(VImage input, VImage mask, VOption options = VOption()) 2252 { 2253 VImage output; 2254 baseOp("convi", 2255 options 2256 .set("in", input) 2257 .set("out", &output) 2258 .set("mask", mask) 2259 ); 2260 return output; 2261 } 2262 2263 VImage compass(VImage input, VImage mask, VOption options = VOption()) 2264 { 2265 VImage output; 2266 baseOp("compass", 2267 options 2268 .set("in", input) 2269 .set("out", &output) 2270 .set("mask", mask) 2271 ); 2272 return output; 2273 } 2274 2275 VImage convsep(VImage input, VImage mask, VOption options = VOption()) 2276 { 2277 VImage output; 2278 baseOp("convsep", 2279 options 2280 .set("in", input) 2281 .set("out", &output) 2282 .set("mask", mask) 2283 ); 2284 return output; 2285 } 2286 2287 VImage convasep(VImage input, VImage mask, VOption options = VOption()) 2288 { 2289 VImage output; 2290 baseOp("convasep", 2291 options 2292 .set("in", input) 2293 .set("out", &output) 2294 .set("mask", mask) 2295 ); 2296 return output; 2297 } 2298 2299 VImage fastcor(VImage input, VImage vipsRef, VOption options = VOption()) 2300 { 2301 VImage output; 2302 baseOp("fastcor", 2303 options 2304 .set("in", input) 2305 .set("ref", vipsRef) 2306 .set("out", &output) 2307 ); 2308 return output; 2309 } 2310 2311 VImage spcor(VImage input, VImage vipsRef, VOption options = VOption()) 2312 { 2313 VImage output; 2314 baseOp("spcor", 2315 options 2316 .set("in", input) 2317 .set("ref", vipsRef) 2318 .set("out", &output) 2319 ); 2320 return output; 2321 } 2322 2323 VImage sharpen(VImage input, VOption options = VOption()) 2324 { 2325 VImage output; 2326 baseOp("sharpen", 2327 options 2328 .set("in", input) 2329 .set("out", &output) 2330 ); 2331 return output; 2332 } 2333 2334 VImage gaussblur(VImage input, double sigma, VOption options = VOption()) 2335 { 2336 VImage output; 2337 baseOp("gaussblur", 2338 options 2339 .set("in", input) 2340 .set("out", &output) 2341 .set("sigma", sigma) 2342 ); 2343 return output; 2344 } 2345 2346 VImage canny(VImage input, VOption options = VOption()) 2347 { 2348 VImage output; 2349 baseOp("canny", 2350 options 2351 .set("in", input) 2352 .set("out", &output) 2353 ); 2354 return output; 2355 } 2356 2357 VImage sobel(VImage input, VOption options = VOption()) 2358 { 2359 VImage output; 2360 baseOp("sobel", 2361 options 2362 .set("in", input) 2363 .set("out", &output) 2364 ); 2365 return output; 2366 } 2367 2368 VImage fwfft(VImage input, VOption options = VOption()) 2369 { 2370 VImage output; 2371 baseOp("fwfft", 2372 options 2373 .set("in", input) 2374 .set("out", &output) 2375 ); 2376 return output; 2377 } 2378 2379 VImage invfft(VImage input, VOption options = VOption()) 2380 { 2381 VImage output; 2382 baseOp("invfft", 2383 options 2384 .set("in", input) 2385 .set("out", &output) 2386 ); 2387 return output; 2388 } 2389 2390 VImage freqmult(VImage input, VImage mask, VOption options = VOption()) 2391 { 2392 VImage output; 2393 baseOp("freqmult", 2394 options 2395 .set("in", input) 2396 .set("mask", mask) 2397 .set("out", &output) 2398 ); 2399 return output; 2400 } 2401 2402 VImage spectrum(VImage input, VOption options = VOption()) 2403 { 2404 VImage output; 2405 baseOp("spectrum", 2406 options 2407 .set("in", input) 2408 .set("out", &output) 2409 ); 2410 return output; 2411 } 2412 2413 VImage phasecor(VImage input, VImage in2, VOption options = VOption()) 2414 { 2415 VImage output; 2416 baseOp("phasecor", 2417 options 2418 .set("in", input) 2419 .set("in2", in2) 2420 .set("out", &output) 2421 ); 2422 return output; 2423 } 2424 2425 VImage morph(VImage input, VImage mask, VipsOperationMorphology morph, VOption options = VOption()) 2426 { 2427 VImage output; 2428 baseOp("morph", 2429 options 2430 .set("in", input) 2431 .set("out", &output) 2432 .set("mask", mask) 2433 .set("morph", morph) 2434 ); 2435 return output; 2436 } 2437 2438 VImage rank(VImage input, int width, int height, int index, VOption options = VOption()) 2439 { 2440 VImage output; 2441 baseOp("rank", 2442 options 2443 .set("in", input) 2444 .set("out", &output) 2445 .set("width", width) 2446 .set("height", height) 2447 .set("index", index) 2448 ); 2449 return output; 2450 } 2451 2452 double countlines(VImage input, VipsDirection direction, VOption options = VOption()) 2453 { 2454 double nolines; 2455 baseOp("countlines", 2456 options 2457 .set("in", input) 2458 .set("nolines", &nolines) 2459 .set("direction", direction) 2460 ); 2461 return nolines; 2462 } 2463 2464 VImage labelregions(VImage input, VOption options = VOption()) 2465 { 2466 VImage mask; 2467 baseOp("labelregions", 2468 options 2469 .set("in", input) 2470 .set("mask", &mask) 2471 ); 2472 return mask; 2473 } 2474 2475 VImage fill_nearest(VImage input, VOption options = VOption()) 2476 { 2477 VImage output; 2478 baseOp("fill_nearest", 2479 options 2480 .set("in", input) 2481 .set("out", &output) 2482 ); 2483 return output; 2484 } 2485 2486 void draw_rect(VImage image, double[] ink, int left, int top, int width, int height, VOption options = VOption()) 2487 { 2488 baseOp("draw_rect", 2489 options 2490 .set("image", image) 2491 .set("ink", ink) 2492 .set("left", left) 2493 .set("top", top) 2494 .set("width", width) 2495 .set("height", height) 2496 ); 2497 } 2498 2499 void draw_mask(VImage image, double[] ink, VImage mask, int x, int y, VOption options = VOption()) 2500 { 2501 baseOp("draw_mask", 2502 options 2503 .set("image", image) 2504 .set("ink", ink) 2505 .set("mask", mask) 2506 .set("x", x) 2507 .set("y", y) 2508 ); 2509 } 2510 2511 void draw_line(VImage image, double[] ink, int x1, int y1, int x2, int y2, VOption options = VOption()) 2512 { 2513 baseOp("draw_line", 2514 options 2515 .set("image", image) 2516 .set("ink", ink) 2517 .set("x1", x1) 2518 .set("y1", y1) 2519 .set("x2", x2) 2520 .set("y2", y2) 2521 ); 2522 } 2523 2524 void draw_circle(VImage image, double[] ink, int cx, int cy, int radius, VOption options = VOption()) 2525 { 2526 baseOp("draw_circle", 2527 options 2528 .set("image", image) 2529 .set("ink", ink) 2530 .set("cx", cx) 2531 .set("cy", cy) 2532 .set("radius", radius) 2533 ); 2534 } 2535 2536 void draw_flood(VImage image, double[] ink, int x, int y, VOption options = VOption()) 2537 { 2538 baseOp("draw_flood", 2539 options 2540 .set("image", image) 2541 .set("ink", ink) 2542 .set("x", x) 2543 .set("y", y) 2544 ); 2545 } 2546 2547 void draw_image(VImage image, VImage sub, int x, int y, VOption options = VOption()) 2548 { 2549 baseOp("draw_image", 2550 options 2551 .set("image", image) 2552 .set("sub", sub) 2553 .set("x", x) 2554 .set("y", y) 2555 ); 2556 } 2557 2558 void draw_smudge(VImage image, int left, int top, int width, int height, VOption options = VOption()) 2559 { 2560 baseOp("draw_smudge", 2561 options 2562 .set("image", image) 2563 .set("left", left) 2564 .set("top", top) 2565 .set("width", width) 2566 .set("height", height) 2567 ); 2568 } 2569 2570 VImage merge(VImage vipsRef, VImage sec, VipsDirection direction, int dx, int dy, VOption options = VOption()) 2571 { 2572 VImage output; 2573 baseOp("merge", 2574 options 2575 .set("ref", vipsRef) 2576 .set("sec", sec) 2577 .set("out", &output) 2578 .set("direction", direction) 2579 .set("dx", dx) 2580 .set("dy", dy) 2581 ); 2582 return output; 2583 } 2584 2585 VImage mosaic(VImage vipsRef, VImage sec, VipsDirection direction, int xref, int yref, int xsec, int ysec, VOption options = VOption()) 2586 { 2587 VImage output; 2588 baseOp("mosaic", 2589 options 2590 .set("ref", vipsRef) 2591 .set("sec", sec) 2592 .set("out", &output) 2593 .set("direction", direction) 2594 .set("xref", xref) 2595 .set("yref", yref) 2596 .set("xsec", xsec) 2597 .set("ysec", ysec) 2598 ); 2599 return output; 2600 } 2601 2602 VImage mosaic1(VImage vipsRef, VImage sec, VipsDirection direction, int xr1, int yr1, int xs1, int ys1, int xr2, int yr2, int xs2, int ys2, VOption options = VOption()) 2603 { 2604 VImage output; 2605 baseOp("mosaic1", 2606 options 2607 .set("ref", vipsRef) 2608 .set("sec", sec) 2609 .set("out", &output) 2610 .set("direction", direction) 2611 .set("xr1", xr1) 2612 .set("yr1", yr1) 2613 .set("xs1", xs1) 2614 .set("ys1", ys1) 2615 .set("xr2", xr2) 2616 .set("yr2", yr2) 2617 .set("xs2", xs2) 2618 .set("ys2", ys2) 2619 ); 2620 return output; 2621 } 2622 2623 VImage match(VImage vipsRef, VImage sec, int xr1, int yr1, int xs1, int ys1, int xr2, int yr2, int xs2, int ys2, VOption options = VOption()) 2624 { 2625 VImage output; 2626 baseOp("match", 2627 options 2628 .set("ref", vipsRef) 2629 .set("sec", sec) 2630 .set("out", &output) 2631 .set("xr1", xr1) 2632 .set("yr1", yr1) 2633 .set("xs1", xs1) 2634 .set("ys1", ys1) 2635 .set("xr2", xr2) 2636 .set("yr2", yr2) 2637 .set("xs2", xs2) 2638 .set("ys2", ys2) 2639 ); 2640 return output; 2641 } 2642 2643 VImage globalbalance(VImage input, VOption options = VOption()) 2644 { 2645 VImage output; 2646 baseOp("globalbalance", 2647 options 2648 .set("in", input) 2649 .set("out", &output) 2650 ); 2651 return output; 2652 } 2653