MyNixOS website logo
Description

Tool for Annotating Images in Preparation for Analysis.

A tool to help create shiny apps for selecting and annotating elements of images. Users must supply images, questions, and answer choices. The user interface is a dynamic shiny app, that displays the images and questions and answer choices. The data generated can be saved to a file that can be used for subsequent analysis. The original purpose was to annotate still images from tennis video for face recognition and emotion detection purposes.

Taipan

Travis buildstatus CRAN_Status_Badge Downloads

Taipan is a Tool for Annotating Images in Preparation for ANalysis.

The Taipan package creates simple shiny surveys. The web applications can be used locally or deployed and allow people to save survey results as tidy data that is ready to use for analysis.

The app was initially created to streamline the process of manually tagging images to create a training set. It allows users to provide information regarding entire images, and smaller regions within. It is a survey style tool, with questions being posed for each image and area identified.

Installation

You can install the stable version from CRAN.

install.packages('taipan')

You can install the development version from Github using:

# install.packages("devtools")
devtools::install_github("srkobakian/taipan")

Usage

Taipan builds a shiny app suitable for annotating images. Questions can be provided for two scenarios in the app: ‘scene’ and ‘selection’. Scene questions are suitable for questions that apply to the whole image, and are shown when no selection is made. Selection questions are appropriate for selected areas of the image, and are shown when a selection is made.

These lists of questions can be flexibly produced using the taipanQuestions function, where any shiny inputs and web elements can be used to build your own survey UI. For example, to train a model for identifying hotdogs and condiments, you could use this interface:

library(taipan)
library(shiny)
questions <- taipanQuestions(
  scene = sliderInput("quality", label = "Image Quality",
                      min = 0, max = 10, value = 5),
  selection = div(
    radioButtons("hotdog", label = "Hotdog?",
                 choices = list("Hotdog", "Not hotdog")),
    checkboxGroupInput("extra", label = "Condiments",
                       choices = list("Onion", "Tomato (Ketchup)", "Barbeque", "Mustard"))
  )
)

To build a taipan app with these questions, we can use the buildTaipan function and provide a set of images to annotate. These images can be provided locally, or via links to the web. You can specify where the app will be created with the appdir argument.

buildTaipan(
  questions = questions,
  images = c("https://raw.githubusercontent.com/srkobakian/taipan/master/sample_images/hotdog.jpg",
             "https://raw.githubusercontent.com/srkobakian/taipan/master/sample_images/not_hotdog.jpg"),
  appdir = file.path(tempdir(), "taipan"), overwrite = TRUE
)

Example App Screenshot

Metadata

Version

0.1.2

License

Unknown

Platforms (75)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows