Table of Contents
Fetching ...

MooneyMaker: A Python package to create ambiguous two-tone images

Lars C. Reining, Thabo Matthies, Luisa Haussner, Rabea Turon, Thomas S. A. Wallis

TL;DR

MooneyMaker addresses the need for standardized generation of Mooney images, ambiguous two-tone stimuli used to study visual perception. It introduces a Python package implementing nine techniques (six novel optimization-based and three prior methods) that manipulate edge information to control initial recognizability and post-disambiguation interpretability. The paper provides an empirical validation showing that edge-disruption methods yield larger disambiguation effects after template presentation, while similarity methods yield smaller gains; it also derives guidelines for selecting techniques based on the desired balance of ambiguity and disambiguation. By offering open-source tooling with careful documentation and API design, MooneyMaker promotes reproducibility and comparability in visual perception research.

Abstract

Mooney images are high-contrast, two-tone visual stimuli, created by thresholding photographic images. They allow researchers to separate image content from image understanding, making them valuable for studying visual perception. An ideal Mooney image for this purpose achieves a specific balance: it initially appears unrecognizable but becomes fully interpretable to the observer after seeing the original template. Researchers traditionally created these stimuli manually using subjective criteria, which is labor-intensive and can introduce inconsistencies across studies. Automated generation techniques now offer an alternative to this manual approach. Here, we present MooneyMaker, an open-source Python package that automates the generation of ambiguous Mooney images using several complementary approaches. Users can choose between various generation techniques that range from approaches based on image statistics to deep learning models. These models strategically alter edge information to increase initial ambiguity. The package lets users create two-tone images with multiple methods and directly compare the results visually. In an experiment, we validate MooneyMaker by generating Mooney images using different techniques and assess their recognizability for human observers before and after disambiguating them by presenting the template images. Our results reveal that techniques with lower initial recognizability are associated with higher post-template recognition (i.e. a larger disambiguation effect). To help vision scientists build effective databases of Mooney stimuli, we provide practical guidelines for technique selection. By standardizing the generation process, MooneyMaker supports more consistent and reproducible visual perception research.

MooneyMaker: A Python package to create ambiguous two-tone images

TL;DR

MooneyMaker addresses the need for standardized generation of Mooney images, ambiguous two-tone stimuli used to study visual perception. It introduces a Python package implementing nine techniques (six novel optimization-based and three prior methods) that manipulate edge information to control initial recognizability and post-disambiguation interpretability. The paper provides an empirical validation showing that edge-disruption methods yield larger disambiguation effects after template presentation, while similarity methods yield smaller gains; it also derives guidelines for selecting techniques based on the desired balance of ambiguity and disambiguation. By offering open-source tooling with careful documentation and API design, MooneyMaker promotes reproducibility and comparability in visual perception research.

Abstract

Mooney images are high-contrast, two-tone visual stimuli, created by thresholding photographic images. They allow researchers to separate image content from image understanding, making them valuable for studying visual perception. An ideal Mooney image for this purpose achieves a specific balance: it initially appears unrecognizable but becomes fully interpretable to the observer after seeing the original template. Researchers traditionally created these stimuli manually using subjective criteria, which is labor-intensive and can introduce inconsistencies across studies. Automated generation techniques now offer an alternative to this manual approach. Here, we present MooneyMaker, an open-source Python package that automates the generation of ambiguous Mooney images using several complementary approaches. Users can choose between various generation techniques that range from approaches based on image statistics to deep learning models. These models strategically alter edge information to increase initial ambiguity. The package lets users create two-tone images with multiple methods and directly compare the results visually. In an experiment, we validate MooneyMaker by generating Mooney images using different techniques and assess their recognizability for human observers before and after disambiguating them by presenting the template images. Our results reveal that techniques with lower initial recognizability are associated with higher post-template recognition (i.e. a larger disambiguation effect). To help vision scientists build effective databases of Mooney stimuli, we provide practical guidelines for technique selection. By standardizing the generation process, MooneyMaker supports more consistent and reproducible visual perception research.
Paper Structure (23 sections, 2 equations, 4 figures, 1 table)

This paper contains 23 sections, 2 equations, 4 figures, 1 table.

Figures (4)

  • Figure 1: Example stimuli from the three categories (object, natural scene, face) and their corresponding Mooney images generated with the five selected techniques (Mean, CannyEdgeSimilarity, CannyEdgeDisruption, DiffusionEdgeSimilarity, DiffusionEdgeDisruption). The image in the top row was taken from the THINGS dataset hebartTHINGSDatabase18542019. The image in the second row is from the SUN2012 dataset xiaoSUNDatabaseLargescale2010. We took the picture in the third row ourselves, and the depicted person has certified their consent.
  • Figure 2: Example edge maps of the different edge detection methods. Shown are edge maps of the same image computed using the three different edge detection methods used in the MooneyMaker package: Canny cannyComputationalApproachEdge1986, TEED soriaTinyEfficientModel2023, and DiffusionEdge yeDiffusionEdgeDiffusionProbabilistic2024. It is easily visible that the different methods capture different kinds of edges in the image. While Canny captures all low-level edges, TEED captures sparser and less texture-like edges, and DiffusionEdge captures mostly object-level edges and contours. The shown images are taken from the THINGS dataset hebartTHINGSDatabase18542019, which is shared under a https://creativecommons.org/licenses/by/4.0/.
  • Figure 3: Procedure of one trial in one of the two Mooney phases. Each trial consisted of two to three tasks. First, in the interpretation task, participants were shown a Mooney image and then presented with an open-response text box in which they typed what they saw in the image. If their response indicated that they saw a face, human or person, the emotion recognition task followed, in which they selected one of five emotional expressions (happy, neutral, angry, sad, surprised). If the response did not indicate a face, the emotion recognition task was skipped. Finally, participants were asked to give a subjective rating about the difficulty of interpreting the Mooney image on a scale from 1 (very easy) to 5 (very difficult). Each participant completed two Mooney phases, one before and one after the template presentation phase (not shown here).
  • Figure 4: Results of the experiment. For each measure we depict the means with 95% confidence intervals. (a) Cosine similarity scores between the given responses and the image labels. Higher scores indicate better performance. (b) Difficulty ratings provided by the participants. Lower ratings indicate an easier task. (c) Disambiguation effect as measured by the difference in similarity scores between the pre-template and post-template conditions. Higher values indicate a larger disambiguation effect. (d) Disambiguation effect as measured by the difference in difficulty ratings between the pre-template and post-template conditions. Higher values indicate a larger disambiguation effect.