Commit Graph

1556 Commits

Author SHA1 Message Date
John Cupitt
2a992375fe add more type conversions
so we automatically do int and double -> doublevec and intvec
2014-10-31 18:11:26 +00:00
John Cupitt
d6a6d7ae71 set of overloads for new cpp API
all the usual ones .. compiles, but untested
2014-10-30 21:53:24 +00:00
John Cupitt
4173ddfa9c add make constant image 2014-10-29 12:39:25 +00:00
John Cupitt
d012cef3b4 add some simple extras
.bandjoin(), .bandsplit(), .sin() etc etc
2014-10-29 09:47:02 +00:00
John Cupitt
63d4370043 split to a separate branch 2014-10-27 18:17:49 +00:00
John Cupitt
266e120676 new C++ interface works!
phew
2014-10-27 12:57:28 +00:00
John Cupitt
ceb143a22a another stab at a C++ API design 2014-10-24 10:32:50 +01:00
John Cupitt
f2898a8e3b more C++ hacking 2014-10-20 14:54:03 +01:00
John Cupitt
e21cbb9d4f tiny 2014-10-20 11:03:33 +01:00
John Cupitt
afdf22ac37 small fixups to autorot 2014-10-19 11:20:33 +01:00
John Cupitt
8a84d85335 sync 2014-10-17 14:08:35 +01:00
John Cupitt
14d7ce1e91 first try, not very good 2014-10-16 19:16:45 +01:00
John Cupitt
2acd185ee2 cleanups 2014-10-16 11:22:03 +01:00
John Cupitt
a8f4ed7871 fix up ifthenelse and set_value 2014-10-16 10:58:54 +01:00
John Cupitt
fc4c8b9cd7 constants as images working 2014-10-16 10:43:29 +01:00
John Cupitt
10b9374cb9 start adding auto image constants 2014-10-15 14:56:44 +01:00
John Cupitt
b2de6d983c add build rules for new py binding 2014-10-14 14:56:49 +01:00
John Cupitt
6fb967ac3b more py tweaks
fast startup, reorganised python/
2014-10-14 10:17:33 +01:00
John Cupitt
a0988ffc31 start using overrides in Python 2014-10-13 14:21:05 +01:00
John Cupitt
ca2ae681cd add --with-gmic configure option 2014-10-07 14:54:53 +01:00
John Cupitt
2e2cc9ea7a add get_value()
and set_value(), do auto blob/unblob
2014-10-01 14:59:23 +01:00
John Cupitt
3067fee56f add ICC tests 2014-10-01 12:28:25 +01:00
John Cupitt
e458365970 use vips__substitute() more
should probably remove vips_snprintf() from a few more places
2014-09-27 11:37:28 +01:00
John Cupitt
61bae5eeff more tests 2014-09-26 15:01:56 +01:00
John Cupitt
0a327af138 fixed extra band handling, again 2014-09-24 14:46:03 +01:00
John Cupitt
6ad94da99c Merge branch 'master' of github.com:jcupitt/libvips
Conflicts:
	TODO
2014-09-24 12:24:57 +01:00
John Cupitt
9f8083dc8f sync 2014-09-24 12:24:32 +01:00
John Cupitt
08e0d5d962 sync 2014-09-24 09:00:22 +01:00
John Cupitt
2cfffaa54e start conversion tests 2014-09-22 13:50:09 +01:00
John Cupitt
0ad165f557 update notes 2014-09-20 16:53:47 +01:00
John Cupitt
5ebe12273a more of colour unittest done 2014-09-18 15:04:12 +01:00
John Cupitt
bb50478d77 fix more, moreeq
there was a problem with operation caching in complex programs because of
the way we were swapping pointers
2014-09-17 11:21:34 +01:00
John Cupitt
8b9dc20684 add relational overloads to python
and tests
2014-09-17 09:39:57 +01:00
John Cupitt
4968b9edaf fix optional output args in python
oh arg we have to return a dict

