Skip to content

Releases: son-engr-kr/pickapicka

v0.16.1

Choose a tag to compare

@github-actions github-actions released this 13 Oct 06:09

A Windows fix for 0.16.0's small copies of RAW photos, and for opening the app a second time. Edits and projects from before this version open and look exactly as they did. For what 0.16.0 brought (clearing rejects off the disk, select all, Remove vignetting), see its notes.

Installing

  • From 0.11.0 through 0.16.0: click Update to 0.16.1 in the top bar (or Preferences → Updates → Check now). It installs and reopens in the project you were in.
  • On Windows, if no update was ever offered, download the installer below once; 0.16.0 and later fix the likely reasons.
  • macOS: Pickapicka-v0.16.1-macos-arm64.pkg
  • Windows: Pickapicka-0.16.1-windows-x64.exe
  • uv tool: uv tool upgrade pickapicka
  • Homebrew: brew upgrade pickapicka

Fixed

  • Windows: Keep a small copy on a RAW photo could leave the project out of step with the folder. If the grid was reading the photo's cached preview at that moment, moving the cache failed (WinError 32) after the files had already changed, and the project was not saved: the photo showed as missing and its small JPEG as a new photo. Moving a photo's cached files now waits out a reader, as every other cache write already did. If you hit this in 0.16.0, close and reopen the project: the bar over the photos lists what is missing and what is new, and can remove the one and add the other. The small copy itself is on disk; its decision has to be set again.
  • Windows: opening the app while it was already running could fail once its log had grown past 2 MB, because the running copy held the log open while the new one tried to set it aside. The new launch now appends to it instead.
  • Renaming a merged HDR file when its bracket's frames moved, and sending an original to the Recycle Bin, wait out a reader on Windows the same way.

v0.16.0

Choose a tag to compare

@github-actions github-actions released this 13 Oct 05:58

Clear the rejects off the disk, select a whole scene in one key, take out a vignette the photo already has, and an update check that works on more Windows machines. Edits and projects from before this version open and look exactly as they did.

Installing

  • From 0.11.0 through 0.15.0: click Update to 0.16.0 in the top bar (or Preferences → Updates → Check now). It installs and reopens in the project you were in.
  • On Windows, if no update was ever offered, download the installer below once. This version fixes the likely reasons (see Fixed), so the ones after it should be offered in the app.
  • macOS: Pickapicka-v0.16.0-macos-arm64.pkg
  • Windows: Pickapicka-0.16.0-windows-x64.exe
  • uv tool: uv tool upgrade pickapicka
  • Homebrew: brew upgrade pickapicka

Clearing the rejects off the disk

  • Delete originals… in the selection bar, and More → Delete rejected originals… for every reject in every scene, open a dialog with the photos shown checked. Click out the ones to keep.
  • Two ways to go:
    • Delete them: the original files go to the Trash (the Recycle Bin on Windows), and the photos leave the project. Until the Trash is emptied they can be taken back out of it.
    • Keep a small copy: each original is replaced by a JPEG of itself, 1280, 2048 or 3072 px on the long edge, which keeps its capture time and camera details and stays in the project with its decision, stars and label. On a 33 MP Sony shoot a 2048 px copy came to about 0.26 MB against an 18.7 MB original.
  • All of a photo's files go together: a RAW with the JPEG the camera wrote beside it, an HDR result with the frames of its bracket.
  • It asks twice. The second step says how many files and how many bytes go, warns about photos that are not rejects, and wants delete typed before anything happens.
  • A drive with no Recycle Bin (on Windows, a USB stick or a network share) cannot take files back, so the files on one are counted first, the confirmation says they will be deleted for good, and they are only deleted once you have agreed to that.

Selecting

  • ⌘A (Ctrl+A on Windows) selects every photo shown: the scene, through the filter. So Rejects, then ⌘A, is every reject of the scene and nothing else. Select all is also in the filter bar, and in the selection bar until everything shown is selected.
  • The selection bar says when some selected photos are not shown, after a change of filter.

