精华内容
下载资源
问答
  • /** * @description:驼峰与下划线之间互转工具类 * @author:boob * @since:2020/2/9 */ public class CamelCaseUtil { private static final char SEPARATOR = '_'; public CamelC...
    package org.bood.common.utils;
    
    /**
     * <p>
     * 驼峰与下划线之间互转工具类
     * </p>
     * 
     * @author:bood
     * @date:2020/10/16
     */
    public class CamelCaseUtil {
    
        private static final char SEPARATOR = '_';
    
        public CamelCaseUtil() {
        }
    
        /**
         * <p>
         * 转下划线
         * </p>
         *
         * @param s: 
         * @return:java.lang.String
         * @author:bood
         * @date:2020/10/16
         */
        public static String toUnderlineName(String s) {
            if (s == null) {
                return null;
            }
    
            StringBuilder sb = new StringBuilder();
            boolean upperCase = false;
            for (int i = 0; i < s.length(); i++) {
                char c = s.charAt(i);
                boolean nextUpperCase = true;
    
                if (i < (s.length() - 1)) {
                    nextUpperCase = Character.isUpperCase(s.charAt(i + 1));
                }
    
                if ((i >= 0) && Character.isUpperCase(c)) {
                    if (!upperCase || !nextUpperCase) {
                        if (i > 0) sb.append(SEPARATOR);
                    }
                    upperCase = true;
                } else {
                    upperCase = false;
                }
    
                sb.append(Character.toLowerCase(c));
            }
            return sb.toString();
        }
    
        /**
         * <p>
         * 转驼峰
         * </p>
         *
         * @param s: 
         * @return:java.lang.String
         * @author:bood
         * @date:2020/10/16
         */
        public static String toCamelCase(String s) {
            if (s == null) {
                return null;
            }
            s = s.toLowerCase();
            StringBuilder sb = new StringBuilder(s.length());
            boolean upperCase = false;
            for (int i = 0; i < s.length(); i++) {
                char c = s.charAt(i);
                if (c == SEPARATOR) {
                    upperCase = true;
                } else if (upperCase) {
                    sb.append(Character.toUpperCase(c));
                    upperCase = false;
                } else {
                    sb.append(c);
                }
            }
            return sb.toString();
        }
    
        /**
         * <p>
         * 转大写驼峰
         * </p>
         *
         * @param s: 
         * @return:java.lang.String
         * @author:bood
         * @date:2020/10/16
         */
        public static String toCapitalizeCamelCase(String s) {
            if (s == null) {
                return null;
            }
            s = toCamelCase(s);
            return s.substring(0, 1).toUpperCase() + s.substring(1);
        }
    
    }
    

    “混〔IT〕的小学生”的遐想混〔IT〕的小学生 → 热爱编程,喜欢挑战新事物!

    展开全文
  • 磁力链转种子互转工具可以批量把种子转换成磁力链,也可以批量把链力链转换成种子
  • Unicode中文互转工具

    2018-07-20 16:29:56
    Unicode中文互转工具,Unicode中文互转工具,Unicode中文互转工具
  • Opencv和Halcon之间有...1 字符串与HTuple互转 char *pImageName = "D:/data/temp.png"; HTuple hv_path; hv_path = (HTuple)(pImageName); cout << hv_path.S() << endl; string path = hv_path.S()...

    Opencv和Halcon之间有很多数据要转换,特此记录

    1 字符串与HTuple互转

    char *pImageName = "D:/data/temp.png";
    HTuple hv_path;
    hv_path = (HTuple)(pImageName);
    cout << hv_path.S() << endl;
    string path = hv_path.S();
    cout << path<<endl;

    2 double与HTuple互转

    HTuple hv_data;
    hv_data = 10.0;
    double data = hv_path.D();
    cout << data<<endl;

    3 Mat 与 HObject互转,这两个项目经常用,代码来自别的博客,非常感谢。

    Mat 转 HObject

    HObject Cpu_halcon_detect::mat_to_hobject(Mat& image)
    {
    	HObject Hobj = HObject();
    	int hgt = image.rows;
    	int wid = image.cols;
    	int i;
    	//  CV_8UC3  
    	if (image.type() == CV_8UC3)
    	{
    		vector<Mat> imgchannel;
    		split(image, imgchannel);
    		Mat imgB = imgchannel[0];
    		Mat imgG = imgchannel[1];
    		Mat imgR = imgchannel[2];
    		uchar* dataR = new uchar[hgt*wid];
    		uchar* dataG = new uchar[hgt*wid];
    		uchar* dataB = new uchar[hgt*wid];
    		for (i = 0; i < hgt; i++)
    		{
    			memcpy(dataR + wid*i, imgR.data + imgR.step*i, wid);
    			memcpy(dataG + wid*i, imgG.data + imgG.step*i, wid);
    			memcpy(dataB + wid*i, imgB.data + imgB.step*i, wid);
    		}
    		GenImage3(&Hobj, "byte", wid, hgt, (Hlong)dataR, (Hlong)dataG, (Hlong)dataB);
    		delete[]dataR;
    		delete[]dataG;
    		delete[]dataB;
    		dataR = NULL;
    		dataG = NULL;
    		dataB = NULL;
    	}
    	//  CV_8UCU1  
    	else if (image.type() == CV_8UC1)
    	{
    		uchar* data = new uchar[hgt*wid];
    		for (i = 0; i < hgt; i++)
    			memcpy(data + wid*i, image.data + image.step*i, wid);
    		GenImage1(&Hobj, "byte", wid, hgt, (Hlong)data);
    		delete[] data;
    		data = NULL;
    	}
    	return Hobj;
    }

     HObject 转 Mat

     

    Mat Cpu_halcon_detect::hobject_to_mat(HObject Hobj)
    {
    	HTuple htCh = HTuple();
    	HTuple cType;
    	Mat Image;
    	ConvertImageType(Hobj, &Hobj, "byte");
    	CountChannels(Hobj, &htCh);
    	HTuple wid;
    	HTuple hgt;
    	int W, H;
    	if (htCh[0].I() == 1)
    	{
    		HTuple ptr;
    		GetImagePointer1(Hobj, &ptr, &cType, &wid, &hgt);
    		W = (Hlong)wid;
    		H = (Hlong)hgt;
    		Image.create(H, W, CV_8UC1);
    		uchar* pdata = (uchar*)ptr[0].I();
    		memcpy(Image.data, pdata, W*H);
    	}
    	else if (htCh[0].I() == 3)
    	{
    		HTuple ptrR, ptrG, ptrB;
    		GetImagePointer3(Hobj, &ptrR, &ptrG, &ptrB, &cType, &wid, &hgt);
    		W = (Hlong)wid;
    		H = (Hlong)hgt;
    		Image.create(H, W, CV_8UC3);
    		vector<Mat> vecM(3);
    		vecM[2].create(H, W, CV_8UC1);
    		vecM[1].create(H, W, CV_8UC1);
    		vecM[0].create(H, W, CV_8UC1);
    		uchar* pr = (uchar*)ptrR[0].I();
    		uchar* pg = (uchar*)ptrG[0].I();
    		uchar* pb = (uchar*)ptrB[0].I();
    		memcpy(vecM[2].data, pr, W*H);
    		memcpy(vecM[1].data, pg, W*H);
    		memcpy(vecM[0].data, pb, W*H);
    		merge(vecM, Image);
    	}
    	return Image;
    }

    halcon还有一个region的数据结构,项目调试时,如果想显示出来,一个方法是直接保存到本地,还有就是可以用region_to_bin函数转为图像image格式,再显示,还有没有更好的方法?

     

    展开全文
  • C# .net Image转byte[]互转 Image转Base64字符串互转
      /// <summary>
            /// Image转byte[]
            /// </summary>
            /// <param name="image"></param>
            /// <returns></returns>
            public static byte[] ImageToBytes(this Image image)
            {
                ImageFormat format = image.RawFormat;
                using (MemoryStream ms = new MemoryStream())
                {
                    image.Save(ms, ImageFormat.Png);
                    byte[] buffer = new byte[ms.Length];
                    //Image.Save()会改变MemoryStream的Position,需要重新Seek到Begin
                    ms.Seek(0, SeekOrigin.Begin);
                    ms.Read(buffer, 0, buffer.Length);
                    return buffer;
                }
            }
            /// <summary>
            /// Image转Base64字符串
            /// </summary>
            /// <param name="image"></param>
            /// <returns></returns>
            public static string ImageToBase64String(this Image image)
            {
                return Convert.ToBase64String(image.ImageToBytes());
            }
            /// <summary>
            /// Base64字符串转Image
            /// </summary>
            /// <param name="base64"></param>
            /// <returns></returns>
            public static Image Base64StringToImage(this string base64)
            {
                byte[] buffer = Convert.FromBase64String(base64);
                return buffer.BytesToImage();
            }
    
            /// <summary>
            /// Byte[]转Image
            /// </summary>
            /// <param name="buffer"></param>
            /// <returns></returns>
            public static Image BytesToImage(this byte[] buffer)
            {
                MemoryStream ms = new MemoryStream(buffer);
                Image image = Image.FromStream(ms);
                return image;
            }

    C# .net Image转byte[]互转   Image转Base64字符串互转

    C# .net Image转byte[]互转   Image转Base64字符串互转

    展开全文
  • LAB与RGB公式互转 RGB -&gt; Lab空间 Lab空间-&gt; RGB空间 RGB与HSI公式互转 RGB-&gt; HSI空间 HSI空间-&gt;RGB 空间 LAB与RGB公式互转 RGB -&gt; Lab空间 第一步归一化可省略,但归一...

    以下公式皆可直接使用,没有原理介绍!!!


    目录

    LAB与RGB公式互转

    RGB -> Lab空间

    Lab空间-> RGB空间

    RGB与HSI公式互转

    RGB-> HSI空间

    HSI空间->RGB 空间


    LAB与RGB公式互转

    RGB -> Lab空间

    第一步归一化可省略,但归一化让数据聚集程度更好。

    第三步转换到对数空间中原因是在对数空间中三个颜色通道均衡性较好,近似正交,三个通道颜色相关性变小。

     

    Lab空间-> RGB空间

    基本是就是RGB空间->Lab空间的逆过程,最后一步如果没做RGB到Lab的归一化,那么可以省略。


     

    RGB与HSI公式互转

    RGB-> HSI空间

    比较常用的就是以下这种方法,误差和计算速度都比较小。

     

    HSI空间->RGB 空间

    上述过程的逆过程,但是表示过程会稍微复杂一点。分三个H区间来计算。由于H实际取值范围是【0, 2Pi】,分为三个扇区进行计算。这公式与HSI的几何意义有关,这里不做介绍,直接套用就行。

     

    展开全文
  • DumpTxt互转工具

    2018-03-24 22:37:49
    DumpTxt互转工具
  • OpenCV实现Mat与vector,Mat与数组互转

    万次阅读 多人点赞 2018-05-09 17:09:38
    OpenCV实现Mat与vector互转 【尊重原创,转载请注明出处】https://blog.csdn.net/guyuealian/article/details/80253066 1、Mat与vector互转 下面是鄙人实现的Mat与vector互转的方法,需要注意的是vector转Mat时...
  • map与json互转以及map与string互转

    千次阅读 2019-02-13 10:44:55
    map与json互转可以利用fastJson类库或者jackson类库进行转换,map与string互转利用谷歌的guava类库进行转换,guava是一款功能强大的类库工具,感觉每个java开发人员都应熟悉下.. 下面先贴pom依赖, &lt;...
  • 只有日期信息,没有时间信息 LocalTime:表示与时区无关的时间,与LocalDateTime相比,只有时间信息,没有日期信息 ZonedDateTime: 表示特定时区的日期和时间 ZoneId/ZoneOffset:表示时区 与字符串互转 ...
  • 使用FastJson实现bean与json互转,蛇形与驼峰互转 要使用FastJson,先导入jar包或引用依赖 springboot项目引用依赖(version可以是其他版本): <!-- fastjson --> <dependency> <groupId>...
  • 十六进制与ASCII码的互转(C语言)

    万次阅读 多人点赞 2016-02-29 14:38:06
    十六进制与ASCII码的互转(C语言) //函 数 名:CharToHex() //功能描述:把ASCII字符转换为16进制 //函数说明: //调用函数: //全局变量: //输 入:ASCII字符 //返 回:16进制 /**function: CharToHex() ***...
  • 项目开发过程中需要实现日期格式的字符串与日期进行互转,并进行日期的加减操作。 Demo如下: package weiming.lmapp.utils; import java.text.ParseException; import java.text.SimpleDateFormat; import java....
  • CAD表格互转EXCEL插件(CAD和EXCEL表格互转工具)是一款非常方便实用的CAD和EXCEL表格的互转辅助工具。这款CAD表格互转EXCEL插件功能强大,简单易用,使用后可以帮助用户更轻松快捷的进行CAD和EXCEL表格互转操作。目前...
  • python中numpy数组和字符串互转(互转后数据完全一致) 代码: import numpy as np # 创建数组arr arr = np.array([ -1.8264365 ,  -0.6390996 ,   5.1984577]) print('arr',arr) # 数组arr转字符串str...
  • C#时间格式转换为时间戳(互转
  • 一款非常好用的3ds max脚本,可以vray材质与标准材质互转
  • LocalDateTime获取时间戳、LocalDateTime与String互转、Date与LocalDateTime互转(Java8 特性)
  • Qt Demo,需要将字符串与byte数组互转,参考: https://stackoverflow.com/questions/37802575/qt-c-qstring-to-qbytearray-conversion 代码很简单: 1. 字符串转byte数组 QString str = "ABC"; QByteArray ...
  • //NSString 与 NSData 之间的互转 //NSString *str = @"你好"; //NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding]; //NSString *STR = [[NSString alloc]initWithData:data encoding:NSUTF8String
  • 03-颜色空间互转

    2020-04-25 19:32:21
    颜色空间互转简介算法理论介绍颜色空间转换1.RGB与灰度图互转互转公式2.RGB与HSI互转HSI简介互转公式3.RGB与HSV互转HSV简介互转公式总结 简介 图像颜色空间互转在图像处理中应用非常广泛,而且很多算法只对灰度图...
  • 如何将图片和PDF互转?图片和PDF互转应该是我们经常会遇到的事情了,PDF Expert for Mac是功能很强大的PDF软件,下面介绍一下关于PDF Expert for Mac将图片和PDF互转的方法。 PDF Expert for Mac使用方法 1.首先...
  • 本文告诉大家如何将 IRandomAccessStream 和 Stream 互转
  • C# string Stream 互转

    2020-06-22 11:23:11
    这里写自定义目录标题C# string Stream 互转 C# string Stream 互转 byte[] bytes = Encoding.UTF8.GetBytes("我是一条测试数据abc"); MemoryStream mem = new MemoryStream(); for (int i = 0; i < 3; i++) ...
  • struct 互转 xml

    千次阅读 2016-03-02 16:25:42
    struct 结构体 与xml互转
  • javacpp-ffmpeg系列: javacpp-FFmpeg系列之1:视频拉流解码成YUVJ420P,并保存为jpg图片 ...javacpp-FFmpeg系列之3: 图像数据转换(BGR与BufferdImage互转,RGB与BufferdImage互转) 补充: ...
  • 1、将对象转换为JSON格式字符串 JSON.stringify(object) 2、将JSON字符串转换为对象 JSON.parse(jsonString); 更多技术请关注QQ群:636212586

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 19,148
精华内容 7,659
关键字:

互转