also, test hough circle and line, and add maxpos/minpos
2014-09-16 10:47:24 +01:00
John Cupitt
c20c85b474 getting ready for hough test 2014-09-15 14:55:08 +01:00
John Cupitt
a82fa01781 more tests 2014-09-15 13:58:31 +01:00
John Cupitt
cc599844d2 fix getpoint(0,0)
and add more tests
2014-09-15 09:06:36 +01:00
John Cupitt
876a7538af more tests 2014-09-14 21:30:27 +01:00
John Cupitt
9a2c38e107 finish python vips8 2014-09-09 14:19:51 +01:00
John Cupitt
4c51e6aa0b draw and hough working in Python 2014-09-09 13:19:44 +01:00
John Cupitt
84e55b86e6 added class methods to python
we now have Vips.Image.black(w, h), woo
2014-09-08 14:53:37 +01:00
John Cupitt
a26df2a8a9 get ready for class methods 2014-09-07 09:36:34 +01:00
John Cupitt
751982d9f0 add make vips matrix from python array 2014-09-05 14:53:05 +01:00
John Cupitt
92570b119c python new_from_memory()/write_to_memory() done 2014-09-05 12:54:07 +01:00
John Cupitt
eca5ed12de buffer load/save in python works 2014-09-03 21:34:26 +01:00
John Cupitt
8f39f8ba3b start unboxing returns from Python 2014-09-03 14:59:35 +01:00
John Cupitt
4793c69bba turn VipsBlob into a proper type
with a .get() method we call call from Python
2014-09-02 21:59:11 +01:00
John Cupitt
5a0a98c922 sync 2014-09-02 14:57:37 +01:00
John Cupitt
6779e141a7 add Python .write_to_buffer()
now we need to be able to get the bytes from a VipsBlob
2014-09-01 17:44:33 +01:00
John Cupitt
804a2e6fca finish python operator overloads 2014-09-01 15:28:55 +01:00
John Cupitt
f03dc3754f start adding python operator overloads 2014-09-01 11:32:17 +01:00
John Cupitt
e6dba689ce auto array-ize scalars in python 2014-09-01 09:41:14 +01:00
John Cupitt
3b43bd76f3 set options in filenames in vips8 Python
now supports "fred.jpg[Q=90]" in Vips.Image.new_from_file() etc.
2014-08-31 21:16:39 +01:00
John Cupitt
a370e5003e vips array types are more binding-friendly
this all works now:

```python
from gi.repository import Vips

a = Vips.ArrayDouble.new([1,2,3])
a.get()

a = Vips.ArrayInt.new([1,2,3])
a.get()

a = Vips.ArrayImage.new([c, d, e])
a.get()
```
2014-08-31 10:41:53 +01:00
John Cupitt
42dac9209a GBoxed almost working 2014-08-29 18:14:22 +01:00
John Cupitt
5125cc535c Merge branch '7.40'
Conflicts:
	TODO
2014-08-19 18:04:24 +01:00
John Cupitt
41ec99b8d5 note 2014-08-19 18:03:19 +01:00
John Cupitt
af84b3097c more docs work 2014-08-19 16:57:37 +01:00
John Cupitt
cb2b217434 fix 16-bit PNG save
see

https://github.com/jcupitt/libvips/issues/156
2014-08-18 13:54:06 +01:00
John Cupitt
c646356b4f Merge branch 'master' of github.com:jcupitt/libvips
Conflicts:
	ChangeLog
	TODO
2014-08-17 09:58:24 +01:00
John Cupitt
7b496fb2f5 udpate notes 2014-08-12 13:45:03 +01:00
John Cupitt
b24cbb492c Merge remote-tracking branch 'origin/7.40'
Conflicts:
	ChangeLog
	TODO
	configure.ac
	libvips/foreign/vipspng.c
2014-08-12 13:41:52 +01:00
John Cupitt
2f72a9925f more docs work 2014-08-12 13:37:16 +01:00
John Cupitt
ce428ffa94 more vipsthumbnail fixes
- handle CMYK images
- use unbuffered mode, we have a cache already
- don't try to anti-alias on upscale
2014-08-11 16:48:51 +01:00
John Cupitt
b25dcc9ebe Merge remote-tracking branch 'origin/7.40'
Conflicts:
	TODO
2014-08-09 17:03:43 +01:00
John Cupitt
2e8217338b docs work 2014-08-09 10:25:34 +01:00
John Cupitt
2b086cfe6e add signed int bicubic path
better rounding for 8- and 16-bit signed int bicubic
2014-08-07 10:13:08 +01:00
John Cupitt
2e3baa1bef more docs stuff 2014-08-06 21:59:13 +01:00
John Cupitt
46673b60d7 small docs fixups 2014-08-05 10:09:13 +01:00
John Cupitt
ebeee822bc better rounding behaviour for bicubic
fixed-point bicubic was not rounding to nearest, introducing some noise
in flat areas
2014-08-05 10:02:11 +01:00
John Cupitt
f1df91eebb vipsthumbnail defaults to bicubic + noshapen
if bicubic is available
2014-08-04 09:55:18 +01:00
John Cupitt
ebec31fe4a more careful p->t conversion
When we convert an image from "p" to "t" in vips_image_wio_input(), zap
start/gen/stop callbacks. This makes vips_region_prepare_to() read from
the "t" rather than trying to gen pixels again.
2014-08-03 17:59:25 +01:00
John Cupitt
004c98f296 pngsave interlaced makes a copy of the image
interlaced png is hard to write: you have to make seven passes over the
image to make the whole file. It advertises itself as sequential, it
needs to only ake a single pass. Therefore, it must take a copy in
memory of the image to write.
2014-08-03 09:34:46 +01:00
John Cupitt
d438649fcb update notes 2014-08-02 05:14:37 +01:00
John Cupitt
ecd771cde7 Merge branch 'affine-bug'
Conflicts:
	libvips/resample/transform.c