Editor

  • Remove vignetting, in Geometry → Lens & perspective, measures how much darker the corners of the photo are and sets Vignetting and Midpoint to undo it, where you can adjust them like any other slider.
    • It reads the darkening from the photo itself (after Zheng et al., Single-Image Vignetting Correction Using Radial Gradient Symmetry, CVPR 2008), so it works without knowing the lens.
    • On 66 frames of a 35 mm f/1.8 lens wide open, checked against that lens's measured profile, it found the vignette on every one and tended to take out a little too little. A scene that is darker towards its edges on its own reads the same way, so if the corners still look dark, raise Vignetting.
  • The Vignette effect slider now says it is a look, and points to Remove vignetting for a vignette the photo already has.

Fixed

  • Windows: the update check could fail where the browser reached GitHub without trouble. Python reads only the root certificates already in the Windows store, and browsers bring their own, so a needed one could be missing. Certificates are now checked by the system's own verifier, as the browser does.
  • An installer that a virus scanner held right after downloading could not be put in place, and that stopped the update checks until the app was restarted, without a word. It is now an error like any other, and tried again.
  • A failed check is tried again after 15 minutes, not 6 hours. Three failures in a row, or a newer version that would not download, now show in the top bar with what went wrong, Try again, and a link to the Releases page.

v0.15.0

Choose a tag to compare

@github-actions github-actions released this 11 Oct 05:34

A project that keeps up with its folder, scenes you can see at a glance, layers that carry the whole grade, and an export of just one scene. Edits and projects from before this version open and look exactly as they did.

Installing

  • From 0.11.0 through 0.14.0: click Update to 0.15.0 in the top bar (or Preferences → Updates → Check now). It installs and reopens in the project you were in.
  • macOS: Pickapicka-v0.15.0-macos-arm64.pkg
  • Windows: Pickapicka-0.15.0-windows-x64.exe
  • uv tool: uv tool upgrade pickapicka
  • Homebrew: brew upgrade pickapicka

The project follows its folder

  • The folder is checked against the open project when it opens and whenever the window comes back into focus. A bar over the photos says what changed.
  • New photos: Add them scores only the new ones. Their faces and subjects join the groups already there, so the people you named keep their names. Adding used to re-score everything, which regrouped the faces.
  • Photos moved within the folder are followed. Rename a subfolder or move files between subfolders and the project keeps up on its own: marks, edits, scores, faces, cached thumbnails and RAW previews, and HDR brackets with their merged file. Scenes are made again, and the bar says how many photos were followed.
    • A gone photo and a new file count as one photo moved when they share a file name and capture time (for a JPEG with no capture time, its size) and no other new file could be it.
  • A photo whose original is gone is dimmed and marked, still shown from its cached thumbnail and face crops, and listed under a new Missing filter. The editor refuses it and says why. Remove from project takes such photos out.
  • A project whose photo folder is on an unplugged drive no longer fails the check.

Scenes

  • A few photos under each scene in the list: its picks first, and until there are four, the best photo of each part of its time, leaving rejects out. Clicking one opens the scene on that photo. Preferences → Scene previews turns them off.
  • A third way to group scenes: Folder, then time. Each top-level folder is split wherever the shooting paused for longer than the gap, named reception · 1, reception · 2. A folder that stays one scene keeps its name.
    • It is offered in Group scenes and in the new-project wizard, which previews each folder cut into its scenes and suggests this mode when a subfolder has long pauses in it.
    • Switching modes any time keeps every mark and edit; only the suggestions are made again.
    • Merged projects now group this way instead of by time alone, so their scenes still say which project they came from.

Export

  • Export one scene, a few, or all of them. The dialog has From: All scenes, This scene (the one open), or Choose… with a checklist showing how many photos each scene adds.
  • Choose which photos: Picks, Not rejected (picks, review and undecided), or All. The count updates as you choose.
  • Exports still go to your Downloads folder by default. With one scene chosen, the folder is named after it (<project>_<scene>_<date>). A folder you typed or browsed to stays put when you change the scope.

Editor

  • A layer carries the whole grade. The tone curves, colour mixer, grading wheels, look, film and vignette now work inside a layer as well as on the whole photo, edited in the same panels while the layer is selected. So one colour can be turned, or one tonal range reshaped, in just the sky or just the subject. A preset's layers scale these parts by its amount like the rest.
  • Zoom is continuous, up to 800%. A pinch zooms as far as your fingers move, and a wheel notch about a fifth, around the pointer, instead of jumping between fit, 50, 100 and 200%. There is a 400% button and the zoom level is shown. While you zoom or pan, the picture already on screen moves with you until the sharper render arrives.

