用c#怎么编写出图像预览

用c#怎么编写出图像预览,第1张

建一文本框显示文件路径 textBox1 按钮Button1浏览 一个打开文件对话框 openFileDialog1,一个预览的pictureBox1

Button1_click()

{

openFileDialog1ShowDialog()

}

openFileDialog1 的fileOK事件:

openFileDialog1_FileOk(object sender, CancelEventArgs e)

{

thistextBox1Text = openFileDialog1FileName;

pictureBox1ImageLocation = openFileDialog1FileName;

}

问题一:电脑上的jpg无法显示预览怎么办 其实你应该点击“搜索答案”,我就这么找到的,结果试了一下,可以实现。

“右击我的电脑点属性-出现系统窗口-窗口左上方找高级系统设置&qu骇t;-出现系统属性窗口-点高级-性能设置-有一个显示缩略图,而不是显示图标 在前面把勾打上-应用-确定,就好了~”

问题二:电脑里的没有预览了怎么办? windows xp的预览功能,对应的控件文件为 thurnbvwdll。 如果该功能损坏,可在“开始”里面选“运行”, 在框中输人: regsvr32 thurnbvw dll ,单击“确定”执行命令,这时就会d出提示框: dllregisterserver in thumbvwdll succeeded ,这表明控件注册成功。重新启动电脑,windowsxp 的预览功能便恢复了。

问题三:U盘“没有预览”是怎么回事 损坏了 只能重新去复制原文件了 今天 刚从一个电脑城 偿U盘的人那里得知 一个答案 就是 U盘 上面的文件如果出现 无法打开 的情况的话 那就应该 怀疑你的U盘的质量了 如果你的U盘 买的时候 他告诉你是水货的话 一是贪图便宜 也买了 现在 我告诉你 这个U盘 的实际容量没有标注的那么大 4G的可能是1G的刷出来了 8G的也可能是2G的刷出来的 这都不好说 这样的U盘 没有实际那么大的容量 一旦存储的东西到达其真实容量后 再存的话 就会出现数据随坏的问题了 所以 楼主 以后买U盘的时候 要注意了

问题四:我的电脑怎么没有了预览的功能 这个缩略图问题我也碰到过,首先是打开工具下面的文件夹选项->查看->以缩略图形式显示文件图标 这个要勾上

当然有可能这样也不行,我就是不行,在计算机上(我的电脑)右键 属性 然后高级系统设置的高级里 有个性能,点设置,把里面的显示缩略图而不是现实图标勾上就行了。

浏览这个,你只要在打开方式里把选择默认程序里的windows 照片库 选中并勾上始终使用选择的程序打开文件就行了。

问题五:生成不了预览怎么解决? 你在查看的时候选择缩略图,在试试!

祝你好运!

1、

恢复预览功能: Windows XP的预览功能,对应的控件文件为 thurnbvwdll。 如果该功能损坏,可单击“开始”一“运行” , 在“打开”框中输人: Regsvr32 Thurnbvw dll ,单击“确定”执行命令,这时就会d出提示框: DllRegisterServer in Thumbvwdll succeeded ,这表明控件注册成功。重新启动电脑,WindowsXP 的预览功能便恢复

象你这样的现象,可以按照这样的方法

先Regsvr32 /u Thurnbvw dll

然后 Regsvr32 Thurnbvw dll

在重启看看

2、

点开始--运行输入regsvr32 %windir%/system32/shimgvwdll 确定

再看看(如双击不行,就右击选择打开方式--选择程序--用和传真查看器打开)

问题六:没有预览怎么解决 20分 开始骸--控制面板------选择性能信息和工具---调整视觉效果---视觉效果--选择调整为最佳外观---确定

问题七:文件夹中不能预览怎么办 看看文件夹选项――查看――始终显示图标,从不显示缩略图,前面是不是打钩了。

问题八:恢复后无法预览怎么办? 只要分区写入了数据,可能原来文件部分被覆盖,恢复的文件就不正常,建议用修复软件修复试试看。

问题九:下载的打开提示没有预览是怎么回事? 不自动就结束

问题十:电脑上的jpg无法显示预览怎么办 其实你应该点击“搜索答案”,我就这么找到的,结果试了一下,可以实现。

“右击我的电脑点属性-出现系统窗口-窗口左上方找高级系统设置&qu骇t;-出现系统属性窗口-点高级-性能设置-有一个显示缩略图,而不是显示图标 在前面把勾打上-应用-确定,就好了~”