2014-08-01 16:35:59 +01:00
John Cupitt
639c22bf53 add "whole_slide" toggle
openslideload now crops to image bounds (if set) ... use @whole_slide to
stop this autocrop
2014-07-30 12:27:19 +01:00
John Cupitt
0bb8a218bb exit() in fewer cases
we now only exit() when we know the stack has been trashed, just warn in
other cases
2014-07-29 15:23:27 +01:00
John Cupitt
2115c6d166 sync 2014-07-29 09:59:33 +01:00
John Cupitt
20a239149f Merge commit 'f4671f46e807db0e02d763e3a1685ad012eace5b' into 7.40 2014-07-25 19:47:04 +01:00
John Cupitt
20eb893350 Merge branch 'master' of github.com:jcupitt/libvips
Conflicts:
	TODO
2014-07-25 19:37:57 +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
0114afa5fb limit nthr on tiny images
we always made N threads for a threadpool ... we could end up making
loads of threads we never used if the image was tiny

for very small images, limit the number of threads we make
2014-07-25 14:51:29 +01:00
John Cupitt
a338a48c63 fix a race in im_maxpos_avg() 2014-07-25 13:52:36 +01:00
John Cupitt
f4671f46e8 more work on docs
started adding .xml intro to vips sections
2014-07-25 09:22:49 +01:00
John Cupitt
9d096c39f1 update notes 2014-07-16 14:54:51 +01:00
John Cupitt
87698cc961 sync 2014-07-16 11:34:41 +01:00
John Cupitt
235eb87aa5 sort out sense of fourier filter masks 2014-07-15 09:05:00 +01:00
John Cupitt
89f8c58057 tiny vips_scale() fix
vips_scale() on a black image now returns an image with the right number
of bands ... was always a 1 band image before
2014-07-13 10:43:50 +01:00
John Cupitt
a9fdde9ddb fix im_point()
oops ... helps ruby-vips self test
2014-07-12 15:29:02 +01:00
John Cupitt
1a8dd2f299 fix affine identity transform with clipping 2014-07-08 17:09:42 +01:00
John Cupitt
987021a68d notes 2014-07-04 14:46:28 +01:00
John Cupitt
70eacc4543 Merge branch 'dzsave-metadata'
Conflicts:
	ChangeLog
2014-07-03 09:42:13 +01:00
John Cupitt
50c98c39d1 cache the image before write for fits
write must be strictly top-to-bottom for :seq to work
2014-07-02 12:45:19 +01:00
John Cupitt
8e2d83e815 use the libxml2 pretty-printer 2014-07-02 12:04:28 +01:00
John Cupitt
fc14733b2b Merge branch 'dzsave-metadata' of github.com:jcupitt/libvips into dzsave-metadata
Conflicts:
	ChangeLog
	configure.ac
2014-07-01 08:47:50 +01:00
John Cupitt
c2a8c542b6 we assumed GType fitted in an int
which isn't true on freebsd, and perhaps others
2014-06-29 11:17:23 +01:00
John Cupitt
243c86f405 small fixes to help freebsd 2014-06-27 13:11:57 +01:00
John Cupitt
150927a27f better --vips-progress feedback for dzsave 2014-06-19 12:57:04 +01:00
John Cupitt
3797c1824a doc fixups 2014-06-19 12:14:41 +01:00
John Cupitt
415b6d08be small fixups
- remove -c abbrv. for --vips-concurrency
- better desc for insert
- revise vips.1 man page
2014-06-19 09:59:29 +01:00
John Cupitt
32f5c444c5 update notes 2014-06-18 14:50:35 +01:00
John Cupitt
0e68067a82 oops dropped a patch 2014-06-18 14:08:41 +01:00
John Cupitt
519898a7ac oop, affine coordinate error
we were offsetting the input image incorrectly, compare
the way the transform is set up in vips_affine_build() and
im__affinei()

see https://github.com/jcupitt/libvips/issues/131
2014-06-17 14:18:12 +01:00
John Cupitt
b7f16a1de9 more docs work 2014-06-16 14:28:00 +01:00
John Cupitt
a76df77942 docs updates 2014-06-15 11:52:06 +01:00
John Cupitt
eed4bfc731 Merge remote-tracking branch 'origin/single-thread-first-tile'
Conflicts:
	ChangeLog
	TODO
2014-06-13 11:46:11 +01:00
John Cupitt
9d5ea2129b update notes 2014-06-13 11:45:19 +01:00
John Cupitt
f5200dd4a0 Merge branch 'master' of github.com:jcupitt/libvips 2014-06-13 11:44:27 +01:00
John Cupitt
000d77e994 final clean-up 2014-06-13 10:52:07 +01:00
John Cupitt
6e48c47533 stop image abuse in labelregions
we were marking as image as changing by calling vips_image_readwrite(),
but the cache system didn't uncache it
2014-06-13 09:44:58 +01:00
John Cupitt
7bc0ca7283 update notes 2014-06-12 14:35:38 +01:00
John Cupitt
d7bad8fd5b cache drops operations on invalidate
we can now enable the vips8 operation cache in nip2, woo!
2014-06-12 13:40:00 +01:00
John Cupitt
1769840b44 merge notes 2014-06-12 11:39:49 +01:00
John Cupitt
a8d04a7dd1 add op invalidate stuff
still need to test and link to cache
2014-06-12 09:22:28 +01:00
John Cupitt
cbc60722fc skipahead is back
thanks to a new threadpool idea, see

https://github.com/jcupitt/libvips/issues/117
2014-06-10 17:44:31 +01:00
John Cupitt
30eff079f1 hide VipsFormat and VipsWrap7 classes 2014-06-10 14:43:46 +01:00
John Cupitt
1d74aaecc3 require libgsf-1 1.14.27 or later
1.14.21 is known bad, 1.14.27 is fine, not sure about inbetween versions

1.14.30 works too
2014-06-10 14:14:44 +01:00
John Cupitt
c85dd26627 oops, better filename set on foreign load
we were setting the filename in the wrong place
2014-06-10 13:46:05 +01:00
John Cupitt
72dc2e6371 Ooops 2014-06-10 13:02:37 +01:00
John Cupitt
9dea549063 oops savers were not setting filename
when we added all the buffer loaders, we cul dno longer set filename in
VipsForeign, it's now the responsibility of each load class
2014-06-10 11:26:09 +01:00
John Cupitt
0f33123dbf add vips_image_write_to_memory() 2014-06-09 14:03:45 +01:00
John Cupitt
e373fbd0af update notes 2014-06-09 08:38:39 +01:00
John Cupitt
35533a54cf finish reviding the fixed-up image load/save API 2014-06-08 11:16:58 +01:00
John Cupitt
d426abdcd8 stage1 seems to work 2014-06-07 16:47:53 +01:00
John Cupitt
339712fb13 hackey hack 2014-06-06 15:03:12 +01:00
John Cupitt
b394948cd1 start hacking in better new from file 2014-06-06 13:46:26 +01:00
John Cupitt
3f021abe2d TODO notes 2014-06-06 10:58:57 +01:00
John Cupitt
5b19fc4f8d update notes 2014-06-05 14:49:27 +01:00
John Cupitt
f1f6bde680 option to trace all orc calls
used to generate the program here:

https://bugzilla.gnome.org/show_bug.cgi?id=731227
2014-06-04 18:51:53 +01:00
John Cupitt
23911afb1c add more orc debugging 2014-06-04 15:05:23 +01:00
John Cupitt
5ffa46ebac sync 2014-05-29 14:33:44 +01:00
John Cupitt
e7743ddc3c finish mosaicing rewrite 2014-05-29 09:35:17 +01:00
John Cupitt
8a38cb1946 fix up global balance names
track mosaic-name now
2014-05-28 23:00:41 +01:00
John Cupitt
170efb1452 redo im_*merge1() as classes 2014-05-28 18:15:20 +01:00
John Cupitt
adfda3cf14 redo im_*mosaic1() as classes 2014-05-28 15:15:06 +01:00
John Cupitt
b8886fc209 wrap im_remosaic() as a class 2014-05-27 15:18:19 +01:00
John Cupitt
781a7d4dc9 wrap im_global_balance*() as a class 2014-05-26 15:02:15 +01:00
John Cupitt
e2cda919ea match works 2014-05-26 14:20:38 +01:00
John Cupitt
246525e649 more hackery 2014-05-26 11:24:46 +01:00
John Cupitt
4f3b37ad04 wrap im_match*() as a class 2014-05-23 13:46:38 +01:00
John Cupitt
de409ecac8 vips_mosaic() outputs mosaic params 2014-05-23 12:37:10 +01:00
John Cupitt
ab12cd1c3d wrap im_*mosaic() as classes 2014-05-22 18:14:40 +01:00
John Cupitt
98012d7613 im_*merge() class wrapper works 2014-05-22 16:32:09 +01:00
John Cupitt
496d523750 wrap im_*merge() as a class 2014-05-22 14:53:18 +01:00
John Cupitt
3a4569e99b longer stall time for ahead-threads
we must stall for AGES occasionally, really the stall time is about
enforcing a certain thread ordering
2014-05-22 13:40:06 +01:00
John Cupitt
c3caa595a2 complex lut was broken 2014-05-21 17:34:53 +01:00
John Cupitt
011fd99a1a start fixing up the auto-decode stuff 2014-05-19 14:53:47 +01:00
John Cupitt
4993ff15d6 add Travis CI config
thanks Lovell
2014-05-19 12:54:04 +01:00
John Cupitt
dc22d9c4c8 add hough_circle() to vipsCC and python
now exposed to Python and C++
2014-05-17 22:00:36 +01:00
John Cupitt
22d525d54f export a better cache operator for nip2 2014-05-10 14:00:01 +01:00
John Cupitt
4d17ebb3b4 add im_tile_cache() to vips7 op db
try using this from nip2 instead of im_cache()

