Skip to content

Instantly share code, notes, and snippets.

@WolfpackWilson
Last active April 12, 2024 05:35
Show Gist options
  • Save WolfpackWilson/22b6a52121e461510e97ba5dc7081499 to your computer and use it in GitHub Desktop.
Save WolfpackWilson/22b6a52121e461510e97ba5dc7081499 to your computer and use it in GitHub Desktop.
A test for creating modular units in OpenCV and placing them in an array.
A test for creating modular units in OpenCV and placing them in an array.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"id": "d25022c1",
"metadata": {},
"outputs": [],
"source": [
"# imports\n",
"import numpy as np\n",
"import cv2\n",
"\n",
"from matplotlib import pyplot as plt\n",
"%matplotlib inline"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "6d8e3e37",
"metadata": {},
"outputs": [],
"source": [
"def add_text(img, shape, text, scale=1, thickness=1, offset=(0,0)):\n",
" \"\"\"Center the text and add it to the image.\"\"\"\n",
" \n",
" font = cv2.FONT_HERSHEY_SIMPLEX\n",
" textsize = cv2.getTextSize(text, font, scale, thickness)[0]\n",
" \n",
" textX = (shape[1] - (textsize[0])) // 2 + offset[0]\n",
" textY = (shape[0] + (textsize[1])) // 2 + offset[1]\n",
" \n",
" cv2.putText(\n",
" img=img, \n",
" text=text, \n",
" org=(textX, textY), \n",
" fontFace=font, \n",
" fontScale=scale, \n",
" color=(0,0,0), \n",
" thickness=thickness\n",
" )\n",
" "
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "db8a38fa",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.image.AxesImage at 0x1b828d50bb0>"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# create a unit\n",
"img = np.ones((300,400,3), dtype='uint8') * 255\n",
"img = cv2.rectangle(img,(0,0),(80,80),(0,0,0),4)\n",
"img = cv2.rectangle(img,(0,0),(405,305),(0,0,0),10)\n",
"\n",
"add_text(img, (80, 80), '100', 1, 2)\n",
"add_text(img, (300, 400), '256', 3, 3)\n",
"add_text(img, (80, 80), '+', 1.5, 2, offset=((320, 220)))\n",
"\n",
"plt.imshow(img)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "de2fb899",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(-0.5, 399.5, 299.5, -0.5)"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# unit without axis\n",
"plt.imshow(img)\n",
"plt.axis('off')"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "2e63ba9e",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(-0.5, 799.5, 599.5, -0.5)"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# unit array\n",
"img = np.concatenate((img, img), axis=0)\n",
"img = np.concatenate((img, img), axis=1)\n",
"\n",
"img = cv2.rectangle(img,(0,0),(400*2,300*2),(0,0,0),10)\n",
"\n",
"plt.imshow(img)\n",
"plt.axis('off')"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.7"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment