Commit Graph

1289 Commits

Author SHA1 Message Date
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
John Cupitt ad94488734 deprecate im_contrast_surface()
slower than calling conv a few times
2013-11-03 12:24:46 +00:00
John Cupitt 9b72a57511 sync 2013-10-28 15:59:25 +00:00
John Cupitt 4b0bcd311b deprecate im_addgnoise()
it's just noise + add now.
2013-10-25 14:52:58 +01:00
John Cupitt 68c5f1909a redo im_convsep() as a class
and im_convsep_f()
2013-10-25 14:37:43 +01:00
John Cupitt 2e3d7db0e6 switch to new im_compass()
plus im_linedet() and im_gradient()
2013-10-25 13:46:17 +01:00
John Cupitt e74a0b71d9 almost done compass 2013-10-24 14:46:08 +01:00
John Cupitt 4d724c0023 started compass 2013-10-24 08:33:59 +01:00
John Cupitt 5475cabbf2 redo im_dilate()/erode() as classes
just a thin wrapper over the vips7 operations for now
2013-10-23 13:15:31 +01:00
John Cupitt 29a0c398aa todo 2013-10-23 08:49:44 +01:00
John Cupitt dd4a8435bf sync 2013-10-22 14:43:27 +01:00
John Cupitt 12cf71a6a9 combin copy_fields and demand_hint
We had two API calls, vips_image_copy_fields() and vips_demand_hint().
They are now combined in the single vips_image_pipeline() call.

All operations are now slightly smaller and simpler.
2013-10-22 09:29:40 +01:00
John Cupitt 8299bea984 todo updates 2013-10-21 13:13:34 +01:00
John Cupitt 30e6c27fd5 toto update 2013-10-20 16:56:42 +01:00
John Cupitt f7f061d265 vips_init() does ABI checking
just checks sizeof(VipsObject) for now
2013-10-20 16:46:55 +01:00
John Cupitt aa107b1bf7 remove old 45 degree mask rotate code
just a wrapper now
2013-10-20 12:30:54 +01:00
John Cupitt ece34465f0 fix compiler warnings
13.10 produces a few new ones
2013-10-18 09:13:24 +01:00
John Cupitt 8ef91f8df9 version bump ready for 7.36 2013-10-03 13:02:20 +01:00
John Cupitt aaa418ee22 revise TODO 2013-10-03 08:59:46 +01:00
John Cupitt 57b6622690 track local mem allocs for debugging 2013-10-02 21:20:41 +01:00
John Cupitt d329fb165d im_ismonotonic() becomes a class 2013-10-02 10:16:46 +01:00
John Cupitt 45a9e417f4 start vips_conv() 2013-10-01 14:26:13 +01:00
John Cupitt dfe2ddf6c5 oops anotehr vipsthumbnail fix
since "strategy" is now named "access"
2013-10-01 11:23:42 +01:00
John Cupitt 440b800e0e add a new unbuffered seq mode
things like

	vips copy huge.png x.v

now run with only a small line cache
2013-09-29 11:04:11 +01:00
John Cupitt e5ba019942 start adding unbuffered sequential mode 2013-09-27 14:47:04 +01:00
John Cupitt 608170f00e alloc larger tiles for tiff read 2013-09-26 21:50:06 +01:00
John Cupitt d28fe365a6 todo update 2013-09-26 13:12:04 +01:00
John Cupitt d435a5c14d todo update 2013-09-25 18:25:11 +01:00
John Cupitt 111a82c06e possible fix for tiff write assert fail 2013-09-25 12:57:36 +01:00
John Cupitt 6641d70652 debugging notes 2013-09-25 09:49:12 +01:00
John Cupitt aeaafe568b better sanity check for buffer sizing 2013-09-24 11:38:17 +01:00
John Cupitt a19a8ba9cb todo notes 2013-09-23 15:00:14 +01:00
John Cupitt 326365ab6c redo im_mpercent*() as a class 2013-09-21 16:19:51 +01:00
John Cupitt 481a4445fb add vips_image_new_matrixv() 2013-09-20 22:06:59 +01:00
John Cupitt a51681f490 start vips_ismonotonic() 2013-09-20 14:50:34 +01:00
John Cupitt d029461bc0 redo im_tone_build*() as classes
start vips_hist_percent() as well
2013-09-20 14:33:34 +01:00
John Cupitt 04701ad7d5 big tiff reader cleanup 2013-09-18 12:43:03 +01:00
John Cupitt 8fe0814775 todo notes 2013-09-18 11:04:27 +01:00
John Cupitt 5ffe42cec6 Merge branch 'webp'
Conflicts:
	ChangeLog
	TODO
