This Opencart tip is to show images for the sub-categories in the Opencart version 2.3, but you can make changes as per the following instructions.
Opencart 2.3
Find the following code at catalog\controller\product\category.php
$data['categories'][] = array( 'name' => $result['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), 'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $result['category_id'] . $url) );
Replace the code with the below code:
$data['categories'][] = array( 'name' => $result['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), 'image' => $this->model_tool_image->resize($result['image'], 100,100), 'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $result['category_id'] . $url) );
Changed is 'image' => $this->model_tool_image->resize($result['image'], 100,100), if you have to increase the size then change 100 to other values.
Find the following code at catalog\view\theme\default\template\product\category.tpl
Replace with the below code
Extra code added is below and there are two places to add the code:
You are set for the default theme, but if you are using a custom theme then you have to manage as per your theme.
Opencart 3 and Opencart 4
Find the following code at catalog\controller\product\category.php
$data['categories'][] = array( 'name' => $result['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), 'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $result['category_id'] . $url) );
Replace the code with the below code:
$data['categories'][] = array( 'name' => $result['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''), 'image' => $this->model_tool_image->resize($result['image'], 100,100), 'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $result['category_id'] . $url) );
Changed is 'image' => $this->model_tool_image->resize($result['image'], 100,100), if you have to increase the size then change 100 to other values.
Find the following code at catalog\view\theme\template\product\category.twig
{% if categories|length <= 5 %}
{% for category in categories %}
-
{{ category.name }}
{% endfor %}
{% else %}
{% for category in categories|batch((categories|length / 4)|round(1, 'ceil')) %}
{% for child in category %}
- {{ child.name }}
{% endfor %}
{% endfor %}
{% endif %}
Replace with the following:
{% if categories|length <= 5 %}
{% for category in categories %}
-
{% if category.image %}
{% endif %}
{{ category.name }}
{% endfor %}
{% else %}
{% for category in categories|batch((categories|length / 4)|round(1, 'ceil')) %}
{% for child in category %}
-
{% if child.image %}
{% endif %}
{{ child.name }}
{% endfor %}
{% endfor %}
{% endif %}
The following are codes added in the above
{% if category.image %}
{% endif %}
And
{% if child.image %}
{% endif %}
With the above changes now you can see images for the sub-categories, for example:

By changing like above code, you can show images for the sub-categories on the category page of Opencart