基于OPENCV的字符表情的制作

本文介绍了一个使用OpenCV将彩色图像转换为字符表情的小程序。该程序通过调整图像大小、转换为灰度图、二值化处理等步骤,最终生成包含特定字符的文本文件来模拟原始图像。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这是一个简单有趣的小程序(其实笔者很早就像实现一下)基于opencv的字符表情制作,这里主要的思路是:

  1. 将图片进行一定的调整大小,由于用txt中单个字符比较大大约一行只能打大约一百169个字符,所以图像的列数不能超过169(为了更好地感受到视觉效果,建议在添加图片之前将图片进行裁剪);
  2. 将图像进行转换由RGB的彩图转换为GRAY的灰度图;
  3. 将灰度图用threshold函数进行二值转换;
  4. 创建并打开一个.txt文件
  5. 对二值图片进行遍历当二值图片中的像素为空是”“,在文件中写入空格,否则写入”#“(当然也可以是别的字符);
  6. 关闭txt
    其中threshold共有需5个变量分别为原图像,转换后保存的图像,过滤掉最大以及最小阈值的值,以及阈值类型:CV_THRESH_BINARY 和 CV_THRESH_BINARY_INV
#include<opencv2\highgui\highgui.hpp>
#include<opencv.hpp>
#include<iostream>
#include<cv.h>
#include<stdio.h>
#include<stdlib.h>

using namespace cv;
using namespace std;

int main()
{
    Mat src;
    src = imread("1.jpg");
    Mat temp = Mat::zeros(100, 100, CV_8UC3);
    resize(src, temp, temp.size());
    Mat dst;
    cvtColor(temp, dst, CV_RGB2GRAY);
    Mat two;
    threshold(dst, two, 100, 255, CV_THRESH_BINARY);
    imshow("two", two);
    int u = two.rows;
    int v = two.cols;
    FILE* fp;
    fp=fopen("1.txt", "w");
    for (int i = 0; i < two.rows; i++)
    {
        for (int j = 0; j < two.cols; j++)
        {

            if (two.at<char>(i, j) == -1)
                fprintf(fp, " ");
            else
                fprintf(fp, "#");
        }
        fprintf(fp, "\n");
    }

    fclose(fp);
    waitKey();

}

下面是测试的图片及效果:
这里写图片描述










                                                                                    ###             
                                                                               ########             
                                                                             # #######              
                                                                               ######               
                                                        ## ######       #      ######               
                                                        #          ####       ######                
                                                        #           #         #####                 
                                                        #         ##          ###                   
                                                                 #            ####                  
                                                         #     #             ##    ##               
                                                         #   ##              #        ##            
                  #          #                           #  ##              #            #          
              #####                                      ###              ##                        
            #######                                        #             ##                         
           #########                                                    ##                          
            ########                                                   #                       #    
              #######                                                ###                            
                ######                                             ###                              
                  #####                                          ##                                 
                     ###          #                              #                           #      
                         #        #    ###                       #                          #       
                         #        #   ##  #                #      #                                 
                            #        ###  #              #  ##    #                        #        
                       #     #   #   ######              #  ##    #                       #         
                      #          #    ####               #  ##    #                                 
                      #                #                 #####    #                      #          
                      #         #                         ###     ###                   #           
                                # ##                              ##  #                             
                                #####            #                ##    #              #            
                                ######         ####               ###     #           #             
                               #######      #########             # #       #                       
                               ########     ####   ####      ###### #         #      #              
                               ########     ##      ###     #######  #          #                   
                               ########     #        #      #######  #             #                
                               #######               #      #######  #                              
                                ######       #       #     ########   #                             
                        #        ####        #      #       #######   #                             
                        #        #            #     #       #######   #                             
                                 #            #    #        ######## #                              
                         #        #            #  #          ####   ##                              
                         #                      ##              #                                   
                          #        #                           #        #                           
                          #         #                                     #                         
                           #                                                                        
                           #                                                                        
                            #                                                                       
                                                                               #                    
                             #                                                 #                    
                              #                                                #                    
                              #                                 #             #                     
                                                                #             #                     
                              #                                 ##                                  
                              #                                  #####                              
                              #                                  ####                               
                              #                                  ####                               
                             #                                   ###                                
                             #                                   ###                                
                             #                                   ##                                 
                             #                                   #                                  
                             #                                                                      
                            #                                     #                                 
                            #                                     #                                 
                            #                                     #                                 
                            #                                                                       
                            #                                      #                                
                            #                                      #                                
                                                                   #                                
                                                                   #                                
                           #                                        #                               
                           #                                        #                               
                           #                                        #                               
                                                                    #                               
                            #                                       #                               
                            #                                       #                               
                            #                                      #                                
                            #                                      #                                
                             #                                    #                                 
                              #                 #                 #                                 
                              #      ###                     #     #                                
                             #      ##                       ##     #                               
                            #     ##                           #                                    
                            ### ##                                   #                              
                            ##                                       #                              








