Nodes/ComfyUI Ino Nodes/Ino Is Image Portrait
ComfyUI Node

Ino Is Image Portrait

The boolean that tells you which way the image is facing

By nobandegani·Created about a year ago·Updated 2 months ago· 6
Ino Is Image Portrait
  • image
  • is_portrait

A boolean from an image sounds trivial until you need it: "is this render portrait or landscape?" decides which resize, which crop, which latent size, which upscaler your pipeline should use - and ComfyUI doesn't hand you that as a clean signal. Ino Is Image Portrait does: one image in, one boolean out, true when height beats width. It's the smallest logic node in the Ino Nodes pack, and it's the kind of thing that unlocks self-adapting workflows.

It's part of nobandegani's Ino Nodes pack, built on ComfyUI's newer V3 schema. There's a sibling for the reverse check (Ino Is Image Landscape); this one returns true when the image is taller than it is wide.

What it does

One input, image. One output, is_portrait - a BOOLEAN that is true when height > width. Square images return false (they're not taller than wide). Under the hood it's a single comparison on the tensor's dimensions - no model, no processing, instant.

The interesting part is what you do with the boolean, and this is where it earns its place. Wire it into a switch node (Ino Switch On Bool from the same pack, or any conditional router) and you can fork the graph: portrait images go down one path (say, a 832×1216 latent), landscape down another, without you sorting images by hand first. It turns "the workflow only works for one orientation" into "the workflow adapts to whatever it's handed."

Where it fits

Batch and folder-processing flows are the natural home. You load a folder of mixed-orientation images, this node classifies each one, and downstream nodes pick the right sizing per image. It's also a clean guard: if a step only makes sense for portrait images (a tall-face crop, a specific upscale path), gate it on this boolean and skip it otherwise.

The honest note: it answers exactly one question - orientation by dimensions - and nothing about content. A landscape shot of a tall building is still "landscape" to this node. If you need content-aware decisions, that's a different (and heavier) tool entirely.

Installing it

It ships with the whole Ino Nodes pack. ComfyUI Manager: search "ComfyUI Ino Nodes", install, restart. Or manually:

cd ComfyUI/custom_nodes
git clone https://github.com/nobandegani/ComfyUI-InoNodes.git
cd comfyui_ino_nodes
pip install -r requirements.txt

Restart after. Pack-wide caveats apply: it's built on ComfyUI's V3 schema (README wants v0.18.1+), and requirements.txt installs inopyutils, the helper library every node imports.

Common issues

There isn't much to trip on here - a tensor in, a comparison out. The one thing to remember is the square case: an exactly-square image reports false, so if you're branching on "is this not landscape," remember a square falls through to the landscape path. If you need "square or portrait," you'll want to combine this with an aspect check rather than use the boolean alone. Search "Ino Is Image Portrait" in the node menu (grouped under InoImageHelper).

CategoryInoImageHelper

Inputs (1)

NameTypeDefaultDescription
imageIMAGE

Outputs (1)

NameTypeDescription
is_portraitBOOLEAN