把按照规定的比例压缩,然后保存至FTP,列表读取缩略图,单击显示原图。

/

      压缩方法一(高质量)

      @param oldFile 将要压缩的

      @param width 压缩宽

      @param height 压缩高

      @param smallIcon 压缩后,添加的扩展名(在后缀名前添加)

      @param quality 压缩质量 范围:<i>00-10</i> 高质量:<i>075</i> 中等质量:<i>05</i> 低质量:<i>025</i>

      @param percentage 是否等比压缩 若true宽高比率将将自动调整

     /

    public static void compressImage(String oldFile, int width, int height, String smallIcon,

            float quality, boolean percentage) {

        try {

            File file = new File(oldFile);

            

            // 验证文件是否存在

            if(!fileexists())

                throw new FileNotFoundException("找不到原!");

            

            // 获取信息

            BufferedImage image = ImageIOread(file);

            int orginalWidth = imagegetWidth();

            int orginalHeight = imagegetHeight();

            

            // 验证压缩信息

            if (width <= 0 || height <= 0 || !Patternmatches("^[1-9]\\d$", StringvalueOf(width))

                    || !Patternmatches("^[1-9]\\d$", StringvalueOf(height)))

                throw new Exception("压缩后的高宽有误!");

            

            // 等比压缩

            if (percentage) {

                double rate1 = ((double) orginalWidth) / (double) width + 01;

                double rate2 = ((double) orginalHeight) / (double) height + 01;

                double rate = rate1 > rate2  rate1 : rate2;

                width = (int) (((double) orginalWidth) / rate);

                height = (int) (((double) orginalHeight) / rate);

            }

            

            // 压缩后的文件名

            String filePrex = oldFilesubstring(0, oldFilelastIndexOf(''));

            String newImage = filePrex + smallIcon + oldFilesubstring(filePrexlength());

            // 压缩文件存放位置

            File savedFile = new File(newImage);

            // 创建一个新的文件

            savedFilecreateNewFile();

            // 创建原图像的缩放版本

            Image image2 = imagegetScaledInstance(width, height, ImageSCALE_AREA_AVERAGING);

            // 创建数据缓冲区图像

            BufferedImage bufImage = new BufferedImage(width, height, BufferedImageTYPE_INT_RGB);

            // 创建一个Graphics2D

            Graphics2D g2 = bufImagecreateGraphics();

            // 重绘图像

            g2drawImage(image2, 0, 0, width, height, null);

            g2dispose();

            

            // 过滤像素矩阵

            float[] kernelData = { 

                    -0125f, -0125f, -0125f, 

                    -0125f, 2, -0125f, -0125f, 

                    -0125f, -0125f };

            Kernel kernel = new Kernel(3, 3, kernelData);

            

            // 按核数学源图像边缘的像素复制为目标中相应的像素输出像素

            ConvolveOp cOp = new ConvolveOp(kernel, ConvolveOpEDGE_NO_OP, null);

            // 转换像素

            bufImage = cOpfilter(bufImage, null);

            FileOutputStream out = new FileOutputStream(savedFile);

            JPEGImageEncoder encoder = JPEGCodeccreateJPEGEncoder(out);

            JPEGEncodeParam param = encodergetDefaultJPEGEncodeParam(bufImage);

            // 设置压缩质量

            paramsetQuality(quality, true);

            encoderencode(bufImage, param);

            outclose();

            Systemoutprintln(newImage);

        } catch (Exception e) {

            eprintStackTrace();

            Systemoutprintln("压缩失败!" + egetMessage());

        }

    }

数据是通过感光涂层所显示的图像数据来刷到surface view上面的。

数字相机是一种新型的图像输入设备,它与传统照相机的原理相同,是根据物体离开凸透镜的距离大于两倍焦距时,凸透镜成倒立缩小的实像的原理制成的,只是它把外界物体的实像感光到照相机内部的感光芯片上,经过数字处理后,直接存储到照相机的存储媒介上,并可以直接连接到电脑上使用。

1本技术涉及图像处理技术领域,具体涉及视频预览动图生成方法、装置及系统,电子设备。

背景技术:

2短视频具有内容时长短、给受众强刺激点等特点。企业将各种视频短片以各种形式放到互联网上,是达到一定宣传目的的营销推广手段。在庞杂的短视频中,如何吸引用户的注意并产生点击,对短视频投放和引流至关重要。常用的短视频投放方式是,根据短视频的内容,从中提取出具有代表性的片段,并以此作为短视频投放时的封面动图,以吸引用户的注意,从而提升短视频的曝光和点击率。

3目前,主要采用视频摘要提取技术生成短视频的预览动图。一种方式为聚类方式,先对视频分片,然后用聚类算法将其聚类,对每个类选取代表帧拼接。另一种方式为关键帧文本摘要方式,先将视频分为若干个关键帧,可根据用户偏好选取关键帧,然后将关键帧的字幕提取并整合为视频摘要。再一种方式为深度学习方式,先获取视频中运动目标,并使用目标跟踪技术,获取目标运动轨迹,使用深度学习判别目标的分类,然后将运动目标合成为视频快照。

4然而,在实现本发明过程中,发明人发现现有方案至少存在如下问题:1)上述聚类方式无法选出视频中的关键信息,只保留了视频中不同类别的画面帧,并不能提取出视频中用户感兴趣的某个镜头的视频片段;2)上述文本摘要方式只是生成了文本摘要,对用户的吸引程度有限;3)上述深度学习方式,适合监测领域查找运动目标,并不适用于短视频摘要。综上所述,现有技术存在无法生成具有较高代表性的短视频预览动图的问题。

技术实现要素:

5本技术提供视频预览动图处理方法,以解决现有技术存在的无法生成具有较高代表性的视频预览动图的问题。本技术另外提供视频预览动图处理装置和系统,电子设备。

6本技术提供一种视频预览动图处理方法,包括:获取所述待处理视频;将所述待处理视频划分为多个视频段;获取所述视频段对应的字幕文本、图像数据和音频数据;根据所述字幕文本、图像数据和音频数据,确定所述视频段中的视频帧对应于字幕、图像、音频维度的质量分;根据视频帧的所述质量分,确定所述视频段的关键帧;根据所述多个视频段对应的多个关键帧,生成待处理视频的预览动图。

7可选的,所述将所述待处理视频划分为多个视频段,包括:将所述待处理视频划分为多个镜头片段。

8可选的,所述根据所述多个视频段对应的多个关键帧,生成待处理视频的预览动

图,包括:根据所述关键帧的相邻视频帧,形成所述镜头片段的关键帧片段;根据镜头顺序,将关键帧片段组成所述预览动图。

9可选的,所述根据视频帧的所述质量分,确定所述视频帧的关键帧,包括:根据所述镜头片段的时长,确定所述镜头片段的关键帧数量;根据所述质量分和关键帧数量,从所述镜头片段中选取关键帧。

10可选的,所述根据所述多个视频段对应的多个关键帧,生成待处理视频的预览动图,包括:以不同于所述待处理视频的编码格式,对所述关键帧进行编码;根据编码后的关键帧,生成所述预览动图。

11可选的,还包括:发布所述待处理视频和所述预览动图。

12可选的,所述根据所述字幕文本、图像数据和音频数据,确定所述视频段中的视频帧对应于字幕、图像、音频维度的质量分,包括:根据所述视频帧对应的字幕文本、图像数据和音频数据,确定所述视频帧的图像质量得分、视频主体表达度、音频得分;根据所述图像质量得分、视频主体表达度和音频得分,确定所述质量分。

13可选的,还包括:根据所述字幕文本,确定至少一个视频主体;根据所述视频主体在所述字幕文本中的出现次数,确定所述视频主体的权重。

14可选的,所述根据所述图像质量得分、视频主体表达度和音频得分,确定所述质量分,包括:确定与图像质量得分对应的第一权重、与视频主体表达度对应的第二权重和与音频得分对应的第三权重的多组权重组合;确定各组权重组合下的所述质量分;根据各组权重组合下的所述质量分,确定各组权重组合下的关键帧;根据多组权重组合下的关键帧,生成待处理视频的多个预览动图。

15可选的,还包括:通过聚类算法,将所述多个预览动图分为多个类;从各类动图中选取目标预览动图。

16可选的,所述音频得分,采用如下方式确定:确定所述音频数据的能量值;根据所述能量值,确定所述音频得分。