Fixed

  • A trackpad pinch in the editor zoomed far too fast: a slight pinch went from fit to 200%.
  • Face grouping failed after a folder had been left out of the project.
  • A failed request showed [object Object] (for example "Scene grouping failed: [object Object]"). It now says which field was wrong and why, and suggests restarting the app when the page is newer than the server still running.

v0.14.0

Choose a tag to compare

@github-actions github-actions released this 10 Oct 03:13

The editor in four tabs, layers built from shapes, and presets that carry only what you tick. Edits you made before this version look exactly as they did, with one exception: an inverted automatic mask that also carried a tonal range now selects outside the subject and narrows that to the range, as its red tint always showed. It used to invert the narrowed selection instead.

Installing

  • From 0.11.0, 0.12.0 or 0.13.0: click Update to 0.14.0 in the top bar (or Preferences → Updates → Check now). It installs and reopens in the project you were in.
  • macOS: Pickapicka-v0.14.0-macos-arm64.pkg
  • Windows: Pickapicka-0.14.0-windows-x64.exe
  • uv tool: uv tool upgrade pickapicka
  • Homebrew: brew upgrade pickapicka

New in the editor

  • Four tabs instead of one long column.
    • Adjust holds light, colour, the tone curve, the colour mixer and grading, detail, creative effects, look and film.
    • Retouch holds heal and red eye, and portrait.
    • Geometry holds crop and straighten, and lens and perspective.
    • Output holds the watermark and slots.
    • Undo, Auto, Reset and the presets sit above the tabs; Save and Cancel sit below.
    • A tab that holds something shows a dot, so a crop or a heal is not forgotten behind a tab nobody opened. Adjust shows its number of layers instead.
    • The editor opens on the tab you left it on.
  • Adjust starts with what it applies to: Whole photo, or one of its layers.
    • With a layer picked, Adjust shows its shapes and the sliders a layer can carry, under a heading naming it.
    • The curve, mixer, grading, look and film stay with the whole photo.
    • On the other tabs, the sliders always act on the whole photo.
  • Layers are built from shapes.
    • New layer makes an empty one, and Add shape puts things in it: a radial, a gradient, a brush, a tonal range, or an automatic Subject, Background, Skin, Face, Hair or Clothes selection.
    • Each shape after the first adds, subtracts or intersects with the ones above it, so "the subject minus a brushed-out hand" or "a gradient, only inside the ellipse" is one layer with one set of sliders.
    • Each shape has its own feather and inside/outside. Click a shape's row, or grab its handle on the photo, to work on it.
    • Del removes the selected shape. Removing the last one leaves the layer and its sliders, ready for another shape.
  • Show marks and show faces hide the heal strokes, red-eye circles and face boxes drawn on the photo, so you can judge the result without them. Shift+\ toggles both.
  • Generative fill shows its progress over the photo: its stage, a bar and the seconds, from the first stroke until the patch lands.
    • Fills run one at a time, since each uses 10 to 12 GB of memory.
    • A fill that finishes after you have moved to another photo goes into the photo it was drawn on.
  • Moving to another photo with unsaved changes asks first: Save (Enter), Discard, or Keep editing. It used to save silently, which a stray arrow key turned into a rewritten photo with no undo.

Presets, rebuilt

  • A preset carries the parts you tick when you save it. The parts are Light, Color, Tone curve, Color mixer, Color grading, Detail & effects, Creative, Look, Film, Layers, Portrait, Crop & straighten, Lens & perspective and Watermark.
    • Modified, the default, ticks what the edit sets. Crop, lens and the watermark are marked as often photo-specific.
    • Heals, red eye and a face's own portrait settings are never part of a preset.
  • Applying one sets those parts and leaves the rest of the photo's edit alone.
    • A zero in a ticked part is applied too, so a preset can take clarity back to nothing.
    • Values replace rather than add: a preset at +0.5 EV puts the photo at +0.5 EV.
    • The add and replace modes are gone.
  • Layers a preset brings are added beside your own and marked as the preset's.
    • Applying the same preset again replaces them instead of stacking a second set.
    • An automatic layer the photo has nothing for (a Skin layer on a photo with nobody in it) is left out, and the editor says so.
  • Auto light is a part with no values: each photo gets its own auto tone for exposure, contrast, whites and blacks, so one preset suits frames exposed differently.
  • The preset you just applied shows a chip beside Presets:
    • Amount (0 to 200) sets how much of it is applied.
    • Remove goes back to the edit from before.
    • Clicking another preset meanwhile replaces it; Shift-click lays the new one over it.
  • The list shows each preset as it would land on the current photo, with a chip for each part it carries. Hovering one shows it on the photo.
  • Apply to more… applies a preset to many photos by the same rules, each photo with its own auto tone and its own automatic layers.
  • The 39 built-in presets are gone. Your own presets are kept. One saved before this version applies as a preset of every part its edit set.

Fixed

  • A layer whose shapes were drawn but whose sliders had not been moved yet was dropped on Save while the editor showed it as saved. It is kept now. The editor also checks what the server stored and says so if a layer is missing.
  • A Generative fill still running when you moved to another photo was thrown away, and its stroke stayed drawn on the next photo.
  • The note under an automatic mask ("nothing to drag") showed under every kind of mask.

v0.13.0

Choose a tag to compare

@github-actions github-actions released this 08 Oct 05:19

Portrait retouching: wrinkles, dark circles, face shape and AI fill. Projects can now live with their photos. Edits you made before this version keep looking exactly as they did.

Installing

  • From 0.11.0 or 0.12.0: click Update to 0.13.0 in the top bar (or Preferences → Updates → Check now). It installs and reopens in the project you were in.
  • macOS: Pickapicka-v0.13.0-macos-arm64.pkg
  • Windows: Pickapicka-0.13.0-windows-x64.exe
  • uv tool: uv tool upgrade pickapicka
  • Homebrew: brew upgrade pickapicka

New in the editor

  • Portrait → Skin has three new sliders, each sized to every face it finds:
    • Wrinkles softens crow's feet, forehead lines and the fine part of smile lines. The pores stay, the softened line goes back to the skin's own colour, and the lids, eyes, mouth and nose keep their shape. Glasses and earrings are left alone.
    • Dark circles lifts the shadow under each eye towards the colour of the cheek below it, lighter only, with the skin's texture kept.
    • Neck lines does the same for the lines and creases on the neck.
  • Portrait → Face shape: Eye size, Face width, Jaw (a V line), Chin, Nose width and Mouth width, each −100 to 100. It is a warp of the face's own landmarks, rebuilt on every render, so it can be changed or taken off at any time and looks the same at 1:1 and in the export.
  • One face at a time. The Portrait sliders set every face until you pick one, by clicking it on the photo or its number above the sliders. Moving a slider then gives that face settings of its own, so one person in a group can be smoothed more, or left out of a slimming the others get. Same as all faces takes them away. A preset or Apply to more… carries the settings for all faces and leaves each photo's own per-face settings where they are.
  • AI fill, a new brush in Heal & red eye: paint over what should go and a model draws what belongs there, skin with its pores, a jaw line carried through, where Heal leaves a smooth smudge. On holes cut into real faces it kept 95% of the skin's fine texture against Heal's 31%. It is a 28 MB model under the MIT licence, fetched the first time you use it, and a stroke takes a fraction of a second. Remove blemishes now heals with it by default.
  • Generative, an opt-in brush beside it for larger regions where AI fill runs out: an eye bag, crow's feet, glasses or a strand of hair across skin. It is Stable Diffusion 1.5 inpainting with LCM-LoRA, run on your computer's CPU, about 15 to 20 seconds a stroke on a recent laptop. Again in the list draws a stroke differently. It is a 1.9 GB download under CreativeML OpenRAIL-M, which allows commercial use but lists uses it forbids; the download shows them and asks you to accept them first. It uses 10 to 12 GB of memory while it works.
  • Preferences → AI models lists every model the app downloads, with its size and licence: download, delete, and switch AI fill or Generative off. A download shows its progress, resumes where it stopped after a dropped connection, and checks every file before using it. Between fills decides whether Generative stays loaded (the next fill starts at once) or gives its memory back; Automatic picks by how much memory the computer has.

New in projects

  • Projects can live with their photos. Preferences → Workspaces chooses where new projects go: a workspace, as before, or a hidden .pickapicka folder inside the photo folder, so moving or copying the photos takes the project along. Changing it offers to move the existing projects.
  • Select above the project list moves projects between the two places or into any workspace, or merges two or more into a new project over their common photo folder. Decisions, stars, labels and edits carry across.
  • Workspaces merge into one another, and a workspace whose folder was moved is flagged and can be pointed at its new place.
  • After a move to another drive, the app finds the projects in one go: re-linking one offers the others whose photos moved with it, and Find projects lists every project kept with its photos under a folder or drive.
  • Exports go to Downloads by default, as a quick download already did.

Fixed

  • Two files with the same name in two subfolders of a scene are two photos; one used to replace the other.
  • A re-score keeps the project's own copies of the looks its edits use.
  • Changing where projects are kept can be cancelled, and Esc on a question asked from Preferences answers the question instead of closing Preferences behind it.

v0.12.0

Choose a tag to compare

@github-actions github-actions released this 05 Oct 02:23

Sharper previews, shooting order by default, and sliders you can set to a tenth. Edits you made before this version keep looking exactly as they did.

Installing

  • From 0.11.0: click Update to 0.12.0 in the top bar (or Preferences → Updates → Check now). It installs and reopens in the project you were in.
  • macOS: Pickapicka-v0.12.0-macos-arm64.pkg
  • Windows: Pickapicka-0.12.0-windows-x64.exe
  • uv tool: uv tool upgrade pickapicka
  • Homebrew: brew upgrade pickapicka

New

  • Previews sharpen when you stop. The editor shows a quick render while you drag; once you have been still for a moment it renders again from the full-resolution file at your screen's size. The viewer opens RAW and edited photos at your screen's resolution and switches to full resolution when you zoom in.

  • Shooting order. Photos in a scene run in capture-time order. A Sort: Time | People switch next to the layout buttons brings back the order by people's priority when you want it, and is remembered per project.

  • Folders that are not part of the shoot. If the photo folder has changed since a project was last scored (say, a folder of video stills appeared inside it), opening the project no longer re-scores on its own. A Folders dialog shows what is new in each folder, and lets you leave folders out or re-score. More → Folders… opens it any time. Leaving a folder out takes its photos out of the project and touches nothing on disk.

  • Finer sliders.

    • Every slider holds tenths. A plain drag and the arrow keys move whole units; Shift+arrow moves ten, Option(Alt)+arrow a tenth, and Option-drag moves at a tenth of the speed.
    • The −100…100 sliders are gentler around zero (a log scale, as in RawTherapee), so the small values most edits use get more room.
    • Exposure shows ±4 stops and takes a typed value up to ±5.
  • Process version 2 for new edits:

    • Exposure is in real stops. "+1" used to be about 2.2 stops.
    • Colour mixer luminance no longer lifts shadows. It brightens or darkens a colour by how much colour each pixel really has, so Blue +10 changes the sky and leaves dark blue-grey shadows and greys alone.

    Edits made before keep the old maths and look exactly as they did. The editor shows Old process · Update on them; Update moves an edit across and converts its exposure so mid grey stays where it was.

Fixed

  • Re-scoring no longer drops a project's time-gap scenes (it fell back to folder scenes) or the saved edit slots.

Model assets 0.2.0

Model assets 0.2.0 Pre-release
Pre-release

Choose a tag to compare

@son-engr-kr son-engr-kr released this 08 Oct 00:16

Model assets for Pickapicka's AI fill and generative fill. Not a code release.

Both are downloaded by the app only when the feature is first used, after it
says so, and each file is checked against the SHA-256 below.

migan_pipeline_v2.onnx (AI fill)

MI-GAN 512 (Places2), the authors' own ONNX pipeline, mirrored unchanged.

Generative fill (sd15-inpaint-lcm, 10 files, 1.9 GB)

Stable Diffusion 1.5 inpainting with the LCM-LoRA for SD 1.5 fused in, as ONNX
for onnxruntime on the CPU. These files are under CreativeML OpenRAIL-M and
CreativeML OpenRAIL++-M, not MIT.
Both allow commercial use and both carry
use-based restrictions (Attachment A) that bind anyone who uses or passes on
the files; the licences are included, and NOTICE.txt lists what was changed.
The app shows the restrictions and asks for them to be accepted before it
downloads these files.

  • Upstream: https://huggingface.co/stable-diffusion-v1-5/stable-diffusion-inpainting (CreativeML OpenRAIL-M) and https://huggingface.co/latent-consistency/lcm-lora-sdv1-5 (OpenRAIL++)
  • Built by packaging/models/build_genfill.py (torch 2.14.1, diffusers 0.41.0, transformers 5.19.0, peft 0.21.2, onnx 1.23.2, onnxruntime 1.30.0): the LoRA fused at scale 1.0; the UNet, the VAE encoder (latent mean) and decoder exported to ONNX opset 17; the UNet's attention fused by onnxruntime's transformer optimizer with the CUDA-only fusions off; float weights stored as float16 with a cast to float32; the empty prompt's text embedding as empty_prompt.npy in place of the text encoder. A clean rebuild reproduced every model file byte for byte.
  • Inputs: UNet sample [1, 9, 64, 64] float32, timestep [1] int64, encoder_hidden_states [1, 77, 768] float32; VAE encoder image [1, 3, 512, 512] in [-1, 1]; VAE decoder latent [1, 4, 64, 64] (divided by 0.18215).
File Bytes SHA256
unet.onnx 532093 aa18b01246f9f1ba3311e61d78a6aa71d7a92d9e9c709eedaf1038e494cb0e5f
unet.onnx.data 1719446400 4a3792122198dc04dead85e7e4bfd60d2cddf6fe29d8b548a1b78945fd640483
vae_encoder.onnx 122884 5998e90bf01a113bf8ee65d27d18239a6e7e4720995db3aade28469f58dfb5ff
vae_encoder.onnx.data 68375296 0941bad47aa4f5819076306be15aa8558bde8d50b0c4ff95bd4252cac1d2c000
vae_decoder.onnx 132127 26d86e74cfdedf4d74a21e6010c442020545cdc7c66bc59df9ffcf73045a0381
vae_decoder.onnx.data 99046144 726bc0bc3e4d8adc5300c81149821562f9c3bebcc5c6a3261965a4e3d9f2e430
empty_prompt.npy 236672 d2d2f2583ceded75236c4190bd1df1086d7ff7e608ca402210f21231c193b28b
LICENSE-CreativeML-OpenRAIL-M.txt 14385 be351ebe7ac01bcdbb018639aadcfd38f136b7dc3f2a3d4d3a24db51d1b210ef
LICENSE-CreativeML-OpenRAIL++-M.txt 14206 e514164be7f2ca2c0fb39e7283b01ab4a06d802837eaf171aa4645cfd7ee1157
NOTICE.txt 1597 9e0b27c1092045c21889722776ba2eeba7c37297e1aa7a7e7719c9845c5deb81

v0.11.0

Choose a tag to compare

@github-actions github-actions released this 29 Sep 22:04

Pickapicka now updates itself. From this version on, a new release
downloads in the background and installs with one click on Update to … in
the top bar. This is the last version you install by hand.

Installing

  • macOS: install Pickapicka-v0.11.0-macos-arm64.pkg. It replaces 0.10.0
    in /Applications. The first launch still needs right-click → Open; updates
    from here on do not.
  • Windows: run Pickapicka-0.11.0-windows-x64.exe. It upgrades the old
    install in place. SmartScreen asks once more (More info → Run anyway);
    updates from here on do not.
  • uv tool: uv tool upgrade pickapicka
  • Homebrew: brew upgrade pickapicka

New

  • Updates in one click. A little after it opens, and every few hours while
    it runs, the app asks GitHub for a newer release, downloads the installer in
    the background and checks it against the SHA-256 checksum GitHub publishes.
    Update to … restarts into the installer, which asks for the system's
    consent once (your password on macOS, the "allow changes" prompt on
    Windows), and the app opens again in the project you were in. Nothing about
    your photos is sent. Preferences → Updates turns the check off, and
    Check now works either way.
  • Zoom in the viewer. A click goes to 100% where it lands, and a second
    one back to fit. Scroll or pinch zooms at the pointer, up to 400%; a drag
    pans; + and - zoom too; Fit, 100% and 200% are in the viewer's top bar.
    The zoom and the place carry on to the next photo, so a burst is checked
    frame after frame at the same spot.
  • Room for portrait photos.
    • Tab in the viewer hides every bar and leaves only the photo. The keys
      still decide, rate and move.
    • The editor keeps one row under the photo instead of three, shows its
      status over the photo, and has Save under the adjustments. On a laptop
      screen a portrait frame gets about 100 px more height.
    • Preferences → Filmstrip turns the filmstrip off, for more still.
  • Type a value. Click a slider's number, type, and press Enter. The arrow
    keys step it, ten at a time with Shift.
  • A resizable editor panel. Drag the divider between the photo and the
    adjustments; double-click it for the default width. The width is kept.
  • An icon of its own: a viewfinder with a tick, on the Dock, the taskbar,
    the installer and the browser tab, and in the app's top bar and intro.