im_cache() uses vips_sink_screen() and is probably quite a bit slower
2014-05-09 14:56:44 +01:00
John Cupitt
ccead97c05 set Type on memory strip
we need to set Type on memory strips so we can convert to the output
format correctly, thanks philipgiuliani

see https://github.com/jcupitt/libvips/issues/120
2014-05-08 14:24:22 +01:00
John Cupitt
f6f7d4eeed oops, don't treat RGB16 as sRGB in colourspace
we still had code to treat RGB16 inputs as sRGB even though we now have
a special set of RGB16 paths

vips copy 16bitRGB.tif x.jpg

now works
2014-05-08 14:13:40 +01:00
John Cupitt
ff71a69827 Merge branch 'dzsave-gsf' 2014-05-08 12:15:55 +01:00
John Cupitt
0f1ba2c0b1 Merge branch 'dzsave-gsf'
Conflicts:
	libvips/include/vips/vips.h
2014-05-06 22:03:13 +01:00
John Cupitt
1a3c62851e move some junk to deprecated/ 2014-05-06 22:01:20 +01:00
John Cupitt
5478a9bb81 update dzsave docs 2014-05-06 14:38:24 +01:00
John Cupitt
249c87906a TODO notes 2014-05-06 14:30:28 +01:00
John Cupitt
30808f70a5 sort out dzsave paths, auto-enable zip
rationalised output paths for dzsave

enable zip automatically if output name ends in .zip
2014-05-06 14:28:41 +01:00
John Cupitt
1384f9d4e0 Merge branch 'master' into dzsave-gsf
Conflicts:
	ChangeLog
2014-05-04 17:32:42 +01:00
John Cupitt
c81a12ee00 vips_system() now uses g_spawn_command_line_sync()
helps stop stray command windows appearing on Windows, better error msg
too
2014-05-03 18:04:25 +01:00
John Cupitt
ba2f764435 sync 2014-04-30 14:14:29 +01:00
John Cupitt
02a685f1e5 oops fix non-zip output 2014-04-29 09:24:31 +01:00
John Cupitt
e21c6f236e Merge branch 'master' into dzsave-gsf 2014-04-28 16:34:45 +01:00
John Cupitt
5ec80bf163 fix an orc bug 2014-04-28 14:02:35 +01:00
John Cupitt
8f6e959133 include oops 2014-04-28 12:59:19 +01:00
John Cupitt
ee88271d06 use VIPS_ prefix for env vars
stuff
2014-04-26 19:59:20 +01:00
John Cupitt
034df70866 sync 2014-04-26 16:53:29 +01:00
John Cupitt
2fd551efc1 sync 2014-04-26 11:30:00 +01:00
John Cupitt
fd495d3617 cleaned up foreign.c
need to actually interpret the filename, oops

$ vips copy wtc.jpg x.jpg[Q=100]
$ ls -l x.jpg\[Q\=100\]
-rw-rw-r-- 1 john john 15133033 Apr 25 14:50 x.jpg[Q=100]
$ vips copy wtc.jpg x.jpg[Q=1]
$ ls -l x.jpg\[Q\=1\]
-rw-rw-r-- 1 john john 15133033 Apr 25 14:50 x.jpg[Q=1]
2014-04-25 14:50:58 +01:00
John Cupitt
3dc708d2b6 add @container option to dzsave 2014-04-25 10:26:23 +01:00
John Cupitt
95971fb77a can pass options to vips_foreign_save_buffer()
embedded in @suffix
2014-04-24 18:29:20 +01:00
John Cupitt
c03d9440cb added vips_object_set_from_string() 2014-04-23 12:57:49 +01:00
John Cupitt
5baf0dfdcd small fixes for buffer save 2014-04-23 09:26:44 +01:00
John Cupitt
61891865bf add vips_foreign_save_buffer() 2014-04-22 19:42:13 +01:00
John Cupitt
1640f18bb7 docs update 2014-04-22 19:20:24 +01:00
John Cupitt
5c751fb364 sdd TODO note 2014-04-19 10:19:02 +01:00
John Cupitt
dd35d6ffc7 add "%%" escape 2014-04-11 22:51:39 +01:00
John Cupitt
44b4830ceb sync 2014-04-11 18:26:41 +01:00
John Cupitt
3fe5d437ac support 16-bits per sample palette tiffs 2014-04-09 15:28:47 +01:00
John Cupitt
daf075112d fix possible memleak
fix tiny leak if output options failed
2014-04-09 11:52:32 +01:00
John Cupitt
a17ef9b7c8 vips_system() allows many input images
you can change the image argument order too, with %Ns

added postbuild signal
2014-04-09 11:42:03 +01:00
John Cupitt
9d5fbe3935 sync 2014-04-04 13:57:07 +01:00
John Cupitt
fb24bc84d3 normalise hough_circle output
correct for number of pixels in circumference
2014-04-01 19:39:10 +01:00
John Cupitt
9d3311468c TODO notes 2014-04-01 13:57:10 +01:00
John Cupitt
ee53b01886 vips_hough_circle() added 2014-04-01 12:27:15 +01:00
John Cupitt
a7e6c6e009 finish revising draw_line 2014-03-31 16:28:00 +01:00
John Cupitt
a1e3a9e5cf clean up draw_circle
we now have a simple iterator
2014-03-31 14:03:45 +01:00
John Cupitt
15ba4a7be2 add a direct path for draw_mask
and get draw_circle ready for draw-along-circle
2014-03-29 17:16:37 +00:00
John Cupitt
4c1d07f53a vips_hough uses vips_draw_image() to accumulate
rather than vips_sum() ... 2x faster
2014-03-28 14:11:05 +00:00
John Cupitt
9b13188fc1 add "mode" to vips_draw_image() 2014-03-28 13:55:56 +00:00
John Cupitt
b522fd79a9 start to extend draw_image 2014-03-27 15:00:29 +00:00
John Cupitt
7752eb89e0 add vips_draw_add()
and start vips_hough_circle()
2014-03-26 20:33:31 +00:00
John Cupitt
66d0e28dc2 remove the embedded thumbnail reader
remove the embedded thumbnail reader, embedded thumbnails are too unlike
the main image wrt. rotation / colour / etc.
2014-03-07 16:57:20 +00:00
John Cupitt
40a15b3aa0 move orientation tag from vipsthumbnail output 2014-03-06 23:24:46 +00:00
John Cupitt
fce4f2d1ef more vipsthumbnail --rotate work
now needs some changes to jpegsave
2014-03-06 22:41:56 +00:00
John Cupitt
ffed43dffe add basic auto-rotate support to vipsthumbnail 2014-03-06 19:39:18 +00:00
John Cupitt
4be4f9f0ff vipsthumbnail copies metadata to embedded thumb
when working from the embedded thumbnail, vipsthumbnail now copies the
metadata from the main image onto the thumbnail

see

https://github.com/jcupitt/libvips/issues/109

thanks ottob
2014-03-04 14:36:49 +00:00
John Cupitt
499b977043 back out the complex linear stuff
needs cooking for a while longer in a branch
2014-03-04 14:32:43 +00:00
John Cupitt
7460f6ee20 note ottob bug 2014-02-28 13:29:52 +00:00
John Cupitt
86031879a0 notes 2014-02-25 13:25:37 +00:00
John Cupitt
1002d4da52 vips__vector_to_ink() has an imag parameter 2014-02-22 16:26:42 +00:00
John Cupitt
a562f46e69 VipsLinear allows complex constants 2014-02-22 16:08:46 +00:00
John Cupitt
3bceb5286b better usage message
more sensible output for "vips max" or "vips getpoint"
2014-02-20 19:52:36 +00:00
John Cupitt
c758c7f379 notes 2014-02-20 14:31:23 +00:00
John Cupitt
c3def93361 ban size == 0 for max/min 2014-02-19 17:13:12 +00:00
John Cupitt
36c6654374 improve direct path for flood 2014-02-17 19:42:58 +00:00
John Cupitt
c5a48effa2 flood direct path fixed
but still too slow
2014-02-14 13:55:55 +00:00
John Cupitt
3277e26e65 add a direct path to flood for labelregions 2014-02-14 10:29:09 +00:00
John Cupitt
1380f59e89 add an operation name -> gtype lookup hash 2014-02-14 09:41:19 +00:00
John Cupitt
eaa8bbe729 fix up labelregions 2014-02-12 10:33:31 +00:00
John Cupitt
3c1815ea67 fix vector_to_ink
was failing if called on an im under construction
2014-02-11 19:27:25 +00:00
John Cupitt
025e56c894 im_label_regions() is a class 2014-02-11 14:55:31 +00:00
John Cupitt
487e6ed95e break ink out to a draw subclass 2014-02-11 13:57:28 +00:00
John Cupitt
f4e970fb72 im_draw_smudge() done 2014-02-11 13:28:13 +00:00
John Cupitt
25fbe71c74 do im_read_point() / im_draw_point() 2014-02-10 21:54:54 +00:00
John Cupitt
33551fbf4c im_draw_rect() is a class 2014-02-10 11:07:00 +00:00
John Cupitt
495a6c7af1 im_draw_image() is a class 2014-02-09 19:38:53 +00:00
John Cupitt
268fe3c38c add line_user ... helps vips7 compat
so we now have a working im_draw_line_user() wrapper for the nip2
paintbox
2014-02-09 11:00:45 +00:00
John Cupitt
78b20891f9 fix a ref count thing 2014-02-06 12:53:16 +00:00
John Cupitt
3c087fc902 replace im_circle()/im_flood() with wrappers 2014-02-06 09:52:45 +00:00
John Cupitt
fb489bad53 move vips_image_decode() into the public API 2014-02-03 14:29:57 +00:00
John Cupitt
b72818a2b8 add VIPS_OPERATION_DEPRECATED
and fix a tiny problem in vipswrap7
2014-02-03 13:23:58 +00:00
John Cupitt
9f2169748b sync 2014-02-03 11:26:15 +00:00
John Cupitt
874511470f add source_space to vips_colourspace()
you can now specify the source colourspace, if you want
2014-02-03 09:33:15 +00:00
John Cupitt
9cb152596c bg render thread quits on shutdown
fixes a small memleak
2014-01-29 09:07:58 +00:00
John Cupitt
54f19a00e5 update valgrind supp 2014-01-28 14:51:30 +00:00
John Cupitt
16830d6937 vips_sink_screen() now invalidates for you
clients no longer need to call vips_image_invalidate_all()
2014-01-28 13:08:02 +00:00
John Cupitt
e7efa8e6f2 more auto-decode 2014-01-23 16:51:32 +00:00
John Cupitt
affb274d85 more auto unpack hacking 2014-01-23 13:19:37 +00:00
John Cupitt
c3b16d6ff2 Merge branch 'master' of github.com:jcupitt/libvips
Conflicts:
	TODO
2014-01-23 09:59:58 +00:00
John Cupitt
d059431867 more auto-decode stuff
more to do though
2014-01-22 14:53:48 +00:00
John Cupitt
4ac08bc2d6 add some auto unpack stuff
so RAD etc get unpacked automatically
2014-01-22 13:26:59 +00:00
John Cupitt
c8c532a068 version bump for new cycle 2014-01-21 19:34:40 +00:00
John Cupitt
cffe3bf965 pack Radiance images to and from 0-1
so this now works:

$ vips copy uffizi_probe.hdr x.jpg
$ eog x.jpg
$ vips copy x.jpg x.hdr
$ vips copy x.hdr x2.jpg
$ eog x2.jpg
2014-01-19 17:30:56 +00:00
John Cupitt
e1affa9916 sync 2014-01-17 18:17:25 +00:00
John Cupitt
e489d2e099 add --uchar option to vips_linear() 2014-01-14 19:31:19 +00:00
John Cupitt
112ca9ec21 add B_W as a source / target for vips_colourspace() 2014-01-12 18:41:49 +00:00
John Cupitt
74dc3cf6ef sync 2014-01-10 14:49:03 +00:00
John Cupitt
cc8e06db0b fix a race in buffer.c 2014-01-07 21:31:00 +00:00
John Cupitt
3dcf138fc4 more freq_dispatch to deprecated 2014-01-07 09:14:53 +00:00
John Cupitt
f5b0722a13 redo im_phasecor_fft() a s aclass 2014-01-07 09:06:02 +00:00
John Cupitt
4bc67b8bee redo im_disp_ps() as a class 2014-01-04 13:00:43 +00:00
John Cupitt
f8b9645bd8 move im_freqflt() to a class
and move im_freq_mask() to deprecated
2014-01-03 23:22:07 +00:00
John Cupitt
9f150e3063 rename freq_filt package as freqfilt 2014-01-03 17:19:45 +00:00
John Cupitt
54b6ef4e87 rename ffilter as mask
ffilter was annoying to type
2014-01-03 09:55:21 +00:00
John Cupitt
dde6e4508a rewrite (most of) the freq mask builders
all classes now, except gauss band filter
2014-01-02 18:29:59 +00:00
John Cupitt
6059b0deb8 sync 2014-01-02 09:25:16 +00:00
John Cupitt
5dc22091de update man pages 2013-12-18 14:38:27 +00:00
John Cupitt
bbf899eb35 add --crop to vipsthumbnail 2013-12-18 14:23:39 +00:00
John Cupitt
9c30242745 fix erroneous leak report from vipsprofile 2013-12-18 12:50:22 +00:00
John Cupitt
a9f85e1fd9 vipsprofile speed problems fixed
moved to O(n) layout
2013-12-18 11:10:13 +00:00
John Cupitt
2c5ee332f0 make the buffer recycle list per image
so now recycle lists are short, scale with pipeline complexity, and
buffers are always appropriately sized for the image instead of being
slowly sized up to the max size for the pipeline

before:

$ vips sharpen k2.jpg x.jpg --radius 20
memory: high-water mark 38.99 MB

after:

$ vips sharpen k2.jpg x.jpg --radius 20
memory: high-water mark 29.46 MB
2013-12-18 09:54:26 +00:00
John Cupitt
5780b33506 vipsprofile progress feedback
rather crude
2013-12-17 16:58:16 +00:00
John Cupitt
0d79221853 memuse improvements
- conv is now SMALLTILE
- more instrumentation
- better buffer recycling
- quicker buf freeing
2013-12-17 15:21:21 +00:00
John Cupitt
d6c1dd910c sync 2013-12-16 09:46:27 +00:00
John Cupitt
a9fd318712 run over memuse for sharpen 2013-12-16 09:22:05 +00:00
John Cupitt
bd3b3e04f9 sync 2013-12-13 17:34:38 +00:00
John Cupitt
c782150a6d fix sharing detection (again) 2013-12-13 12:20:05 +00:00
John Cupitt
ffd04bce91 sync 2013-12-12 09:51:55 +00:00
John Cupitt
9167767179 sync 2013-12-10 14:12:02 +00:00
John Cupitt
dc229765ed sync 2013-12-10 10:31:11 +00:00
John Cupitt
f606f038eb more restrict use 2013-12-03 14:25:22 +00:00
John Cupitt
4aedd7cd16 put the ORC stuff back in arithmetic
ready to use on linear.c
2013-12-03 12:39:13 +00:00
John Cupitt
0bb052414a use plain "restrict"
configure changes this to __restrict__ for us, if the compiler supports
it
2013-12-03 08:53:36 +00:00
John Cupitt
0f7e938aef sync 2013-12-02 18:53:56 +00:00
John Cupitt
7c43e3d332 remove the orc stuff from arithmetic
no faster than gcc auto vec
2013-12-02 11:22:08 +00:00
John Cupitt
a44377f03e sync 2013-11-30 13:56:48 +00:00
John Cupitt
dccc5d5180 add __restrict__ markup to loop pointers
helps auto-vec

also remove a couple of if()s from inner loops, again, helps auto-vec
2013-11-30 13:55:10 +00:00
John Cupitt
29eed7b2b5 remove repack code from affine
just done in compat wrapper now
2013-11-29 23:20:32 +00:00
John Cupitt
223cb02305 fix im_benchmark() 2013-11-29 22:30:20 +00:00
John Cupitt
b619a8cc04 sync 2013-11-29 22:00:13 +00:00
John Cupitt
b77b4fba0f sync 2013-11-29 15:10:16 +00:00
John Cupitt
45c8be3db6 small polish 2013-11-29 09:40:54 +00:00
John Cupitt
e0b9b3cd5c more polishing
and instrument stuff for vipsthumbnail
2013-11-28 14:56:19 +00:00
John Cupitt
730d7d0bd6 sync 2013-11-28 09:22:39 +00:00
John Cupitt
0bf5ee12fd more calcs in output 2013-11-26 17:53:44 +00:00
John Cupitt
9b9d940148 parse profile output 2013-11-19 10:13:38 +00:00
John Cupitt
693ed09edd add --vips-profile
only added a few gates so far, try a visualiser next
2013-11-18 18:31:49 +00:00
John Cupitt
42e5d3dd80 sync notes 2013-11-15 12:42:44 +00:00
John Cupitt
5e0a9f941f added vips_gaussblur() 2013-11-15 12:37:26 +00:00
John Cupitt
82f680484c vips_colourspace() could fail
for images with alpha channels
2013-11-14 13:55:23 +00:00
John Cupitt
a01e2e3e13 finish vips_sharpen()
does any image type, any number of bands
2013-11-14 12:09:42 +00:00
John Cupitt
8db331b4b5 started sharpen.c 2013-11-13 14:54:43 +00:00
John Cupitt
c1e7bbab29 add "no-subsample" option to jpeg save
turns off chroma subsampling
2013-11-13 12:59:56 +00:00
John Cupitt
0444effb8e sync 2013-11-13 09:59:56 +00:00
John Cupitt
ad723ade5a move --strip into save base class
was in jpegsave, now in save

need to add support to png writer, maybe vips as well, tiff could not
attach ICC profiles I guess
2013-11-13 09:00:47 +00:00
John Cupitt
3c4cd55d54 todo sync 2013-11-12 22:00:28 +00:00
John Cupitt
a7b9783036 move vipsthumbnail to vips_conv() 2013-11-12 20:51:16 +00:00
John Cupitt
53e86e71f4 fix up XYZ PCS and vipsthumbnail
fix import and export scaling, get vipsthumbnail to use it in --linear
mode
2013-11-12 17:18:41 +00:00
John Cupitt
98d708a2d9 todo sync 2013-11-12 10:12:05 +00:00
John Cupitt
8dfe4611d2 add a --linear option to vipsthumbnail
thanks to Nicolas for the prodding
2013-11-12 09:53:41 +00:00
John Cupitt
bc0c4f60d6 oops fix build 2013-11-11 17:38:34 +00:00
John Cupitt
b1f01af01b add vips_crop()
a synonym for vips_extract_area()
2013-11-11 14:31:41 +00:00
John Cupitt
0200e229c7 fix wrapmany compat 2013-11-11 14:08:51 +00:00
John Cupitt
608e1007e8 todo notes 2013-11-11 11:32:47 +00:00
John Cupitt
f0d4760560 redo correlation funcs as classes
im_fastcor()
im_spcor()
im_gradcor()

though gradcor we just deprecate, it's complex and hardly used ...
rework later is anyone complains
2013-11-08 14:09:42 +00:00
John Cupitt
9a06b2cea7 small rad cleanups 2013-11-05 14:51:24 +00:00
John Cupitt
20410b79ef rewrite rad write 2013-11-05 11:19:51 +00:00
John Cupitt
ae71229cf5 rewritten radiance load is much faster
the old rad code, from radiance.c, was using getc in a loop
2013-11-05 10:36:14 +00:00