17可选的,所述视频主体表达度,采用如下方式确定:获取视频主体在视频帧图像中的面积占比和/或图像位置;获取视频主体在所述字幕文本中的出现次数;根据所述面积占比、所述图像位置和/或所述出现次数,确定所述表达度。

18可选的,所述图像质量得分,采用如下方式确定:根据所述图像数据,确定视频帧图像的各个色彩区域对应的视频主体权重;

至少根据所述权重,确定图像美观度,作为所述图像质量得分。

19可选的,还包括:获取与所述视频帧对应的音频片段,多个视频帧对应一个音频片段;所述根据所述字幕文本、图像数据和音频数据,确定所述视频段中的视频帧对应于字幕、图像、音频维度的质量分,包括:根据所述视频帧对应的字幕文本、图像数据和音频片段,确定所述视频帧的所述质量分。

20本技术还提供一种视频预览动图处理装置,包括:视频获取单元,用于获取所述待处理视频;视频划分单元,用于将所述待处理视频划分为多个视频段;多模态数据获取单元,用于获取所述视频段对应的字幕文本、图像数据和音频数据;视频帧评分单元,用于根据所述字幕文本、图像数据和音频数据,确定所述视频段中的视频帧对应于字幕、图像、音频维度的质量分;关键帧确定单元,用于根据视频帧的所述质量分,确定所述视频段的关键帧;动图生成单元,用于根据所述多个视频段对应的多个关键帧,生成待处理视频的预览动图。

21本技术还提供一种电子设备,包括:处理器和存储器;存储器,用于存储实现上述方法的程序,该设备通电并通过所述处理器运行该方法的程序。

22本技术还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各种方法。

23本技术还提供一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各种方法。

24与现有技术相比,本技术具有以下优点:本技术实施例提供的视频预览动图处理方法,通过将待处理视频划分为多个视频段;基于视频帧的字幕数据、音频数据和图像数据,对视频帧进行质量评分;根据视频帧的质量得分,确定各视频段的关键帧;根据多个视频段对应的多个关键帧,生成待处理视频的预览动图。采用这种处理方式,使得以视频段为单位选取关键视频帧,并基于视频帧的多模态数据综合考量各个视频帧,生成的预览动图包括多个视频段的关键帧,因此预览动图的内容更为全面,且预览动图中的关键帧对视频的代表性更强。

附图说明

25图1本技术提供的视频预览动图处理方法的实施例的应用场景示意图;图2本技术提供的视频预览动图处理方法的实施例的流程示意图;图3本技术提供的视频预览动图处理方法的实施例的具体流程示意图;图4本技术提供的视频预览动图处理方法的实施例的关键帧处理示意图;图5本技术提供的视频预览动图处理方法的实施例的短视频投放示意图;图6本技术提供的视频预览动图处理装置的实施例的示意图。

具体实施方式

26在下面的描述中阐述了很多具体细节以便于充分理解本技术。但是本技术能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本技术内涵的情况下做类似推广,因此本技术不受下面公开的具体实施的限制。

27在本技术中,提供了视频预览动图生成方法、装置及设备。为了便于直观的理解本技术提供的视频预览动图处理方法,下面首先对其应用场景进行简要说明,然后在各实施例中逐一对各种方案进行详细说明。

28请参考图1,其为本技术提供的视频预览动图处理方法的实施例的应用场景示意图。在本实施例中,待处理视频为短视频,短视频创作到投放的链路的主要过程是,短视频的所有者用户根据视频创意制作视频,将制作好的视频投放到网站,如直播平台、电商平台、社交平台、视频平台、短视频平台等,并可对视频投放效果进行跟踪。消费者用户可通过用户设备观看短视频。消费者用户面对平台上展示的众多短视频,通常会根据短视频的预览动图,找到其感兴趣的短视频进行观看。本技术提供的方法,根据短视频的内容,自动提取出短视频中具有代表性的片段,并以此作为短视频投放时的封面动图,以吸引用户的注意,并提升点击率。

29第一实施例请参看图2,其为本技术的视频预览动图生成方法的实施例的流程示意图。在本实施例中,所述方法可包括如下步骤:步骤s201:获取待处理视频。

30所述待处理视频,包括但不限于短视频,也可以是较长的视频。所述短视频,可以是带货短视频、广告短视频、教学短视频、剧情短视频、搞笑短视频等。

31以短视频为带货短视频为例,通过带货短视频可以卖很多东西,小到柴米油盐,大到汽车保险,由于带货短视频具有较好的销售效果,因此得到了广泛应用。

32以短视频为广告短视频为例,商家或者厂商为了更好地展示产品的特性,会选择使用短视频的形式进行呈现,虽然不如直播那样的高互动性和直接性,但是相较静态来说省去了一部分的咨询环节,有助于最终的成单。因此,购买合适的产品宣传位并配以短视频有助于提升产品的到达率并促成最终的转化。

33在本实施例中,短视频的所有者用户根据视频创意制作视频,通过所述方法为该短视频生成预览动图。

34步骤s203:将待处理视频划分为多个视频段。

35本技术实施例提供的方法,将待处理视频划分为多个视频段,以视频段为单位选取代表帧进行拼接,得到预览动图。

36在一个示例中,步骤s203可采用如下方式实现:将所述待处理视频划分为多个镜头片段。从视频的内容组成而言,待处理视频由多个场景镜头的视频片段组成,一个镜头是视频中一个连续画面,一个镜头的视频片段可包括多个视频帧,同一个镜头场景的视频帧一般变化不大且音效比较相似。通过将视频划分为多个镜头片段,使得生成的预览动图包括各个镜头的代表帧,因此预览动图的内容更为全面。具体实施时,可使用镜头分割算法将待处理视频切分为不同的镜头片段。

37具体实施时,也可以按时长对视频进行划分,如每个视频段为30秒;也可以将视频

划分为固定数量的视频段,如划分为10个视频段。

38步骤s205:获取视频段对应的字幕文本、图像数据和音频数据。

39视频都是由静止的画面组成的,这些静止的画面被称为视频帧。每个视频帧具有对应的图像、字幕和音频,称为视频帧的多模态数据。本技术实施例提供的方法,基于视频帧的多模态数据综合考量各个视频帧,根据多维度考量得到的视频帧质量分来选取各视频段的关键帧,这样关键帧更能表达短视频的关键信息,对视频段的代表性更强。

40所述待处理视频通常为音视频文件,包括图像和声音,可通过音频提取器提取视频中的音频信息。由于音频提取属于较为成熟的现有技术,因此此处不再赘述。

41视频帧是单帧的,音频是一个片段的,因此通常要做音频和视频帧在时间上对齐。在一个示例中,可采用如下方式获取与视频帧对应的音频数据:获取与待处理视频的视频帧对应的音频片段,多个视频帧对应一个音频片段。由于每个视频帧有单独的打分,而音频是分段的,可以将视频帧的时间对应到一个音频段,在音频段的多个视频帧均对应该音频段。

42在一个示例中,字幕文本可采用如下方式获取:识别视频帧中的第一字幕文本,即视频帧画面中显示的字幕;将音频的语音转写文本作为第二字幕文本。具体实施时,可利用文字识别ocr技术将视频帧画面中的字幕提取出来,通过语音识别asr技术将待处理视频的语音转写文本提取出来,作为字幕文本。这样,可以获得更为全面的字幕信息。

43步骤s207:根据字幕文本、图像数据和音频数据,确定视频段中的视频帧对应于字幕、图像、音频维度的质量分。

44本技术实施例提供的方法,可综合考虑视频中音效、图像和字幕的影响,并以此对视频帧进行综合打分,得到视频帧的质量分。具体实施时,可以是根据视频帧图像和字幕文本,对视频帧进行评分;也根据视频帧图像和音频数据,对所述视频帧进行评分;还可以是根据视频帧图像、音频数据和字幕文本,对视频帧进行评分。

45在一个示例中,步骤s207可包括如下子步骤:步骤s2

是不能显示吗?很可能是要么系统中毒,要么CAD的缩略图文件被篡改。这个就需要杀毒了。我遇到过sketchUp不能显示缩略图的问题,是因为缺少一个文件,无法定位,那个文件名称为1,无扩展名,我应该是把它当病毒删掉的,后来用360把Skp强行卸载,并清除所有注册表以后,再重装就好了,估计CAD也有可能这样,你也试一试呢。卸载时一定要把所有残留文件和注册表都删掉!!!

以上就是关于用c#怎么编写出图像预览全部的内容,包括:用c#怎么编写出图像预览、图片没有预览怎么办、java实现图片预览功能,可以显示缩列图,具有上下页的功能求技术支持等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9742573.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存