Changed

  • The scroll wheel in the viewer zooms the photo. The loupe's magnification is
    its 1:1 / 2:1 / 4:1 buttons, and the loupe steps aside while the photo is
    zoomed.
  • The macOS package always installs into /Applications, rather than
    upgrading a copy of the app it finds somewhere else.

Fixed

  • At 100% in the viewer, the top and left of a photo could not be scrolled to.
  • Quitting and reopening the app straight away could bring it up on another
    port, where the page still open in the browser did not find it.

v0.10.0

Choose a tag to compare

@github-actions github-actions released this 28 Sep 08:01

Picture Classifier is now Pickapicka. The app, the command (pickapicka,
was pcls), the installers and the Homebrew tap all have the new name, and the
repository is now son-engr-kr/pickapicka.
Old links redirect.

Your projects, workspaces, presets and remembered views carry over. The first
launch moves the app's own files out of the picture-classifier folders, and a
workspace named PictureClassifier-Projects stays where it is, still in the
list.

Upgrading

  • macOS: install Pickapicka-v0.10.0-macos-arm64.pkg. It adds
    Pickapicka.app next to the old app rather than over it, so move
    Picture Classifier.app to the Trash.
  • Windows: run Pickapicka-0.10.0-windows-x64.exe. It upgrades the old
    install in place, and the Start menu entry becomes Pickapicka.
  • uv tool: the package has a new name, so reinstall rather than upgrade:
    uv tool uninstall picture-classifier
    uv tool install git+https://github.com/son-engr-kr/pickapicka
  • Homebrew: the tap has a new name too:
    brew uninstall picture-classifier
    brew untap son-engr-kr/picture-classifier
    brew tap son-engr-kr/pickapicka
    brew install pickapicka

New

  • A launch intro. Opened from the Dock, the Start menu or
    pickapicka serve --open, the app shows its mark coming into focus to a
    short chime, then fades to where you left off.
    • A click or any key skips it. A reload or a second tab goes straight to work.
    • With reduced motion set in the system, it appears without moving.
    • Preferences → General → Launch sound turns the chime off. It plays on
      macOS and Windows.
  • A new install offers Pickapicka-Projects in your home folder as its
    workspace.

v0.9.0

Choose a tag to compare

@github-actions github-actions released this 27 Sep 17:07

Keyboard change: the number keys now set stars. 1–5 give a photo that
many stars and 0 clears them, as in Lightroom. They used to be extra keys for
reject, review and pick; for decisions use R, V and P (or A), the keys
shown on every tile.

New

  • Stars and colour labels.
    • 1–5 stars, 0 none; 6–9 a red, yellow, green or blue label (the
      same key again removes it).
    • They show on the tiles, the filmstrip, the viewer and the info panel, where
      they can also be clicked, and the filter bar can show only 3 stars or more,
      or only one colour.
    • Exports keep them, so Lightroom, Bridge and Windows Explorer show the
      same stars and labels. A copied original gets them in its own metadata,
      its pixels untouched.
  • Compare (C): two to four photos side by side, the ones you selected or
    the current photo and the next.
    • Tab or a click picks the pane to act on.
    • ← → swap its photo.
    • P R V, stars and labels apply to it.
    • Z, or a click, zooms every pane to 100% at the same place, and dragging
      one pans them all, to see which frame of a burst is sharpest.
  • Scoring can be stopped, and says how long is left. The progress screen
    shows each step, how many photos are done, the time remaining, and Stop.
    Stopping a new project leaves nothing behind; stopping a re-score leaves the
    project as it was.
  • Preferences (the gear at the top, or ⌘, / Ctrl+,): the key bar, the
    info panel, the loupe, what is shown behind photos (black, dark grey or
    medium grey), replaying the tours, your workspaces, and each of the project's
    settings.