这里写图片描述











                         #    #  #                                ########                          
                       #  # #####                               ##############                      
                     ## ### #########                         ################                      
                   ####################                      ###################                    
                       ##############                       ######################                  
                   #####################                    ######################                  
                 ########################                  ########################                 
                ##########################                ##########################                
               # #########################                ##########################                
                ##########################                ###########################               
               ############################               ###########################               
               ############################              #############################              
              ##############################             #############################              
               #############################             #############################              
              ##############################             #############################              
              ##############################             ##############################             
               ############################              #######  #####################             
              ##############################            ########   ####################             
              ##############################            #######      ##################             
              ##############################            #######       ###########  ####             
              ################### ##########            #######        ########    ####             
              ##############################            #######          ####      ####             
              ######## #######  #  # ######             #######                    ###              
              #######  # ###### ###########             ########                   ###              
              ########## # ####  #  ## ####             ####### #                  ###              
              ####### ## # ####  ####  ####             #######  #                 ###              
              # ###  ##  ####  ## ###  ####             ######    #               # ##              
                ###     # # #  # #     ##              #  ####     #                ##              
                ### ##                 ###                 ###     ###         #    ##              
               #  #   #               ### #                 ##        #      ##    ###              
               # ##                   ### #           #     ##         ##   #      ###              
                  ##                  # #             #    ###             # #     ## #             
                   #                  ##              #    ###                     ## #             
                   #                   #  #           #   # #                      ##               
               #   #        ##            #                                        #  #             
               #   #        ##            #                                        #  #             
                # ##                 ### #             #   #                       #  #             
                 ####                ####              #  ##                      #   #             
                   ##                ###                ######                    #                 
                   ##               ##                  ######                    #  #              
                 #####              ###                ########                     #               
                # ####             ####                #########                   #                
               # ### ##            ######             ##########                 ##                 
                 #######         ####### #            ###########      #         #                  
                 ##########    ###### ###             ############      ##      ###                 
                ## ############ ##### ### #          #############              ####                
             # #### ####### ######### ##             ##############           #####                 
               ###################### ###  #         ########### #####      #########               
             #  ##################### #### #         ### ############################               
             #  ###########  #######  ###  #         ### ################ ###### ###                
             #  ####################  ####          #### ####################### ### #              
             #  ###################  ###   #        #### ####################### ### #              
             # #### ###################    #        #### ####################### ### #              
             # ## #  ##################             ####  ##########################                
              ### #   ###############               #### ###########################                
              ##    #################                ###  ####### ############### ##                
             ### #  ################  #   #          ###     ##### ############ # #                 
             ##  #############  ###  ##   #          ###       ###  ########### # ###               
           ####  #### ######   ##### ###             ####      ####  ############  ###              
        #################### ####### ### #           ####     ######  ########## #####              
        #  ###### #######################            ####     ########  ########## ####             
       ##  ####### ######################             ####   ###################   ####             
       #   ### #########################               ###  ################## #########            
       #   ### #########################                #################################           
      #         ########################                  ###############################           
      #         ## ############ ########                  ################################          
      ##        ## ######  #############                  ################################          
     ####       ##  ###### #############                   ################################         
      ####      ### ################# ##                   ############################## #         
      ######    ### ####################                  ############################## #          
       ######  ##################### ###                   ###########################  #           
       ###################### #########                   ##########################  #   #         
        ###################### ########                   ######################### #     #         
         ################# ### #######                    ########################       #          
          #######   ##### ####  #####                     #########################    #            
             #      ##########     ##                     ############  ###############             
                    #########    # #                     ############   ####### ####                
                  ##   # #        #                    #   #########            #####               
                 #        ## #                                 #####     #############              
                 ###   #####                                #######        # #########              










评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值