Ticket #53 (accepted defect)

Opened 08/14/05 12:00:52 (3 years ago)

Last modified 08/02/08 19:47:51 (2 months ago)

Picture tagging (open source tagging code written & available)

Reported by: anti Owned by: stefan
Priority: high Milestone: 2.0
Component: General Version: 1.0b3
Severity: normal Keywords:
Cc: stefan@…

Description

Tagging becomes useful if the photo collection grows, it will make it easier to to find photos about a particular subject later on if there is a way to add keywords (tags) for each picture.

Change History

Changed 08/14/05 12:45:02 (3 years ago) by anti

Preliminary description of the feature and a possible implementation can be found in PictureTagging?

Changed 02/16/06 16:38:46 (3 years ago) by StFS

I'm very much looking forward to this feature!

Changed 02/17/06 09:50:11 (3 years ago) by StFS

Is it at all possible to implement this feature in such a way that tags are stored in the IPTC fields in the images themselves?

I realize that it's quite impossible to do only that as that would never perform well but I'd very much like that all such tagging information would be entered into the image files themselves. The same actually applies for any other meta-data such as the caption of an image and description (although I haven't seen image descriptions in Plogger).

The PictureTagging? article doesn't mention this in any way and I would be really disappointed if this meta-data would not be injected into the image files themselves.

Changed 02/17/06 09:54:04 (3 years ago) by StFS

In case it isn't completely clear by my previous comment the idea that I have is to add the meta-data to the image files themselves and regard that as the "source". This data must of course also be entered into the plogger database to speed up querying.

But when importing new images into Plogger, these IPTC headers should be examined and any tags defined there should then be added to the database to keep that in sync.

Changed 02/17/06 10:13:23 (3 years ago) by anti

StFS: This is not a bad idea. Are there any Photo processing applications that are actually that allow tagging and store the tags in IPTC headers?

Changed 02/17/06 10:53:15 (3 years ago) by StFS

anti: yes there are, quite a few actually. I know that Adobe Bridge enables editing of IPTC information and http://www.fotostation.com/ does that too as well as many others I'm guessing.

Changed 02/17/06 11:05:07 (3 years ago) by StFS

Here's some interesting reading material about IPTC:

Changed 03/03/06 01:22:59 (3 years ago) by Geodog

Free Windows apps that can read and write IPTC IrFan? View XnView? Exifer

Changed 03/17/06 03:04:37 (3 years ago) by anonymous

P.S I would like to add a vote for navigating / searching via tags, and for pulling them out of the IPTC keyword data. Flickr does it. I posted some code ideas on the forumn.

Changed 03/19/06 11:48:51 (3 years ago) by StFS

So how is this going? Any new development?

I was trying to view the changes that have been made on the plogger-with-tags branch but everything came up empty. It did seem like there had been no movement on that branch since it was created. But I'm a bit clumsy with SVN so this may be a mistake on my part.

It would be great to hear a bit more on the status of this issue since this seems to be an in demand feature. I know that I'll switch over to Plogger as soon as this kicks in.

I've been toying with the idea of diving into PHP and seeing if I can implement this myself. The usual of course keeps me from doing that, lack of time and knowledge and the fear of starting something that I won't finish because it's not done right. So it would be great to get a little report on what exactly has been done and if it's possible to get a hold of that work.

Changed 03/19/06 12:07:02 (3 years ago) by anonymous

  • cc stefan.freyr@… added

Changed 04/05/06 11:56:41 (3 years ago) by Oceanwatcher

StFS - Fotostation or Fotoware is my favourite picture organizing program. It stores all information in IPTC, so even if you burn the pictures to CD, move them or send them to someone else, etc. you can still read all info. Nice! No problem with a lost database....

I do not mind if the IPTC data is written back to the picture as I prefer to have it done before uploading. But I would very much prefer to have the tags read from the IPTC keyword field. This would save a lot of work.

Changed 04/05/06 19:27:22 (3 years ago) by anonymous

  • cc stefan@… added; stefan.freyr@… removed

Changed 04/18/06 23:15:54 (2 years ago) by ericob@…

Consider also: how does one "search on" these tags?

Let's say I make custom or short run gadgets I and want to use a "photo gallery" to display a portfolio of my creations. Some of my gadgets are used in the garden, some in the kitchen and some in the garage. Some are made of stainless steel, some of wood and some of plastic. If I were to think of the standard way of cataloging such things, I'd need to make a decision about which categories to use (place of implementation, or material??) and it would soon get messy if I created catagories for everything and put all matching items in every category.

My view is that I "tag" every picture with any applicable category (so a single item can be in both "stainless steel" AND "garden" categories).

Then in the browser a pop-up list of tags is available to viewers that allows them to, in essence, create their OWN category filter. In my case, I'm thinking of a relatively small number of tags. And/Or, as admin, I get to decide which tags appear in that pop-up. That is, I'm NOT envisioning a pop-up list with 123 items in it!

Changed 05/15/06 05:26:36 (2 years ago) by stefan

  • owner changed from anti to stefan

Changed 05/15/06 05:26:46 (2 years ago) by stefan

  • status changed from new to assigned

Changed 05/30/06 12:43:32 (2 years ago) by stevepitman@…

  • priority changed from normal to high
  • summary changed from Picture tagging to Picture tagging (open source tagging code written & available)

Someone's already written an open source PHP script that allows tagging with a database (presumably for any type of "content"), so it would probably be a really quick way of calling this script from the Plooger code - can any of you experts do that (for novices like me?).

See the author's website, complete with code downlaods = http://www.getluky.net/freetag/

Changed 05/31/06 19:23:01 (2 years ago) by stefan

Hi Steve.

That is a very good find... I just wish I had found it before.

Currently the tagging branch contains code that does very similar things to the freetag library. You can say that the functionality is pretty much the same.

The problem that I see with using something like freetag is mostly the fact that we'd have to integrate their DB schema into ours. I know, not a big problem but minor things such as possible "style differences" etc. may be a bit annoying. Personally I don't think this library provides enough functionality to justify integrating it as a library with everything that entails, especially since I've already implemented the functionality that the library would provide.

What is needed now in plogger to support tagging is the UI. Unfortunately this is something that I suck at, plus I don't have much (read "any") time these days to spend on this. You can read my recent post to the dev mailing list here: http://lists.plogger.org/pipermail/dev/2006-May/000347.html

If you can help out with any of the UI contemplations or even implementation that would be very much appreciated.

Changed 06/01/06 13:07:31 (2 years ago) by stevepitman@…

The Freetag developer might have already done the UI for us, as he's posted on his blog the way to present the tagcloud: http://getluky.net/2005/12/06/by-request-tag-clouds-with-freetagsilly_list/

He's then used this in practice in a simple way on one of his websites: http://eatlunch.at/

Hopefully this will offer more insight into how he approached the UI.

The (obvious) beauty of using tags to complement the collections:albums approach is to locate images in a way that wasn't thought of when the collection owner created the collections:albums hierarchy (e.g. if my collections were countries, with albums being areas within those countries, tags might allow me to pull out "people" or "houses" from a 'horizontal' slice across all of the albums). I realise I'm stating the obvious, but didn't want to assume that just because deli.cio.us and flckr use tags that 'they must be good', but to provide an example. I think this would be a HUGELY beneficial addition to Plogger which is, let's face it, already a stunning service, but that it adds a great deal of utility.

I'm far less PHP-competent than you guys, but in my brief look at the Tagworld documentation, they mention that their scripts are intended to be 'bolted on' to existing databases of assets, so I assumed that integration was reasonably simple. What about trying to get the Tagworld author (Gordon Luk) on board to co-develop his code into yours - he appears really keen to see his code used in practice - see the following text he has on his Implementation Guide:

"Out of respect for the fact that I don’t know if anyone is actually using Freetag in production yet, I’ll stop this quick little guide here. If you ARE using it, though, let me know what sections you’d like me to cover in more detail, and I would be happy to. It’s cool watching the excitement about Freetag, and I truly hope that this implementation guide helps you understand how Freetag might fit into your PHP/MySQL application. But it would be wicked super cool to hear how you integrated Freetag into your application, and how long it took you."

I'll email Gordon the URL for this discussion topic and keep my fingers crossed!

Good luck and thanks for the fantastic work!

Changed 07/22/08 01:09:44 (3 months ago) by sidtheduck

  • milestone set to 2.0

I have no idea where the code is for this branch. I'm moving it to 2.0 unless we get some time to look at the code and it's fairly far along. If all the backend code is there (which it seems like it's fairly well incorporated by the above discussion), then we just need to integrate it into the UI of the Admin panel.

Changed 08/02/08 19:47:51 (2 months ago) by kimparsell

I believe the code you are looking for can be found in this branch.

The current version already has plog-tag-functions.php in the includes folder, but none of the functions in that file are being used in the current version.

This is definitely something that we need to get implemented - there have been requests on the forum for this feature.

Note: See TracTickets for help on using tickets.