lucyparsons / lucyparsons/OpenOversight

Bug: photos are upright in tagging workflow but rotated 90° when cropped

Open
#802 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
256
Forks
81
PR merge metrics
No merged PRs in 30d

Description

I’ve seen this happen with a set of photos that came from a particular camera/phone, and I have a hunch for the cause. First — a user story:

  1. Given I am logged in
  2. And I have permissions to tag faces in photos
  3. When I am tagging a face in a certain photo
  4. And the photo appears at the correct orientation in the tagging interface
  5. Then I see the cropped officer tag is rotated 90º from how it had appeared in the tagging interface
  6. And the size and shape of the crop are true to how I had input them

Expected result: the cropped image is “upright” in the same orientation as the tagging interface
Actual result: certain cropped images are rotated 90º (most frequently counter clockwise)

Example image: https://www.openoversight.com/officer/12035

My suspicion is the tagging interface is correctly using an EXIF property like orientation, e.g:

…and then the processing routine is either ignoring that value or incorrectly applying the orientation.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the tagging interface and the processing routine that creates face crops, then inspect how the source photo's EXIF orientation is handled. Use the linked example image and a photo showing the issue to verify that the cropped result preserves the upright orientation and crop shape from the interface.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.