Commit Graph

97 Commits

Author SHA1 Message Date
John Cupitt 538aa2a841
remove autotools (#2941)
* remove autotools

It seems to all work. I tested with gtk-doc enabled. I probably missed a
few things argh.

* oop, forgot m4/
2022-07-24 11:14:52 +01:00
John Cupitt d9f31be67d configure should add meson files to make dist
add meson.build etc. to EXTRA_DIST

see https://github.com/libvips/libvips/issues/2876
2022-06-20 15:04:33 +01:00
Kleis Auke Wolthuizen bae0342d95
Update C++ binding and function list (#2851)
* Update C++ binding and function list

Also, start with a capital letter in descriptions whenever possible.

* Ensure `dzsave_target` is generated
2022-06-10 14:43:44 +01:00
Kleis Auke Wolthuizen 07edfe37b1
Improve symbol visibility (#2688)
* Improve symbol visibility

* Decorate required internal symbols with VIPS_API

* Remove a couple of stray header decls

* Incorporate review comment

- Ensure symbol visibility is also set on static libraries.
- Prefer to use `cc.has_function_attribute('visibility:hidden')`.

* Don't export internal deprecated symbols

* Move deprecated symbols to vips7compat.h

* `IM_FORMAT_H` -> `VIPS_FORMAT_H`

* Move `vips_window_ref` compat stub to `vips7compat.c`

* Disable deprecation warnings internally

* `vips_image_get_kill` -> `vips_image_iskilled`

* Ensure API compatibility

* Add missing include directives

* Move `vips__init` decl to vips7compat

* Move `vips__get_sizeof_vipsobject` to vips7compat

* Fix introspection build

* Fix 2 introspection warnings

* Ensure compatibility with vipsdisp

/usr/bin/ld: tilesource.o: in function `tile_source_new_from_source':
vipsdisp/tilesource.c:1627: undefined reference to `vips__region_no_ownership'
2022-04-16 10:58:55 +01:00
Kleis Auke Wolthuizen 0337c09700
Cleanup gettext handling (#2695)
Use GLib's i18n support instead of copying and pasting that
logic into its own header. This deprecates the vips/intl.h
header in favour of glib/gi18n.h.
2022-02-27 15:27:28 +00:00
Corentin Noël 02901436d4
Add meson build system (#2637)
Allows to use the Meson build system to build the project.
2022-02-08 15:19:36 +00:00
Joel Larsson 1ed0e177bb
Fix documentation typo (#2591)
A small typo fix on the documenation of `vips_percent`
2021-12-21 14:53:14 +00:00
John Cupitt 757d031005 always check the return of vips_image_pipeline()
For consistency. Although I don't think it can meaningfully fail.
2021-06-29 16:12:17 +01:00
John Cupitt 3cd774a10c add fast path to rank filter for uchar images
around 10x faster for 20x20 windows, the same speed for 3x3
2021-01-12 20:36:13 +00:00
John Cupitt 8281416ca4 fix hist_norm range
the cast change broke hist_norm
2020-05-04 17:04:37 +01:00
John Cupitt 2b78a00cfb hist_local was missing a seq hint 2020-03-13 16:44:57 +00:00
John Cupitt 44fb4044b6 revise docs for percent
the greater than was backwards, thanks gil-c

see https://github.com/libvips/libvips/issues/1560
2020-02-21 11:53:55 +00:00
John Cupitt daf578ca42 seems to work
now a switch/case pair
2019-08-18 16:35:28 +01:00
John Cupitt fc17a79767 split into switch/case
A neater solution! In Python it should be something like:

merge = pyvips.Image.switch([tests]).case([cases])

and should be efficient
2019-08-17 14:51:55 +01:00
John Cupitt 12371e68c2 start adding select 2019-08-13 03:04:33 +01:00
John Cupitt d5634a918b start vips_case() 2019-08-11 19:11:17 +01:00
John Cupitt 42cdc8177c git switch working 2019-08-02 20:19:28 +01:00
John Cupitt 0a51ca96c9 mostly working
still fails to exit cleanly
2019-08-01 20:57:46 +01:00
John Cupitt 6078ba744c added more 2019-07-29 09:56:22 +01:00
John Cupitt 1220cc9667 start mapimage 2019-07-28 19:40:37 +01:00
John Cupitt e2aafa6ed3 hist_plot fixup
missed a case in the refactor
2018-05-16 15:26:20 +01:00
John Cupitt b085908558 remove vips7 stuff from API
You must now include vips7 support explicitly with

	#include <vips/vips7compat.h>

in your code just after including `vips.h`.

The old vips7 names, such as `Rect`, were starting to cause problems
with other packages like opencv.
2018-05-16 15:08:21 +01:00
Alistair Thomas 14679d392d Update GObject introspection annotations for libvips/histogram directory 2017-09-30 22:53:30 +01:00
John Cupitt 882c686553 make hist_equal output format match input format
If the input image was ushort but had only uchar range, hist_equal would
output a uchar image, thanks to hist_norm's auto-clip feature. Make sure
this can't happen bu casting after the norm.

See https://github.com/jcupitt/libvips/issues/680

Thanks Simon Harris
2017-06-19 09:15:51 +01:00
John Cupitt 3019e5966b vips_conv*() default to float
we had INT as the default, but this will cause serious precision loss
with many masks ... instead, have float (always correct) as the default
and let people turn on int if they cn
2017-05-08 13:28:23 +01:00
John Cupitt 362c7efdfc argh reapply seq removal 2017-03-06 11:55:38 +00:00
John Cupitt 1221309c62 arg priorities were wrong in hist_entropy
breaking the C API
2017-03-01 13:05:07 +00:00
John Cupitt e6b20cbd0f Revert "remove stalling"
This reverts commit 959f412380.
2017-02-27 10:26:32 +00:00
John Cupitt 959f412380 remove stalling 2017-02-21 15:03:15 +00:00
John Cupitt 61d9f03ef8 tiny fixes 2017-01-24 11:02:40 +00:00
John Cupitt c9ce8f70a1 fix an off-by-one error in hist_local
an odd window width caused an off-by-one error in histogram construction
2017-01-24 10:51:12 +00:00
John Cupitt c963678549 more hist_local fixups
add tests, add restrict
2017-01-22 10:36:07 +00:00
John Cupitt fa3c92c19b add CLAHE
vips_hist_local() has a new param, max_slope, which sets the maximum
amount that the local contrast can be boosted by -- CLAHE

see https://github.com/jcupitt/libvips/issues/268

also fix a couple of small range problems

- scale by 255, not 256, to avoid an overflow
- cum hist includes the current value, so sum to <= target, not < target
2017-01-22 10:05:58 +00:00
John Cupitt c89014fb3f first hack 2017-01-20 14:59:24 +00:00
John Cupitt 0bfcf2efc2 add note about vips_hist_find_ndim() 2017-01-19 09:23:05 +00:00
John Cupitt 6b325145e4 use new hints and prepare everywhere 2017-01-12 14:36:44 +00:00
John Cupitt 2be0b97dce switch to g_warning()_/g_info()
we had vips_warn() and vips_info(), but they are a bit crappy ... switch
to g_warning() and g_info() instead

see https://github.com/jcupitt/libvips/issues/544
2017-01-03 15:52:27 +00:00
John Cupitt 1ae92bb15f make optional args into bullets
make docs easier to read
2016-05-02 10:12:37 +01:00
John Cupitt acf5f5169a fix hist_entropy
there was a copy-paste error in the call to vips_log(), thanks Lovell

see https://github.com/lovell/sharp/issues/295
2016-03-06 18:02:59 +00:00
John Cupitt 07a1903390 use g_assert_not_reached()
we were using g_assert(0) ... g_assert_not_reached() makes the
intention clearer
2016-01-24 13:21:53 +00:00
John Cupitt a7d889df06 use builtin floor / ceil
get rid of FAST_PSEUDO_FLOOR, add VIPS_FLOOR and VIPS_CEIL, use them
everywhere

see https://github.com/jcupitt/libvips/pull/372
2016-01-23 09:50:57 +00:00
John Cupitt 1504ca7cdc have a more formal max image dimension
we now have VIPS_MAX_COORD for maximum image dimension, set to 10m
pixels ... we could go up to 2bn, but 10m seems a reasonable max, at
least for now

see https://github.com/jcupitt/libvips/issues/355
2015-12-03 12:14:39 +00:00
John Cupitt 75a0b5b789 add vips_entropy()
calculates image entropy from a histogram
2015-08-11 14:00:43 +01:00
John Cupitt 54c37e7e0d add copy-to-memory
try to make a threadsafe vips_image_wio_input()
2015-04-19 09:45:20 +01:00
John Cupitt 394149e9e8 fix all docs warnings 2014-11-17 10:32:40 +00:00
John Cupitt bf65a024b6 Merge remote-tracking branch 'origin/7.40'
Conflicts:
	ChangeLog
2014-10-08 13:12:44 +01:00
John Cupitt 9069b2f9ad improve interpretation of maplut output
a mono image though a colour lut needs to take the lut's interpretation
2014-10-08 12:31:36 +01:00
John Cupitt 6f8b5c6745 bring the rest of the API into python 2014-09-05 23:18:16 +01:00
John Cupitt 32a8fe117e start working on --disable-deprecated
need to move im_conv() etc to classes to finish this
2014-07-25 18:06:52 +01:00
John Cupitt c3caa595a2 complex lut was broken 2014-05-21 17:34:53 +01:00