2013-09-17 10:32:44 +01:00
John Cupitt 8ccb5bbe6d support greyscale tiff with alpha
thanks Robert for pointing out this omission
2013-09-16 15:25:02 +01:00
John Cupitt 2088e3d111 im_project() becomes a class 2013-09-16 12:19:48 +01:00
John Cupitt d78b417c3a im_lhisteq() -> a class 2013-09-05 13:50:47 +01:00
John Cupitt 7a5e04ba00 redo im_invertlut() as a class 2013-09-05 09:11:23 +01:00
John Cupitt 333d15aed0 new hist class structure 2013-09-03 14:49:57 +01:00
John Cupitt e2215bd04c redo im_histnD() as a class 2013-08-17 16:59:28 +01:00
John Cupitt eea3cbf180 small cleanups 2013-08-12 13:30:30 +01:00
John Cupitt 6855770362 rename vips_diag() as vips_info()
plus a command-line flag to turn it on
2013-08-07 09:22:24 +01:00
John Cupitt 44a0a876ba sync 2013-08-06 21:59:35 +01:00
John Cupitt ddc5f6977d read webp input with mmap 2013-08-06 21:46:48 +01:00
John Cupitt 4a65af9196 add save functions 2013-08-06 18:15:18 +01:00
John Cupitt addc48f70a TODO update 2013-08-05 21:27:25 +01:00
John Cupitt 9b6f96ed41 redo falsecolour, gammacorrect as classes 2013-08-02 09:41:11 +01:00
John Cupitt 226095c39d move im_maplut() to a class 2013-07-31 22:00:36 +01:00
John Cupitt 6b3dc259d1 more maplut hacking 2013-07-15 14:57:01 +01:00
John Cupitt da47510e37 fix some typos 2013-07-11 14:37:53 +01:00
John Cupitt d65b7b269a add multiscan jpg write? 2013-07-11 09:17:14 +01:00
John Cupitt aadd7c1ee5 vipsthumbnail rewrite 2013-07-10 11:05:45 +01:00
John Cupitt c936a86176 starting maplut 2013-07-06 11:49:27 +01:00
John Cupitt 27cec75cbd Merge remote-tracking branch 'origin/7.34'
Conflicts:
	ChangeLog
	TODO
	configure.ac
2013-07-03 11:38:15 +01:00
John Cupitt 9278498623 add vips_matrixload(), vips_matrixsave()
read and write vips mat format to and from VipsImage

also fix a leak with vips_check_matrix()
2013-07-02 12:08:46 +01:00
John Cupitt 3338b51871 TODO update 2013-07-01 13:20:31 +01:00
John Cupitt 610f7aa0eb fix morph on non-uchar images 2013-06-28 14:50:39 +01:00
John Cupitt de796417cb TODO note 2013-06-26 09:29:04 +01:00
John Cupitt 890d7b1205 tiny polish 2013-06-20 10:05:46 +01:00
John Cupitt d461d082fa sync 2013-06-18 11:01:43 +01:00
John Cupitt 4c0ace34f0 docs cleanups 2013-06-17 14:54:11 +01:00
John Cupitt dcd2dbb756 vips_pngload_buffer() works
fix a bug in vips_jpegload_buffer() too
2013-06-17 09:41:22 +01:00
John Cupitt 1dbff8f5c0 sync 2013-06-16 12:26:27 +01:00