In the last eight months, the advent of VLMs, starting with GPT-4V(ision) [33], has enabled numerous, unprecedented image-text processing applications [43]. VLMs can accurately identify objects in a scene [2,35,43] and perform complex tasks based on these detected objects, e.g., calculating the cost of beers on a table from an image of the scene and an image of the menu [44]. Interestingly, VLMs advance so quickly that describing unusual activities in an image [38] (e.g., a man ironing on a moving taxi) has become a standard sanity check [14].
Existing VLM benchmarks [18,29,47] cover a wide range of topics but only measure the overall human-vs-LLM gap without pinpointing specific limitations for future vision research. For example, the input images in so many questions, e.g., 42.9% of MMMU [47], are not necessary [12]. That is, many answers (1) can be inferred from the textual question and choices alone [12,16]; and (2) are memorized by VLMs from their Internet-scale training [12]. In sum, while highlighting VLM excellence on high-level question answering, current benchmarks overlook a key question: Do VLMs perceive images like humans do?
In this paper, we test VLMs’ ability to see (not reasoning) on low-level vision tasks inspired by the “visual acuity” tests [11] given to humans by optometrists. We test four state-of-the-art (SOTA) VLMs: GPT-4o [4], Gemini-1.5 Pro [36], Claude-3 Sonnet [10], and Claude-3.5 Sonnet [6] on our suite of 7 extremely simple visual tasks that involve only 2D geometric primitives (e.g., lines and circles) [17] and require minimal to zero world knowledge. Our key findings are:
1. Despite excellent performance on chart and diagram benchmarks [4, 10], VLMs cannot reliably tell whether two lines (or two circles) are intersecting, especially when close together. Accuracy in detecting 0, 1 or 2 intersections in a line chart of two 2-segment piecewise-linear functions ranges from 41% to 76% (§4.1). For the two-circle task, VLMs perform better (73–93% accuracy), but still far from the expected 100% (§4.2).
2. VLMs can perfectly recognize a circle ( ) and a word () separately. Yet, when the circle is superimposed on the word ( ), models tend to struggle to identify which letter is being circled (§4.3).
3. VLMs can accurately count shapes, e.g., circles (), that are disjoint andfar apart. However, all VLMs struggle to count intersecting circles
(like the Olympic logo), and, generally, primitive shapes () that are overlapping or nested (§4.4).
4. Tiling up squares into a grid , we find VLMs to fail to count the number of rows or columns in the grid, whether empty or containing text (§4.5). This is shocking and in stark contrast to VLM high performance (90% accuracy) [4,36] on DocVQA [30], which includes many questions with tables.
5. When tasked with tracing colored paths in a simplified subway map of only 2 to 8 paths and a total of 4 stations, VLMs often fail to count the paths between two stations, i.e., with an accuracy of 23% to 56% (§4.6).
6. GPT-4o is better than Gemini-1.5 Pro on 7 existing complex VLM benchmarks [4,36] but worse on BlindTest. On average across all 7 tasks, VLMs perform at 58.57% accuracy with Sonnet-3.5 being the best (74.94% accuracy), which is still far lower than the expected 100% accuracy of humans (see Table 1). In sum, BlindTest reveals some VLM limitations that are not measured in prior benchmarks.
Our goal is to study how SOTA VLMs perceive simple images composed of interacting geometric primitives. We choose four models: GPT-4o ( ), Gemini-1.5 Pro ( Gemini-1.5), Claude-3 Sonnet ( Sonnet-3), and Claude-3.5 Sonnet ( Sonnet-3.5) that are ranking highest on 7 recent multimodal vision benchmarks (see [4] and Table 10 in [36]), which cover multi-discipline, college-level subjects in MMMU [47], science diagrams in AI2D [18], mathematics in MathVista [26], charts in ChartQA [29], documents in DocVQA [30], and videos in ActivityNet-QA [46] & EgoSchema [27]. We initially run experiments with Claude 3 Opus [7] but swap it with Sonnet-3.5, which performs more accurately on BlindTest and costs 5less.
On our benchmark, we find that some chat interfaces perform worse than their API counterparts (e.g., the system on gemini.google.com is worse than Gemini-1.5 Pro on aistudio.google.com) perhaps due to their extra finetuning [34] or specific system prompts [3] that attempt to align VLMs with a company’s policies. Similarly, we find GPT-4o and Claude 3 models in perplexity.ai to perform worse than the original API models. Access To make sure we test the best VLMs available, we access all four models via their available APIs on OpenAI, Google, and Anthropic.
Eye exams Like humans’ visual acuity tests [11], we design a set of 7 very simple, yet novel tasks that are composed of common geometric primitives. We do not use the existing tests designed for human-eye exams for two reasons. First, we avoid using the questions that exist on the Internet, which may provide an inflated measure of vision capabilities [12,16,45]. Second, our preliminary experiments show that VLMs already perform very well on humans’ eye exams, which typically contain single, separate symbols—e.g., the Snellen chart [11], tumbling E [11], and contrast sensitivity charts [8,28].
Motivation Our BlindTest benchmark tests VLMs on identifying known geometric primitives when they are close together, overlapping, or intersecting. We hypothesize that VLMs will struggle because they mostly rely on “late fusion” [24,39], i.e., first extracting visual representations without considering the textual question, and then feeding them to a large language model (LLM) for processing. Therefore, while geometric primitives in BlindTest are well known, their exact spatial information on a white canvas (e.g., the size and position of a ) is typically not describable in natural language, even for humans, and may not be captured by the vision encoders trained mostly on natural images.
Controls For each test image, we prompt VLMs using two different, yet semantically equivalent questions. Furthermore, we reproduce the same image using three different image sizes (§§ 3.1, 3.2, 3.4, 3.6 and 3.7), two to three line thickness values (§§ 3.1 and 3.4 to 3.7) when rendering primitives.
3.1 Task 1: Counting line intersections
Given the impressive accuracy of VLMs on answering questions on diagrams and charts (e.g., Sonnet-3.5 scoring 94.7% on AI2D and 90.8% on ChartQA) [6], a reasonable hypothesis is that VLMs must be able to see if two graphs intersect in a chart. Here, we test this hypothesis by asking VLMs to count the number of intersections (0, 1 or 2) between two 2-segment piece-wise linear functions.
Images We create 1,800 images (Fig. 1a) of 2D line plots drawn on an image of size of , where . Each line plot consists of two line segments, defined by three points whose x-coordinates are fixed at px (see Fig. 1a). The y coordinates are randomly sampled from an invisible 1212 grid to ensure there is sufficient spacing between two plots and there are 0, 1 or 2 intersections. See §D.1 for more details.
Fig. 1: Images & groundtruth labels from Task 1 (a), Task 3 (b), & Task 5 (c).
Prompts We ask each question using two different wordings:
1. How many times do the blue and red lines touch each other? Answer with a number in curly brackets, e.g., {5}.
2. Count the intersection points where the blue and red lines meet. Put your answer in curly brackets, e.g., {2}.
Groundtruth answers are (random-baseline accuracy: 33.33%).
3.2 Task 2: Two circles
In the task of counting line intersections (§3.1), each image contains two long, thin colored lines on a large white canvas. Here, we test models in a complementary setting where the two interacting objects (here, two same-sized filled circles
) are larger while their gap is smaller. This task evaluates VLM ability in detecting (1) a small gap between two circles and (2) two circles are overlapping, i.e., no gaps. We vary circle and gap sizes and ask VLMs if two circles are (a) overlapping or (b) touching each other.
Images Given a blank image of size , we draw two same-sized circles of diameter with a boundary-to-boundary distance where to cover all three cases: overlapping, tangent, and disjoint (see Fig. 2a). The two circles
are arranged in four different orientations, making a , and angle with the x-axis (Fig. 2b). The whole grid sampling generates 224 images per image size. We replicate the procedure for 3 image sizes, i.e., C = 384, 769, 1155 px to create a total of 3B.1 for more details.
Fig. 2: For each image size and distance d, we vary diameter (a) and orientation (b). Groundtruth: O: overlapping. T: touching. O: non-overlapping. T: non-touching.
Prompts
1. Are the two circles touching each other? Answer with Yes/No. 2. Are the two circles overlapping? Answer with Yes/No.
Groundtruth We consider two circles overlapping and touching (O, T) if d < 0.0; non-overlapping but touching (O, T) if d = 0.0; and non-overlapping & non-touching (O, T) when d > 0.0 (Fig. 2). Random-baseline accuracy: 50%.
3.3 Task 3: The circled letter
Consistent with prior reports [37,43,44], we find that VLMs can 100% accurately identify a primitive shape (e.g., a red circle ) [37] and can perfectly read an English word () alone. Here, we superimpose the red circle on every letter, one at a time, in the word, and ask VLMs to identify which letter is being circled. While the task is easy to humans, our hypothesis is that if a VLM’s vision is “blurry”, it might not be able to identify the exact letter being circled since there is tiny spacing between the adjacent letters.
Images We choose three strings , and because they contain characters of variable widths and heights. Furthermore, all four tested VLMs can read out all characters in these strings when they are input to the models as an image. While is a common English word, is the longest word without repetitive letters. We also test VLMs on the random string to estimate how much model accuracy is due to its familiarity with the word.
For each (string, circled-letter) pair, we render a 512512 image by choosing among 3 red oval line-thickness levels, 2 font families, and 4 different values of image padding for a total of 24 images. That is, we generate 360, 408, and 480 images for (15 letters), (17 letters), and (20 letters), respectively. We ensure each letter to be circled fits completely the oval (see Fig. 1b). See §C.1 for more details.
Groundtruth letters need to match predicted letters exactly (case-insensitive).
3.4 Task 4: Counting overlapping shapes ���
Aligned with prior research [44], we also find VLMs to be able to count disjoint circles (). Yet, here, we test VLMs on counting circles that are intersecting () like in the Olympic logo—a common cognitive development exercise for preschoolers [1, 5]. Our hypothesis is that a “blurry” vision may not see the intersection between two circles clearly and therefore unable to trace circles and count them. For generalization of our findings, we repeat the experiment with pentagons () as well (instead of circles).
Images In an image of size , where px. We draw overlapping, same-sized circles arranged in two rows like the Olympic logo (see Fig. 3). A circle diameter . We repeat the images with two different line thicknesses for rendering circles. This procedure renders 3 resolutions 5 values of 2 diameters 2 line widths images. We also vertically flip all 120 images, resulting in a total of 240 images. We repeat for pentagons () in addition to circles (), resulting in 2402 . See §F.1 for more details.
Fig. 3: Images span across three sizes and shapes span across two diameters (and two side lengths for ), two color options (black vs. colored), and two line widths.
Prompts
1. How many {shapes} are in the image? Answer with only the number in numerical format.
2. Count the {shapes} in the image. Answer with a number in curly brackets e.g. {3}.
3.5 Task 5: Counting the nested squares
In addition to testing VLMs on counting the intersecting circles (§3.4), here, we test a complementary setting by arranging the shapes so that their edges do not intersect. That is, each shape is nested entirely inside another (see Fig. 1c). For completeness, we test squares () in this task.
Images In an image of size 10001000px, we render nested squares one at a time from the largest to the smallest. First, the outermost square is rendered using a random edge length d. And each subsequent smaller square is placed randomly inside the previous one and has an edge length of 75% of that of the outer square. We render squares using a line width of {3, 4, 6}px and ensure no squares touch by edges. For each line width, we generate 10 images (where squares have different, random locations) to create 3 Repeating the process for all N values results in 4 E.1 for more details.
Prompts
1. How many squares are in the image? Please answer with a number in curly brackets e.g., {10}.
2. Count total number of squares in the image. Answer with only the number in numerical format in curly brackets e.g. {3}.
Groundtruth answers are (random-baseline accuracy: 25%).
3.6 Task 6: Counting the rows and columns of a grid
The results from prior tasks show VLMs cannot always count shapes that are overlapping (§3.4) or nested (§3.5). What about adjacent shapes ? Here, we tile up shapes (specifically, ) into a grid and challenge VLMs to count— a task that is supposedly simple to VLMs given their remarkable performance (90% accuracy) [4,36] on DocVQA [30], which includes many questions with tables. To simplify the task, we ask models to count the number of rows and columns in a given table (either empty or text-containing).
Images A grid may have , or cells, where 9} and . We also include grids of size 1010 to balance the benchmark with the row and column sizes. Each grid is rendered with two different line widths on a canvas of size where px. Besides empty grids, we also replicate the procedure to make grids contain text (which is more common in real-world tables) where each cell contains a single random English word (see Fig. 4a). Both versions (empty and text-containing) combined have 2G.1 for more details.
Fig. 4: Empty and text-containing grids are generated with various image sizes (a). On an invisible 1818 grid (bottom right), we randomly generate random paths from one station to another (b). All stations have an equal N = 1, 2 or 3 outgoing paths.
1. Count the number of rows and columns and answer with numbers in curly brackets. For example, rows={5} columns={6}
2. How many rows and columns are in the table? Answer with only the numbers in a pair (row, column), e.g., (5,6).
Groundtruth answers include both the number of rows and columns. An answer is correct when both column and row counts are correctly predicted (randomchance accuracy is 1/22, i.e., 4.55%).
3.7 Task 7: Following single-colored paths
It is important for VLMs to be able to follow paths in order to read maps or charts [29], interpret graphs [19], and user annotations (e.g., arrows) in input images [44]. To assess path-following capability, this task asks models to count the unique-color paths between two given stations in a simplified subway map.
Images We create each subway map on an image of size , where {512, 1024}px (see Fig. 4b). We write 4 station names (A, B, C, D) at 4 fixed coordinates , respectively. We divide the canvas into an invisible grid of 1818 cells and initialize 3 path-starting points px away from each station. We draw a path, using the depth-first search algorithm starting from a random station and a random starting point, where a valid move is one cell in any direction: North, south, east or west. We repeat the process so that each station has exactly outgoing paths, for a total of 180 maps. See §H.1 for details.
Prompts
1. How many single-colored paths go from A to C? Answer with a number in curly brackets, e.g., {3}.
2. Count the one-colored routes that go from A to C. Answer with a number in curly brackets, e.g., {3}.
Groundtruth answers are (random-baseline accuracy: 33.33%).
Note that, to make the task easier, 0 is excluded from the set of groundtruth answers (i.e., we never ask models to count if there is no path between two given stations).
Table 1: Accuracy (%) of each model over 7 tasks in BlindTest. The mean accuracy over all four models is 58.57% substantially better than random chance (24%), which is computed considering each task as a single-label, N-way classification problem. Sonnet-3.5 is the best (74.94% accuracy) but still far from the 100% expected accuracy.
4.1 Task 1: VLMs cannot reliably count line intersections
Experiment We parse every model’s response to extract the final answer and then compare it to the groundtruth. We report the mean accuracy of every model on two prompts and analyze how accuracy changes as we vary hyperparameters (e.g., line widths and image sizes).
Results First, across two prompts and two line widths, all VLMs are 56.84% accurate (Table 1a), far from the expected 100% accuracy on this easy task (Fig. 5). The best accuracy is only 75.36% (Sonnet-3.5) (Table 2). Specifically, VLMs tend to perform worse when the distance between two plots narrows (Fig. 6). As each line plot is composed of three key points, the distance between two plots is computed as the mean distance over three corresponding point pairs. See §D.4 for more samples of VLM predictions. VLMs perform similarly across three image sizes (§D.2).
Our findings are in stark contrast to the high accuracy of VLMs on ChartQA [4,36], suggesting that VLMs can recognize the overall trend of a line plot but unable to “zoom in” to see fine details, e.g., which lines are intersecting.
How many times do the blue and red lines touch each other? Answer with a number in curly brackets, e.g., {5}.
Fig. 5: VLMs cannot reliably count the intersections between the blue and red plots.
Table 2: The accuracy breakdown by line width in pixels (where C = image width), averaged over two prompts, shows that VLMs cannot reliably count the intersections between two simple 2D line plots.
Fig. 6: As a line-plot image is divided into a 1212 grid, the x-axis shows the mean distance (in grid cells) over 3 pairs of points of two 2-segment plots. VLMs are often more confused when two plots are closer together (left) than when they are further apart (right).
4.2 VLMs cannot clearly see if two circles overlap or not
Motivated by VLM poor performance in counting line intersections (§4.1), here, we replace lines by large, filled circles and ask VLMs explicitly if the two circles are touching (or overlapping).
Experiment Since we instruct VLMs to output a binary answer (Yes/No), we use Python to extract VLMs’ formatted answer from their responses for comparing with groundtruth.
Results Surprisingly, even on this task where objects ( ) are large and clearly visible to humans, no VLMs are able to solve it perfectly with a mean accuracy of 85.41% (Table 1b). The best accuracy is 92.78% (Gemini-1.5) over all images and two prompts (Table 3). A common trend is when two circles are close together, VLMs tend to perform poorly, making educated guesses, e.g.,
Fig. 7: VLMs consistently fail at smaller distances. However, when the gap is large and clearly visible, GPT-4o remains unreliable. Sonnet-3.5 tends to conservatively answer “No” regardless of the actual distance between the two circles.
Sonnet-3.5 often answers “No” conservatively (Fig. 7). GPT-4o performs the worst and shockingly is not 100% accurate even when the distance between two circles is as large as one radius (Fig. 8; d = 0.5). That is, consistent with results from §4.1, VLMs seem unable to always detect the gap or intersection between two filled circles (Fig. 7).
An explanation is that due to the late-fusion mechanism [39], VLMs extract visual features from the image before even looking at the question, causing this “blindness”. In contrast, if a model first knows that the question asks it to focus on the area between the two circles, it then might be able to extract accurate visual information to answer such simple questions.
While VLMs perform consistently across three image resolutions (§B.2), every model performs the best at a specific circle orientation (§B.5). More examples of VLMs’ answers are in §B.7.
Table 3: GPT-4o and Gemini-1.5 perform more consistently over the two different prompts (“
Fig. 8: VLMs perform poorly when two circles are tangent (d = 0.0) or close together (d = 0.05, 0.10). Yet, Sonnet-3.5 is better at . (perhaps due to its tendency to answer “No”).
4.3 VLMs do not always see the letter inside the red circle
Experiment We use regex matching and manual review to extract the answer since each model’s output follows a specific format, e.g., GPT-4o’s responses typically contain a single line explaining its answer, with the predicted letter mostly placed between quotation marks (’). However, Gemini-1.5 uses markdown formatting and places double asterisks (**) around the letter.
Results First, all VLMs can accurately spell out the string when there is a red oval superimposed. Yet, interestingly, reading out which letter is being circled turns out to be a challenge (mean model accuracy: 81.39%; Table 1c). For example, VLMs tend to make mistakes when adjacent letters are partially occluded by the red oval (e.g., ). See Fig. 9 for more failure cases.
Fig. 9: Identifying the letter being circled is non-trivial for VLMs across both English words (Acknowledgement & Subdermatoglyphic) and a random string (tHyUiKaRbNqWeOpXcZvM ). When making mistakes, VLMs tend to predict letters adjacent to the circled one.
When making mistakes, VLMs often predict letters adjacent to the one being circled (see the confusion matrix in Fig. 10 and more results in §C.2). Sometimes models hallucinate, e.g., coming up with characters non-existent in ., “9”, “n”, “©”) despite that it can accurately spell out the word (see Fig. 10). More failure cases are reported in §§ C.3 and C.6.
On average, models perform better (+2 to +7 points) on the two English words compared to the random string (Table 4), suggesting that knowing the word help VLMs make better educated guesses, slightly improving accuracy. See also Fig. 17 for an example of GPT-4o and Gemini-1.5 making educated guesses on the color of the overlapping area between two overlapping circles (Task 1).
Gemini-1.5 and Sonnet-3.5 are the top-2 models (92.81% and 89.22%) and better than GPT-4o and Sonnet-3 by a large margin of nearly +20 points (Table 4). VLMs perform similarly across two prompts (§C.5) and two font families (§C.4).
Fig. 10: Aggregate confusion matrix summed over all 4 VLMs and 48 images per model for the word 48). Models mostly mispredict to characters near the circled letter. VLMs also sometimes hallucinate characters that do not even exist in the word, e.g., “9” or “n” (right panel).
Table 4: Except for GPT-4o, all other models have consistently higher accuracy (%) on the two English words than on the random string, suggesting that VLMs might leverage their familiarity with a known word to make educated guesses.
4.4 VLMs struggle to count overlapped and nested shapes
Experiment We run all VLMs on all images of overlapping circles and pentagons (§3.4) and nested squares (§3.5). We prompt models to output the predicted number of shapes in a formatted answer. We compare extracted answers with groundtruth. For each shape (circles, pentagons and squares), we run two different prompts.
Results On counting overlapping circles, pentagons, and nested squares, VLM mean accuracy is 51.35%, 30.99%, and 73.29%, respectively (Table 1d–f). That is, counting shapes is not easy to models regardless of whether the shapes are overlapped or nested, i.e., their edges intersect or not (Fig. 11). On nested squares, model accuracies vary widely—GPT-4o (55.83%) and Sonnet-3 (65.00%) are at least -30 points behind Gemini-1.5 (80.00%) and Sonnet-3.5 (92.08%). This gap is even larger on counting overlapped circles and pentagons—Sonnet-3.5 is better than the other models by multiple times (e.g., 77.29% vs. 9.79% of Sonnet-3; Table 5).
Fig. 11: Counting overlapped circles is not easy to VLMs regardless of circle colors, line widths, and resolutions. Gemini-1.5 often predicts “5” regardless of the actual circle count, suggesting a strong bias towards the well-known Olympic logo.
All four models are at least 96% accurate in counting 5 circles. Yet, surprisingly increasing the number of circles by one is sufficient to cause accuracy to dip substantially to near zero for all models, except Sonnet-3.5 (Fig. 12; column 6– 9). In counting pentagons, all VLMs (except Sonnet-3.5) perform poorly even at 5 pentagons. Overall, counting from 6 to 9 shapes (both circles and pentagons) is hard for all models.
We further investigate why VLMs are nearly perfect at counting 5 circles but struggle to count 5 pentagons or more than 5 shapes in general. When there are more than five circles () and VLMs predict an incorrect count, Gemini-
Table 5: We compute a separate accuracy over each count subset (e.g., for 5, 6, 7, 8, and 9 circles), and then report the mean accuracy below (over these subset accuracies). Counting nested squares (a) is easier than counting overlapping circles (b) and pentagons (c) for VLMs. Sonnet-3.5 performs better than the rest by a large margin on all three shapes.
Fig. 12: All four VLMs can count 5 circles well (leftmost; 0.96), but only Sonnet-3.5 can count 5 overlapping pentagons well at 0.92 accuracy (b). Counting from 6–9 shapes (either ) is challenging to VLMs. Interestingly, GPT-4o ( ) and Sonnet-3 ( ) are unable to count two nested squares reliably, i.e. 0.88 and 0.91 accuracy (c).
1.5 predicts “5” 82.29% of the time regardless of the actual number of circles (Table 6). For other models, this frequency is also much higher than that in the case of pentagons. Our results show strong evidence that VLMs are biased towards the well-known 5-circle Olympic logo. More details on this bias are in §F.4.
GPT-4o performs better on colored shapes than on black shapes and Sonnet- 3.5 is increasingly better as the image size increases. However, the accuracy of all other models only change marginally as we change colors (§F.3) and image resolutions (§F.2).
Table 6: Frequency (%) of predicting “5” when there are more than 5 circles (or pentagons (shapes in the image. For example, Gemini-1.5 predicts “5” circles 82.29% of the time but this tendency disappears in the case of (0%), showing a strong bias towards the 5-circle Olympic logo (among four models).
Note that there are only 2 to 5 squares in each image in the task of counting nested squares and these squares do not intersect (Fig. 13). Surprisingly, GPT-4o and Sonnet-3 are still unable to perfectly count two and three nested squares (Fig. 12c). When the count increases to four and five, all models are far from 100% accurate (Fig. 12c). Our results show that it is not easy for VLMs to extract accurate representation of shapes even when their edges do not intersect.
Fig. 13: Counting nested squares is not easy to VLMs even when there are only two squares (leftmost). The task becomes harder as the count increases from 2 to 5. Sonnet-3.5 performs the best (92.08%) but still not at the 100% by humans.
4.5 VLMs cannot easily count the rows and columns in a grid
Since VLMs struggle in counting the number of simple shapes when the shape edges intersect (§3.4) or separate (§3.5), here, we test the remaining case where these shapes are placed adjacently sharing edges, specifically, tiling up multiple rectangles into a single grid. Given the impressive accuracy of VLMs [4, 6, 36] on questions involving tables and spreadsheets in DocVQA [30], we hypothesize that VLMs must be able to count the rows and columns in a grid.
Experiment We run all VLMs on the images of empty grids and text-containing grids (§3.6) and analyze their formatted answers.
Results First, VLMs surprisingly performs poorly (34.37% accuracy) in counting the rows and columns in an empty grid (see Table 7). Specifically, they are often off by one or two (e.g., GPT-4o predicts 44 and Gemini-1.5 predicts 55 for a 45 grid; Fig. 14). This finding suggests that VLMs can extract important content from a table to answer table-related questions in DocVQA [30] but do not clearly “see” a table cell-by-cell as a human does.
This might be because tables in documents are mostly non-empty and VLMs are not used to them. Aligned with that hypothesis, after adding a single word
Count the number of rows and columns and answer with numbers in curly brackets. For example, rows={5} columns={6}.
Fig. 14: VLMs are often off by one or two in counting rows and columns in an empty grid. The same is true when a grid is small (4) and contains a word in each cell.
Table 7: Including text inside grids improves all model accuracies. Sonnet-3.5, yet, outperforms other models on both empty and text-containing grids.
Table 8: VLM accuracy (%) decreases as the number of paths increases from 1 to 3. Overall, counting colored paths poses a challenge to VLMs.
to each cell, we observe the accuracy of all VLMs to increase almost twice (e.g., from 26.13% to 53.03% for GPT-4o) (Table 7). Yet, no models can solve this task with the best model (Sonnet-3.5) performing at 88.68% on text-containing grids and 59.84% on empty grids (Fig. 15a vs. b).
Interestingly, VLMs are better at counting columns than rows— 70.53% vs. 60.83% accuracy (Fig. 15c vs. d). However, these numbers are still far from 100% showing that VLMs currently cannot count neither rows or columns in a table reliably. See §§ G.2 and G.3 for more results.
4.6 VLMs struggle to count single-colored paths
This path-counting task tests a VLM’s ability in recognizing a path of a unique color and trace it from a given starting station to the destination, an important task in reading maps and graphs in general [29].
Fig. 15: Accuracy of counting rows (c) vs. columns (d) (here, analyzed separately) when the grids are empty (a) vs. contain text (b). VLMs (especially, and ) generally count much more accurately when grids contain text vs. empty grids (b vs. a). Interestingly, columns are also easier for VLMs to count than rows (d vs. c).
Experiment From a subway map (§3.7), we randomly sample 2 connected stations and prompt every model to count the single-colored paths that connect them. We extract numbers from VLM templated responses and compare them with the groundtruth.
Results Overall, VLMs perform poorly at a mean accuracy of 42.06% (Table 1h). Even when there is only one path between two stations, no models can reach 100% accuracy (the best is Sonnet-3.5 at 92.91% and the worst is 22.91%; Table 8). VLM predicted counts are often off by 1 to 3 paths (Fig. 16). VLM accuracy reduces substantially from 59.16% to 40.69% and 26.35% as the complexity of the maps increases from 1, 2 to 3 paths, respectively (Table 8). More samples of VLM responses are in §H.2.
Benchmarking VLM vision understanding College-level topics [47], charts [29], documents [30] or videos [46] are among the common benchmarks for assessing VLM vision understanding [4,6,10,36] and are witnessing VLMs’ recent rapid progress—e.g., Sonnet-3.5 is reaching 95.2% on DocVQA, 90.8% on ChartQA, and 94.7% on AI2D [6]. However, most of vision benchmarks attempt to evaluate VLMs on real-world, topic-specific data that require extensive prior knowledge [12, 20, 42], which has a “data leakage” problem, i.e., VLMs many times can answer accurately without even the input image [12]. Furthermore, most benchmarks test VLMs on the data that humans have to deal with to provide a high-level sense of the human-machine intelligence gap [25, 45]. In contrast, our BlindTest benchmark differs significantly from prior benchmarks because it is (1) extremely easy to humans and can be solved by a 5-year-old (unlike [29,30,47]); (2) the first low-level, visual sanity check for VLMs; (3) requiring minimal to zero prior knowledge; (4) requiring minimal commonsense
Fig. 16: Some VLMs , , ) surprisingly fail in even extremely easy cases across both line widths (leftmost). VLMs tend to perform worse as the number of paths connecting stations increases.
or complex reasoning (unlike [13, 48])—i.e., a strong language model is of little use here when it is non-natural for humans to describe BlindTest images in language.
The ARC benchmark [13,32] also contains abstract images made up of simple shapes; however, it challenges VLMs to understand and reason based on those patterns. That is, ARC assumes VLMs can identify the abstract shapes in order to reason. In contrast, our BlindTest directly evaluates VLM capabilities in recognizing these primitive shapes.
Improving VLM vision capabilities Most recent recipes for improving SOTA VLMs involve finetuning a pretrained LLM coupled with vision encoders to solve high-level vision tasks [23]. Such late-fusion approaches fuse visual representations learned from the tokenized image with a powerful thinking brain [21,22,31].
However, current vision approaches for VLMs are facing challenges as models sometimes are “blind”—unable to see natural objects exist in a real photo [41]. In contrast, we are showing VLMs are visually impaired at low-level abstract images, e.g., inability to count 6 overlapping circles or 3 nested squares. Our circled-letter task (§3.3) is inspired by VLM abilities in recognizing content inside a red circle over real objects in natural images [37, 43, 44]. However, we show that VLMs can fail at a low-level, optical character recognition as opposed to recognizing real objects. To the best of our knowledge, no prior attempts have been made to address the exact limitations raised in our paper: (1) identifying and counting simple lines, shapes and geometric primitives when they interact (§4.1 to §4.5); (2) following colored paths (§4.6). Solving these limitations may be the foundation for VLMs to progress on some existing vision benchmarks
Fig. 17: Sometimes VLMs ( and
on graphs, e.g., [19], visual math [26] and some existing blind-spots in natural images (e.g., understanding the direction an object is facing [41]).
We propose BlindTest, a benchmark of seven novel low-level visual tasks for testing VLM ability to “see” simple geometric primitives (such as line, circles, squares, intersections) that are the basic building blocks for many image tasks. The tasks are designed from scratch and require minimal to zero knowledge. As the tasks did not exist on the Internet before and require minimal world knowledge, there is minimal chance that VLMs can solve BlindTest by memorization or by not using the input image—an issue in some prior benchmarks [12,16].
We document surprising findings that the best commercial VLMs are still struggling with tasks that can be easily solved by a five-year-old (e.g., telling whether two circles or lines intersect §4.2). These limitations may be largely due to the late-fusion approach [9,24] of integrating vision into an LLM model and that early-fusion [39,40] may be the way forward. We finetune a 7B, SOTA late-fusion open-source VLM [15] using LoRA on our tasks but do not obtain a high-performing model (§B.6). That is, training a general VLM that performs well on BlindTest might be a non-trivial, interesting future research direction.
The poor performance of VLMs on BlindTest suggests that models will perform poorly on the real-world visual tasks that require them to follow arrow directions or paths, (e.g., reading subway maps in Fig. 45, street maps or directed graphs in Fig. 46), perceive lines and intersections (e.g., reading music sheets; Fig. 46), identify and counts objects in a crowded scene. Because of not looking at the prompt while extracting visual features, VLMs might be “blind” to some low-level details causing the intelligent language model to struggle and sometimes make educated guesses.
We thank Hung H. Nguyen, Thang Pham, Ali Yildirim, Giang Nguyen, and Tin Nguyen at Auburn University for feedback and discussions of the earlier results. We are also thankful for the API research credits from Anthropic and together.ai to MRT. AN was supported by the NSF Grant No. 1850117 & 2145767, and donations from NaphCare Foundation & Adobe Research.
1. Count shapes printables | myteachingstation.com. https : / / www . myteachingstation.com/preschool/math/numbers/count-shapes-printables, (Accessed on 07/05/2024)
2. Gemini spatial example. https://gemini-spatial-example.grantcuster.com/, (Accessed on 05/31/2024)
3. Gpt-4 system prompt revealed - by patrick mcguinness. https://patmcguinness. substack.com/p/gpt-4-system-prompt-revealed, (Accessed on 06/06/2024)
4. Hello gpt-4o | openai. https://openai.com/index/hello-gpt-4o/, (Accessed on 05/31/2024)
5. How many counting game with color simple geometric shapes for kids, educa- tional maths task for the development of logical thinking, preschool worksheet activity, count and write the result, vector stock vector by ©olya.by@mail.ru 266096226. https://depositphotos.com/vector/how-many-counting-game- with-color-simple-geometric-shapes-for-kids-educational-maths-task- for-266096226.html, (Accessed on 07/05/2024)
6. Introducing claude 3.5 sonnet \ anthropic. https://www.anthropic.com/news/ claude-3-5-sonnet, (Accessed on 07/03/2024)
7. Introducing the next generation of claude \ anthropic. https://www.anthropic. com/news/claude-3-family, (Accessed on 07/23/2024)
8. Vision screening. https://www.zeiss.com/vision-care/us/eye-health-and- care/vision-screening.html, (Accessed on 07/03/2024)
9. Alayrac, J.B., Donahue, J., Luc, P., Miech, A., Barr, I., Hasson, Y., Lenc, K., Men- sch, A., Millican, K., Reynolds, M., et al.: Flamingo: a visual language model for few-shot learning. Advances in neural information processing systems 35, 23716– 23736 (2022)
10. Anthropic, A.: The claude 3 model family: Opus, sonnet, haiku. Claude-3 Model Card (2024)
11. Bailey, I.L., Lovie-Kitchin, J.E.: Visual acuity testing. from the laboratory to the clinic. Vision research 90, 2–9 (2013)
12. Chen, L., Li, J., Dong, X., Zhang, P., Zang, Y., Chen, Z., Duan, H., Wang, J., Qiao, Y., Lin, D., et al.: Are we on the right way for evaluating large vision-language models? arXiv preprint arXiv:2403.20330 (2024)
13. Chollet, F.: On the measure of intelligence. arXiv preprint arXiv:1911.01547 (2019)
14. Dai, W., Li, J., Li, D., Tiong, A.M.H., Zhao, J., Wang, W., Li, B., Fung, P., Hoi, S.: Instructblip: Towards general-purpose vision-language models with instruction tuning (2023)
15. He, M., Liu, Y., Wu, B., Yuan, J., Wang, Y., Huang, T., Zhao, B.: Efficient mul- timodal learning from data-centric perspective. arXiv preprint arXiv:2402.11530 (2024)
16. Hegde, N., Paul, S., Madan, G., Aggarwal, G.: Analyzing the efficacy of an llm-only approach for image-based document question answering. arXiv preprint arXiv:2309.14389 (2023)
17. Hughes, J.F.: Computer graphics: principles and practice. Pearson Education (2014)
18. Kembhavi, A., Salvato, M., Kolve, E., Seo, M., Hajishirzi, H., Farhadi, A.: A dia- gram is worth a dozen images. In: Computer Vision–ECCV 2016: 14th European Conference, Amsterdam, The Netherlands, October 11–14, 2016, Proceedings, Part IV 14. pp. 235–251. Springer (2016)
19. yunxin li, Hu, B., Shi, H., Wang, W., Wang, L., Zhang, M.: Visiongraph: Leveraging large multimodal models for graph theory problems in visual context. In: Fortyfirst International Conference on Machine Learning (2024), https://openreview. net/forum?id=gjoUXwuZdy
20. Liang, Z., Guo, K., Liu, G., Guo, T., Zhou, Y., Yang, T., Jiao, J., Pi, R., Zhang, J., Zhang, X.: Scemqa: A scientific college entrance level multimodal question answering benchmark. arXiv preprint arXiv:2402.05138 (2024)
21. Liu, H., Li, C., Li, Y., Lee, Y.J.: Improved baselines with visual instruction tuning (2023)
22. Liu, H., Li, C., Li, Y., Li, B., Zhang, Y., Shen, S., Lee, Y.J.: Llava-next: Improved reasoning, ocr, and world knowledge (January 2024), https://llava-vl.github. io/blog/2024-01-30-llava-next/
23. Liu, H., Li, C., Wu, Q., Lee, Y.J.: Visual instruction tuning. arXiv preprint arXiv:2304.08485 (2023)
24. Liu, H., Li, C., Wu, Q., Lee, Y.J.: Visual instruction tuning. Advances in neural information processing systems 36 (2024)
25. Liu, Y., Duan, H., Zhang, Y., Li, B., Zhang, S., Zhao, W., Yuan, Y., Wang, J., He, C., Liu, Z., et al.: Mmbench: Is your multi-modal model an all-around player? arXiv preprint arXiv:2307.06281 (2023)
26. Lu, P., Bansal, H., Xia, T., Liu, J., Li, C., Hajishirzi, H., Cheng, H., Chang, K.W., Galley, M., Gao, J.: Mathvista: Evaluating mathematical reasoning of foundation models in visual contexts. In: International Conference on Learning Representations (ICLR) (2024)
27. Mangalam, K., Akshulakov, R., Malik, J.: Egoschema: A diagnostic benchmark for very long-form video language understanding. Advances in Neural Information Processing Systems 36 (2024)
28. Mäntyjärvi, M., Laitinen, T.: Normal values for the pelli-robson contrast sensitivity test. Journal of Cataract & Refractive Surgery 27(2), 261–266 (2001)
29. Masry, A., Do, X.L., Tan, J.Q., Joty, S., Hoque, E.: ChartQA: A benchmark for question answering about charts with visual and logical reasoning. In: Muresan, S., Nakov, P., Villavicencio, A. (eds.) Findings of the Association for Computational Linguistics: ACL 2022. pp. 2263–2279. Association for Computational Linguistics, Dublin, Ireland (May 2022). https://doi.org/10.18653/v1/2022.findings- acl.177, https://aclanthology.org/2022.findings-acl.177
30. Mathew, M., Karatzas, D., Jawahar, C.: Docvqa: A dataset for vqa on document images. In: Proceedings of the IEEE/CVF winter conference on applications of computer vision. pp. 2200–2209 (2021)
31. McKinzie, B., Gan, Z., Fauconnier, J.P., Dodge, S., Zhang, B., Dufter, P., Shah, D., Du, X., Peng, F., Weers, F., Belyi, A., Zhang, H., Singh, K., Kang, D., Jain, A., He, H., Schwarzer, M., Gunter, T., Kong, X., Zhang, A., Wang, J., Wang, C., Du, N., Lei, T., Wiseman, S., Yin, G., Lee, M., Wang, Z., Pang, R., Grasch, P., Toshev, A., Yang, Y.: Mm1: Methods, analysis & insights from multimodal llm pre-training. ArXiv abs/2403.09611 (2024), https://api.semanticscholar.org/CorpusID: 268384865
32. Mitchell, M., Palmarini, A.B., Moskvichev, A.K.: Comparing humans, GPT-4, and GPT-4v on abstraction and reasoning tasks. In: AAAI 2024 Workshop on ”Are Large Language Models Simply Causal Parrots?” (2023), https://openreview. net/forum?id=3rGT5OkzpC
33. OpenAI: Gpt-4 technical report (2023)
34. Ouyang, L., Wu, J., Jiang, X., Almeida, D., Wainwright, C., Mishkin, P., Zhang, C., Agarwal, S., Slama, K., Ray, A., et al.: Training language models to follow instructions with human feedback. Advances in neural information processing systems 35, 27730–27744 (2022)
35. Rasheed, H., Maaz, M., Shaji, S., Shaker, A., Khan, S., Cholakkal, H., Anwer, R.M., Xing, E., Yang, M.H., Khan, F.S.: Glamm: Pixel grounding large multimodal model. The IEEE/CVF Conference on Computer Vision and Pattern Recognition (2024)
36. Reid, M., Savinov, N., Teplyashin, D., Lepikhin, D., Lillicrap, T., Alayrac, J.b., Soricut, R., Lazaridou, A., Firat, O., Schrittwieser, J., et al.: Gemini 1.5: Unlocking multimodal understanding across millions of tokens of context. arXiv preprint arXiv:2403.05530 (2024)
37. Shtedritski, A., Rupprecht, C., Vedaldi, A.: What does clip know about a red cir- cle? visual prompt engineering for vlms. In: 2023 IEEE/CVF International Conference on Computer Vision (ICCV). pp. 11953–11963. IEEE Computer Society, Los Alamitos, CA, USA (oct 2023). https://doi.org/10.1109/ICCV51070.2023. 01101, https://doi.ieeecomputersociety.org/10.1109/ICCV51070.2023. 01101
38. Taesiri, M.R., Feng, T., Bezemer, C.P., Nguyen, A.: Glitchbench: Can large mul- timodal models detect video game glitches? In: Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. pp. 22444–22455 (2024)
39. Team, C.: Chameleon: Mixed-modal early-fusion foundation models. arXiv preprint arXiv:2405.09818 (2024)
40. Tong, S., Brown, E., Wu, P., Woo, S., Middepogu, M., Akula, S.C., Yang, J., Yang, S., Iyer, A., Pan, X., et al.: Cambrian-1: A fully open, vision-centric exploration of multimodal llms. arXiv preprint arXiv:2406.16860 (2024)
41. Tong, S., Liu, Z., Zhai, Y., Ma, Y., LeCun, Y., Xie, S.: Eyes wide shut? exploring the visual shortcomings of multimodal llms. In: Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). pp. 9568–9578 (June 2024)
42. Wang, K., Pan, J., Shi, W., Lu, Z., Zhan, M., Li, H.: Measuring multimodal math- ematical reasoning with math-vision dataset (2024)
43. Yang, J., Zhang, H., Li, F., Zou, X., Li, C., Gao, J.: Set-of-mark prompting un- leashes extraordinary visual grounding in gpt-4v (2023), https://arxiv.org/abs/ 2310.11441
44. Yang, Z., Li, L., Lin, K., Wang, J., Lin, C., Liu, Z., Wang, L.: The dawn of lmms: Preliminary explorations with gpt-4v(ision). CoRR abs/2309.17421 (2023). https://doi.org/10.48550/ARXIV.2309.17421, https://doi.org/10. 48550/arXiv.2309.17421
45. Yu, W., Yang, Z., Li, L., Wang, J., Lin, K., Liu, Z., Wang, X., Wang, L.: Mm-vet: Evaluating large multimodal models for integrated capabilities. In: International conference on machine learning. PMLR (2024)
46. Yu, Z., Xu, D., Yu, J., Yu, T., Zhao, Z., Zhuang, Y., Tao, D.: Activitynet-qa: A dataset for understanding complex web videos via question answering. In: Proceedings of the AAAI Conference on Artificial Intelligence. vol. 33, pp. 9127–9134 (2019)
47. Yue, X., Ni, Y., Zhang, K., Zheng, T., Liu, R., Zhang, G., Stevens, S., Jiang, D., Ren, W., Sun, Y., Wei, C., Yu, B., Yuan, R., Sun, R., Yin, M., Zheng, B., Yang, Z., Liu, Y., Huang, W., Sun, H., Su, Y., Chen, W.: Mmmu: A massive multi-discipline multimodal understanding and reasoning benchmark for expert agi. In: Proceedings of CVPR (2024)
Fig. 18: VLMs fail on the simple tasks of BlindTest.
We describe below the exact API versions and settings for each model.
We access the API for GPT-4o (gpt-4o-2024-05-13) via platform.openai.com. We use all default settings including:
– temperature: 1.0
– detail: auto (see API doc), i.e., the system will automatically decide whether to use the “low-res” (85 tokens) or “high-res” mode (85 tokens and a set of 170 tokens for every 512512 tile).
Gemini-1.5 (gemini-1.5-pro-latest) API is accessible via aistudio.google.com, and we use all default settings.
We access the anthropic API via console.anthropic.com to use Sonnet-3 (claude-3-sonnet-20240229) with default settings.
We follow the same process as for Sonnet-3 and use console.anthropic.com to access Sonnet-3.5 (claude-3-5-sonnet-20240620) API with default settings.
B.1 Benchmark Construction Details
To create our benchmark, we use 5 parameters to control the diversity of the samples.
– Color: We fix the colors for each circle to use {magenta, dodgerblue}.
– Image size: We use the physical size, and the DPI arguments in matplotlib to initialize the image size. The physical size is fixed to , and the DPI . The output image sizes are {384, 769, 1155}px.
– Diameter: We use uniform diameters for both circles and choose the value proportional to the image size, where the diameter is of the image size.
– Distance: The boundary-to-boundary distance between circles is a fraction of the diameter chosen from {-0.15, -0.1, -0.05, 0.0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5}. Based on our definition, center-to-center distance is (2+distance)diameter.
– Rotation: We include 2 main rotations (vertical and horizontal), and 2 diagonal rotations.
We use the center of the image as the origin so that it always aligns with the midpoint of distances between two circles. This systematic process results in a benchmark comprising 672 images (see Table 9 and Fig. 19).
Code The code is available at https://github.com/anguyen8/vision- llms-are-blind/blob/main/src/TouchingCircle/TwoTouchingCircles.ipynb.
Fig. 19: Samples in the benchmark include various settings for drawing two circles. We start with choosing a rotation (a) and change other parameters of each plot, e.g., the diameter (b), the distance between perimeters (c), and the image size (in pixels). We show the parameters that can be changed to generate different samples inside the legend.
Table 9: Number of samples for each category is the same in our benchmark, where they sum to 672.
B.2 Finding: image resolution does not affect VLMs performance
Fig. 20-left shows that VLMs are almost invariant to the image resolution. For example, GPT-4o and Sonnet-3’s performance saturates at 769px, and Sonnet- 3.5 slightly performs worse at 769 and 1155px compared to 384px. Gemini-1.5, however, is fairly consistent across different resolutions. Based off these results, we conclude that VLMs’ ability to see the intersection of two circles does not depend on the quality of the image.
B.4 Finding: Increasing the distance improves the VLMs’ accuracy
VLMs perform better when the distance increases from zero to positive values (see Fig. 20-right). However, Sonnet-3.5 is more conservative than other VLMs that mostly answer “Yes”, which results in its lowest performance at negative distances.
Fig. 20: There is no correlation between the resolution of the image (left) and VLMs’ performance. Across various rotations (middle), VLMs perform almost the same at vertical. Most failure cases are at boundary distances (right).
B.5 Finding: VLMs prefer a specific rotation
Table 10 shows that VLMs prefer different rotations. For example, GPT-4o performs best at vertical, Gemini-1.5 at diagonal, Sonnet-3.5 at horizontal, and Sonnet-3 at vertical.
Table 10: VLM accuracy is often best at a specific two-circle orientation. Across three different resolutions, GPT-4o and Sonnet-3 perform much better when two circles are arranged vertically. In contrast, Gemini-1.5 and Sonnet-3.5 prefer the diagonal and horizontal orientations, respectively.
B.6 Results for fine-tuning Bunny on the two touching circle
In order to determine if fine-tuning could improve the model’s performance on this task we attempted to fine-tune Bunny [15] (Bunny-v1.1-Llama-3-8B-V with the original weights) on the two touching circles task. We fine-tuned Bunny using datasets of sizes: 10K, 20K, 50K, and 100K samples, each containing a balanced number of instances where the circles are either overlapping or separate (equal number of YES/NO answers in the training set).
The baseline model, without any fine-tuning, achieved 17.1% accuracy for task overlap and 11.7% for touching circles. After fine-tuning, we observed improvements with smaller datasets, such as 10K and 20K cases, where accuracy reached up to 36.8%. However, increasing the number of samples did not lead to better performance. In some instances, such as with the 50K dataset, the model failed to predict anything and only generated the end-of-text token.
The loss values for all these experiments were very close to zero, indicating that the model overfits the training set but fails to generalize. This suggests that training on this task is not straightforward and may require a combination of multiple tasks or that this problem does not have a simple solution.
Fig. 21 shows the accuracy breakdown by distance of the two circles. The model’s performance improves when the circles are overlapping, but when there is a long distance between them, the model does not generalize well and cannot provide accurate answers.
Fig. 21: Comparison of Bunny’s accuracy by distance with and without fine-tuning
B.7 Additional examples
We show examples of models’ responses to the prompts on the two touching circles task in Fig. 22.
Fig. 22: Some VLMs consistently fail by not seeing the distance between the two circles at large distances and resolutions (GPT-4o and Sonnet-3–rightmost). Gemini-1.5 and Sonnet-3 also struggle to see the small gaps between circles (distance=0.05)
C.1 Task construction
Each image is created using a combination of the below variables.
}. While they all have letters of varying widths and heights, the first two are English words while the latter is a string of random characters. is the longest English word that has no letter repetitions.
– Letter: We draw the oval ( ) over every letter, one at a time, in each string.
– Font: We use 2 different font families for each word, OpenSans and Helvetica. – Oval ( ) thickness: We generate the with 3 various line thicknesses.
– Scaling factor: Since each letter has a unique size, we use a scaling factor to control the size of the .
– Padding: We use four values for padding {25, 50, 100, 200}, by which we offset the word’s position on the image. This ensures that the word is not always in the center of the image.
Finally, we render the text on a white canvas with a size of 512512 pixels, and we produce 180 images for , 204 for , and 240 samples for (see Table 11 and Fig. 23).
Evaluation We manually review the groundtruth labels and make sure the circled letters are readable to humans.
We do not ask VLMs to provide answers in a pre-defined format. Instead, we write code to extract predicted letters from VLM free-form responses and manually review those extracted letters are what VLMs meant.
Code The code is available at https://github.com/anguyen8/vision-llms- are-blind/blob/main/src/CircledWord/GenerateSamples.ipynb.
Table 11: The breakdown of our benchmark based on the number of different parameters shows our data is balanced for each word.
Fig. 23: Our benchmark comprises three different words, of which one letter is circled by the red oval in each image.
C.2 Finding: VLMs mostly confuse the adjacent character for the circled letter
Models often mistake the neighboring characters as the circled letter (see Table 12), GPT-4o 33.67% in the word (the lowest) and Sonnet- 3.5 90.62% in the word (the highest). Fig. 24 depicts that in the word , where letter “m” is surrounded by two “e”, Sonnet-3.5 mispredicts “e” for “m” 38 times out of 48 (79.16%). Gemini-1.5, in the word , where letters “K” and “a” are adjacent, mispredicts “a” for “K” 35 times out of 48 (72.91%) (see Fig. 25).
Table 12: Frequency (%) of predicting the adjacent letters when the model makes wrong predictions. VLMs cannot accurately see the position of the red oval in the image, which causes them to mispredict the adjacent letters.
Fig. 24: Adjacent letters are the most common wrong prediction for Sonnet-3.5 in Acknowledgement , e.g., letter “e” is predicted instead of “m” 79.16% of the time, or letter “t” is predicted instead of “n” 22.91% of the time.
tHyUiKaRbNqWeOpXcZvM , 1) predicting the adjacent letters (“a” instead of “K”), 2) confusing the red oval as a part of the circled letter (“@” instead of “a”), and 3) similarity in the shape of the letters (“g” instead of “q” or “o” instead of “c”).
C.3 Finding: GPT-4o and Gemini-1.5 confuse the red oval as part of the letter
Figs. 26 and 27 show that Gemini-1.5 and GPT-4o sometimes fail to recognize that the red oval is not part of the letter. Gemini-1.5 predicts “o” when the circled letter is not “o” (see Fig. 26), and GPT-4o often predicts “o” regardless of what letter is circled (Fig. 27). Gemini-1.5 also predicts “©” instead of “c”, and GPT-4o predicts “@” instead of “a”.
Fig. 26: Random samples for different words, and Gemini-1.5’s predictions, where Gemini-1.5 mostly predicts the adjacent letters or confuses the red oval as part of the circled letter.
Fig. 27: GPT-4o is the most sensitive to confuse the red oval as part of the letter, where it often predicts “o” instead of “l”, “y”, “p”, and “c” in the word Subdermatoglyphic .
C.4 Finding: Models perform similarly across two common font families
As shown in Fig. 28, models do not show a significant variance over different fonts, suggesting our choice of font is not a reason for their ill-performance.
Fig. 28: VLMs do not show significant variance over different fonts. This suggests that using different spacing between letters, letter styles, and letter size has minimal effects on the VLMs’ ability to see the content of the red oval.
C.5 Finding: models are invariant to our choice of prompts
Our choice of prompts has almost no impact on the performance of the models as depicted in Fig. 29.
Fig. 29: Model performance breakdown for different prompts P1: Which letter is being circled? and P2: Which character is being highlighted with a red oval? highlights that regardless of the prompts, VLMs perform similarly in seeing the contents of the red oval.
C.6 Additional Examples
Examples from our evaluation of VLMs on the circled letter task are shown in Fig. 30.
Fig. 30: Most failure cases consist of predicting the adjacent letters (predicting “e” instead of “m” in GPT-4o, Sonnet-3, and Sonnet-3.5 leftmost), and confusing the red oval as part of the circled letter (predicting “©” instead of “c” in Sonnet-3.5).
D.1 Benchmark Construction Details
To create our benchmark, we use 5 parameters to control the diversity of the samples.
– Color: We fix the colors for each line to use {blue, red} – Image size: We generate 3 different image resolutions, {384, 768, 1152}px, to include high- and low-resolutions samples in our tests.
– Grid size: We divide the whole image into a 1212 grid with 144 equal sized cells. Then, we choose 3 points for each (blue and red) line on the grid to draw the line plots. To make sure the line plots do not overlap and the intersections are well distanced from the edges, we fix the x-coordinates, and randomly sample y-coordinates from the invisible 1212 grid. The grid sampling also avoids picking the same coordinates for both blue and red line.
– X-coordinate: For each point, we choose xpx.
– Y-coordinate: For each x-coordinate above, we randomly sample a y-coordinate from 12 pre-defined rows in the 1212 grid. We also ensure that no blue and red points share the exact same (x,y) coordinates.
– Line thickness: We vary the line widths with standard matplotlib values (2 and 4), which renders into a withd of and pixels, respectively.
– Number of intersections: We count the intersections based on the three points defined for each line (, and ).
We repeat the process until we have 2 line widths3 image sizes100 samples of 0, 1, and 2 intersections, resulting in 1800 images (see Table 13 and Fig. 31). Code The code to generate the images is at https://github.com/anguyen8/ vision-llms-are-blind/blob/main/src/LineIntersection/2dline.ipynb.
Table 13: We generate the same number of images based on various parameters to have a balanced benchmark.
Fig. 31: Samples from the two intersecting lines benchmark that contain 0, 1, or 2 line intersections.
D.2 Finding: image resolution does not influence VLM’s ability to count the line intersections
Fig. 32 depicts that increasing the resolution in our plots does not help the VLMs see and count the intersections of 2D lines.
D.3 Finding: VLMs perform similarly when the lines intersect twice
Our benchmark consists of images with 0 to 1 line intersections with identical number of samples in each category. We break down the performance of each model based on the groundtruth in Fig. 32-right to analyze where VLMs mostly fail in their overall performance. As depicted in Fig. 32-right, VLMs perform relatively better on 2 intersections (except Sonnet-3.5 that is best on 1 intersection), and perform worse on 0 intersection (Sonnet-3 is the worst).
Fig. 32: VLMs are not sensitive to the image resolution to see and count the number of intersections (left). When the lines intersect twice, VLMs perform similarly, while Sonnet-3.5 has the least variance over different number of intersections (right).
D.4 Additional Examples
We show examples of models’ responses to the prompts on the counting the number of line intersections task in Fig. 5.
Count the intersection points where the blue and red lines meet. Put your answer in curly brackets, e.g., {2}.
Fig. 33: All VLMs, except Sonnet-3.5, fail at counting when there is no intersection, even when the gap between 2 lines is large (second image on the left).
E.1 Benchmark Construction Details
We use 5 parameters to create the images of nested squares.
– Depth: For each image, we draw nested squares on the image. We refer to each square in this collection as a depth.
– Initial size: We choose a random size for the first square in the bounds of the image size.
– Reduction factor: We draw squares such that each depth is entirely contained by its previous depth. We use a reduction factor to scale the square sizes.
– Center: The first square’s center is chosen to ensure it is entirely visible in the image. For the remaining squares, we choose the center based on the space between the previous square and the new reduced size.
– Line thickness: We use standard matplotlib line width parameter of (2=3px, 3=4px, 4=6px).
We continue to generate images until we have 30 samples for each depth, resulting in 120 images overall (see Table 14 and Fig. 34).
Code The code is available at https://github.com/anguyen8/vision- llms-are-blind/blob/main/src/NestedSquares/GenerateSamples.ipynb. Post-processing: To determine the model’s answer, we use Python to extract the number from curly braces in the response e.g. {3}.
Fig. 34: Random examples from the nested square task that have 2, 3, 4 or 5 squares in the image.
Table 14: Nested squares include the same number of samples for each parameter value in our benchmark.
E.2 Finding: the best performing model is affected by line width
Table 15 shows that the best VLM on the nested square task (Sonnet-3.5) is more accurate as line width increases. In contrast, the worst model (GPT-4o) shows the opposite trend as the line thickness changes, suggesting that GPT-4o confuses squares when the borderline is thick.
Table 15: Line thickness has minimal effect on VLMs’ performance, suggesting that visual attributes of shapes are not critical to VLMs when asked to count the shapes.
E.3 Additional Examples
We show examples of models’ responses to the counting the number of nested squares task in Fig. 35.
Fig. 35: VLMs fail to reliably count the number of nested squares in an image.
F.1 Benchmark Construction Details
We create the benchmark by generating images containing shapes resembling the Olympic logo by choosing a combination of settings.
– Image size: We fix the physical size of the image in matplotlib to 55, and change the resolution by changing the DPI value, which is to get images with sizes {384, 769, 1155}px.
– Number of shapes: We choose a number from {5, 6, 7, 8, 9}.
– Color: Each image is generated using two different coloring schemes. We generate an all-black version and a second version by randomly sampling colors from a colormap in matplotlib.
– Distance: To generate the interlaced shapes, we use a small boundary-to-boundary distance factor for each row of the shapes. We fix this value to 0.1 proportional to the diameter of circles or side length of pentagons.
– Diameter: We choose a uniform diameter for all the circles in each image from proportional to the image size.
– Side length: We follow the same policy for the diameter to choose the side length of the pentagons.
– Line thickness: We generate each image with {0.5, 1.0} line width of matplotlib standard. This results in {1px, 2px} lines in 384px images, {2px, 3px} lines in 769px images and {3px, 5px} lines in 1155px images.
We center the shape collection on the center of the image in two rows, and generate 480 images (see Fig. 36 and Table 16), 240 images of circles, and 240 images of pentagons.
Code The code is available at https://github.com/anguyen8/vision- llms-are-blind/blob/main/src/CountingCircles/OlympicCircles.ipynb for circles and at https://github.com/anguyen8/vision-llms-are-blind/ blob/main/src/CountingCircles/OlympicPentagons.ipynb for pentagons.
Fig. 36: We generate images of (a) different numbers of circles with various parameter changes, e.g., the diameter, (b) the linewidth (in points) (c) colorings, and the image size (in pixels). For the pentagons, we vary the side length instead of the diameter.
Table 16: We create 480 images containing circles and pentagons that are uniformly distributed over various parameters.
F.2 Finding: different resolutions have no impact on most VLMs’ performance
Fig. 37-a shows that VLMs are invariant to the resolution when asked to count the overlapping shapes. This suggests that the image quality has almost no effect on the performance, and VLMs cannot see the shapes.
Fig. 37: VLMs perform better on counting overlapping circles (top) than overlapping pentagons (bottom). For most models, resolution (a) and colors (b) have minimal impact on performance. Sonnet-3.5 performs better as the image size increases (a). GPT-4o performs better on colored shapes than on black shapes.
F.3 Finding: color-coding does not generally help the VLMs
While we expect the color-coding to make the shapes more distinct for the models, Fig. 37-b suggests that, except for GPT-4o, coloring the shapes has an opposite effect on the performance of the models.
F.4 Finding: Gemini-1.5 has the most biased predictions to the Olympic logo
Fig. 38 shows the overall trend of the predictions among SOTA VLMs. Gemini- 1.5 (see Fig. 38b) tends to predict “5” significantly more often when asked to count the circles, while its predictions are more random for pentagons. This suggests the model’s bias toward the Olympic logo.
Fig. 38: Prediction trend for each VLM shows (a) GPT-4o has less variance in counting circles versus pentagons, (b) Gemini-1.5 is biased to predicting the number of circles to be 5, (c) Sonnet-3 tends to under count the number of shapes, and (d) Sonnet-3.5 has the least relative variance over both shapes.
F.5 Additional Examples
We provide examples of VLMs’ responses in Fig. 39.
Fig. 39: VLMs tend only count the correct number of shapes when the image includes 5 circles. This shows that their predictions are biased toward the actual Olympic logo.
G.1 Benchmark Construction Details
Our benchmark specifications consist of various parameters for the grid generation process.
We divide the image size by the number of rows and columns to find the coordinates for drawing the borderlines. Then, we draw the lines on the four edges of the image and draw the remaining lines in between. Our benchmark comprises 264 images of blank and text-containing grids (see Table 17 and Fig. 40).
Code The code is available at https://github.com/anguyen8/vision- llms-are-blind/blob/main/src/CountingRowsAndColumns/Grids.ipynb.
Table 17: BlindTest consists of 264 empty and text-containing grids. We create equal number of images for each subcategory.
Fig. 40: We create grids with various sizes and line thicknesses. Each grid has a blank (a) and text (b) version.
G.2 Finding: VLMs cannot reliably count neither rows or columns
We expect that counting both rows and columns successfully to be harder for the VLMs, thus we analyze counting the rows and grids individually to see how VLMs perform. As shown in Table 18, VLMs cannot count perfectly either rows or columns alone.
Table 18: Average row and column counting accuracy (%) of VLMs. VLMs perform better at counting columns (70.53% accuracy) than counting rows (60.83%)—both of which are far from the expected 100% accuracy.
G.3 Additional Examples
We show examples of models’ responses to the counting the number of rows and columns task in Figs. 41 and 42.
Fig. 41: Examples from the benchmark show that models consistently fail at counting rows and columns of empty grids. Sonnet-3.5, however, is more consistent in the lower number of rows and columns.
Fig. 42: When text is included in the cells of the grid, the performance of all VLMs improves, especially Sonnet-3.5.
H.1 Benchmark Construction Details
Our subway-like graphs are generated using a set of parameters defining the characteristics of the plot.
– Image size: We use two different sizes {512, 1024}px for the images to include various resolutions.
– Grid size: We assume a hypothetical grid on the image that determines the position of the paths. We used an 1818 grid, which means each path segment is of the image size.
– Number of stations: We use four station labels, {A, B, C, D}.
– Starting points: Each station in our maps has three different starting points which are exactly of the image size to one side of the stations.
– Path thickness: We use two line thicknesses, 10 and 20 pixels to have bold and light visualizations of the same path.
– Number of paths: Considering the number of starting points in our setup, each image can include stations from which exactly 1, 2, or 3 paths exit.
We keep generating the images until we have 15 samples for each number of paths which results in 180 images (see Table 19 and Fig. 43).
Code The code is available at https://github.com/anguyen8/vision- llms-are-blind/blob/main/src/SubwayMap/SubwayMap.ipynb
Table 19: We create 2 different image resolutions, and 3 various line widths to have balanced number of colored paths.
Fig. 43: Images in our benchmark (left) have exactly 1, 2, or 3 paths exiting each station. The hypothetical grids (right) are used when generating the paths.
H.2 Additional Examples
We show examples of models’ responses to the counting the number of single-colored connecting paths in Fig. 44.
Fig. 44: VLMs generally fail at images with more intersecting paths. As the number of paths increases, models tend to make an educated guess, especially Gemini-1.5 and Sonnet-3.5.
User: This is a subway map. List out the stations between Chungmuro and Wangsimni.
Gemini-1.5: Here are the stations between Chungmuro and Wangsimni on this map, assuming you’re traveling along the dark blue line:
Sonnet-3.5: Based on the subway map shown, the stations between Chungmuro and Wangsimni are:
Fig. 45: Examples of how VLMs fail on real-world data.
Fig. 46: Examples of how VLMs fail on real-world data.