简单水印(watermark-dom)和算法水印(频域方式图片合并)实现

简单水印(watermark-dom)和算法水印(频域方式图片合并)实现

 

一、简单水印(watermark-dom)

阿里巴巴内网的不可见水印用的是什么算法? 据说月饼事件截图的那位员工也被开除了?

下面的只是简单的加一个很浅的水印,实现起来很容易。

 

1、看看水印的效果

随便找一个网站,比如就找掘金的个人首页,

(1)F12检查模式,

(2)在console里粘贴下面的代码,

(function(watermark){window.watermarkdivs=[];var loadMark=function(settings){var defaultSettings={watermark_txt:"text",watermark_x:20,watermark_y:20,watermark_rows:0,watermark_cols:0,watermark_x_space:50,watermark_y_space:50,watermark_color:'#000000',watermark_alpha:0.005,watermark_fontsize:'18px',watermark_font:'微软雅黑',watermark_width:150,watermark_height:100,watermark_angle:15,watermark_bg_alpha:0.5};if(arguments.length===1&&typeof arguments[0]==="object"){var src=arguments[0]||{};for(key in src){if(src[key]&&defaultSettings[key]&&src[key]===defaultSettings[key])continue;else if(src[key])defaultSettings[key]=src[key]}}var oTemp=document.createDocumentFragment();if(window.watermarkdivs&&window.watermarkdivs.length>0){document.body.removeChild(document.getElementById("otdivid"));window.watermarkdivs=[]}var page_width=Math.max(document.body.scrollWidth,document.body.clientWidth);var page_height=Math.max(document.body.scrollHeight,document.body.clientHeight);var otdiv=document.getElementById("otdivid");if(defaultSettings.watermark_cols==0||(parseInt(defaultSettings.watermark_x+defaultSettings.watermark_width*defaultSettings.watermark_cols+defaultSettings.watermark_x_space*(defaultSettings.watermark_cols-1))>page_width)){defaultSettings.watermark_cols=parseInt((page_width-defaultSettings.watermark_x+defaultSettings.watermark_x_space)/(defaultSettings.watermark_width+defaultSettings.watermark_x_space));defaultSettings.watermark_x_space=parseInt((page_width-defaultSettings.watermark_x-defaultSettings.watermark_width*defaultSettings.watermark_cols)/(defaultSettings.watermark_cols-1))}if(defaultSettings.watermark_rows==0||(parseInt(defaultSettings.watermark_y+defaultSettings.watermark_height*defaultSettings.watermark_rows+defaultSettings.watermark_y_space*(defaultSettings.watermark_rows-1))>page_height)){defaultSettings.watermark_rows=parseInt((defaultSettings.watermark_y_space+page_height-defaultSettings.watermark_y)/(defaultSettings.watermark_height+defaultSettings.watermark_y_space));defaultSettings.watermark_y_space=parseInt(((page_height-defaultSettings.watermark_y)-defaultSettings.watermark_height*defaultSettings.watermark_rows)/(defaultSettings.watermark_rows-1))}var x;var y;for(var i=0;i<defaultSettings.watermark_rows;i++){y=defaultSettings.watermark_y+(defaultSettings.watermark_y_space+defaultSettings.watermark_height)*i;for(var j=0;j<defaultSettings.watermark_cols;j++){x=defaultSettings.watermark_x+(defaultSettings.watermark_width+defaultSettings.watermark_x_space)*j;var mask_div=document.createElement('div');mask_div.id='mask_div'+i+j;mask_div.appendChild(document.createTextNode(defaultSettings.watermark_txt));mask_div.style.webkitTransform="rotate(-"+defaultSettings.watermark_angle+"deg)";mask_div.style.MozTransform="rotate(-"+defaultSettings.watermark_angle+"deg)";mask_div.style.msTransform="rotate(-"+defaultSettings.watermark_angle+"deg)";mask_div.style.OTransform="rotate(-"+defaultSettings.watermark_angle+"deg)";mask_div.style.transform="rotate(-"+defaultSettings.watermark_angle+"deg)";mask_div.style.visibility="";mask_div.style.position="absolute";mask_div.style.left=x+'px';mask_div.style.top=y+'px';mask_div.style.overflow="hidden";mask_div.style.zIndex="9";mask_div.style.pointerEvents="none";mask_div.style.opacity=defaultSettings.watermark_alpha;mask_div.style.fontSize=defaultSettings.watermark_fontsize;mask_div.style.fontFamily=defaultSettings.watermark_font;mask_div.style.color=defaultSettings.watermark_color;mask_div.style.textAlign="center";mask_div.style.width=defaultSettings.watermark_width+'px';mask_div.style.height=defaultSettings.watermark_height+'px';mask_div.style.display="block";mask_div.style.fontWeight="900";oTemp.appendChild(mask_div)}};document.body.appendChild(oTemp)};watermark.load=function(settings){window.onload=function(){loadMark(settings)};window.onresize=function(){loadMark(settings)}};watermark.load({watermark_txt:"测试水印,saucxs,测试水印,songEagle,工号等"})})(window.watermark={});
复制代码

(3)改变一下页面窗口大小,然后就可以看到我首页出现如下图的水印,一层浅浅的水印

 

image

 

 

它的作用是在当前页面上增加了一个透明度只有0.005的很多的水印。水印内容“测试水印,saucxs,测试水印,songEagle,工号等”。

 

2、水印的优化

当然是需要使用者不知道这个页面有水印,保证一些信息的安全性以及泄露之后可以追踪到是谁在泄露机密信息,他没有发觉到有水印,所以需要将水印调成透明度很低,这样使用者看不到水印,但是一旦使用者截图将图片发布到互联网上,这时候只需要将图片进行一些简单操作就可以让水印重新显现出来。

只要使用者不知道有水印存在,这样就是从根本上加了水印,信息的源头上加了水印,确保信息的安全,以及泄露之后的追踪。

我们还是拿掘金的个人首页作为试验田。这回我们将水印的透明度调成0.004,水印字体颜色调成页面背景颜色(掘金的是#f4f5f5),然后截图(这回看不出来有水印吧)

 

image

 

 

把图片放到PS,我使用的是ps cs6里面,建一个空白图层在上面,填充为黑色,操作:如图所示背景色选择黑色,然后按shift+f5,选择背景色进行填充。

 

image

 

 

混合模式选择正片叠底这一类的(也就是让亮的更亮,暗的更暗),一个个试。当我试到“实色混合”和“颜色加深”的时候,水印就显示出来了。

哇,吓到我了,原来可以这么玩。

 

3、watermark-dom水印原理分析

通过js向html中一次性添加dom元素,所以我取名叫做watermark-dom,如果一旦知道有这个水印插件,使用者是可以手动将当前页面的水印dom删掉,这样也就是开发人员知道怎么弄,对于其他人员还是不知道如何去掉页面水印的。

3.1关键元素1--pointer-events:none

这个归功于css的属性,准确的说是css3的一个属性pointer-events,本来这个属性的而设计之初是为了--真正意义上的禁用元素,因为设置值为none的时候,这个元素是使用鼠标或者触摸感知不到的,可以称pointer-events为“元素虚化”。

支持浏览器:目前FireFox浏览器,Chrome都支持。Opera以及IE不支持。

该属性的缺点:

1、pointer-events:none影响触屏设备的滚动,如无线端页面等;

2、如果子元素设置了pointer-eventes: auto会导致滚动的时候页面闪动

3.2关键元素2--opacity属性

为什么这么说opacity属性,因为这个属性是对元素进行透明的设置,因为是水印,希望尽量不影响到正常页面的视觉体验。

支持浏览器:所有浏览器都支持 opacity 属性。注意:IE8以及更早的版本支持替代的filter属性。例如:filter:Alpha(opacity=50)。

在设置这个透明度的时候,经过测试发现,水印透明度,要求设置在大于等于0.005,因为比这个低的话,使用ps显现的时候效果不明显。

如果需要去尽量影藏水印,可以把水印的字体颜色和页面的背景颜色调成一致。

如果就要正常显示,尽量设置opactity的时候设置为大于等于0.005,一个性能和显示的平衡点。

 

4、附上watermark-dom完整代码

如果后续更新和优化的时候,源码请看这个watermark-dom里的watermark.js文件

 

5、一个具体的例子

引入这个watermark.js的代码。

html代码

<html><meta charset="utf-8"><meta name="renderer" content="webkit"><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"><script type="text/javascript" src="watermark.js"></script><script type="text/javascript">watermark.load({ watermark_txt: "测试水印,1021002301,测试水印,SDAHJDBJJdjsfsc" });</script><body><div style="width:300px;height:300px;background-color: red; opacity:0.98;" onclick="alert(1);">test</div><div style="width:300px;height:300px;background-color: blue;  opacity:0.9;" onclick="alert(2);">test</div><a href="www.test.com"> baidu</a></body>
</html>
复制代码

效果如下图:

 

image

 

 

6、水印测试工具

写了插件,这个是测试地址

watermark-dom的测试工具

包括,测试,重置,显示,随机,四个部分。

特性:1、测试对水印参数属性,重置水印属性参数,显示此时的水印属性参数,随机产生水印属性参数;

2、水印按钮组是position值fixed,可以浮现在页面之上,不占字节。

3、对系统的各个部分页面进行水印的测试。

 

7、基础使用

7.1本地引入封装的js文件

只是简单的加一个很浅的水印,实现起来很容易。不需要引入jquery插件。

watermark.js是必须要引进的组件

第一步:获取组件方式:git clone https://github.com/saucxs/watermark-dom.git

第二步:clone后,在需要加水印的相关页面引入水印文件"watermark.js":

script type="text/javascript" src="./watermark.js"></script>
复制代码

第三步:在确保页面DOM加载完毕之后,调用watermark的load方法(手动加载):

   <script>watermark.load({ watermark_txt: "测试水印,1021002301,测试水印,100101010111101" })</script>
复制代码

注意:我们提供了init方法,用来初始化水印,添加load和resize事件

   <script>watermark.init({ watermark_txt: "测试水印,1021002301,测试水印,100101010111101" })</script>
复制代码

7.2本地引入封装的js文件

第一步:npm获取水印组件包:

npm install watermark-dom
复制代码

第二步:引入水印模块:

import watermark from 'watermark-dom'
或者
var watermarkDom = require("watermark-dom")
复制代码

第三步:在确保页面DOM加载完毕之后,调用watermark的load方法(手动加载):

   <script>watermark.load({ watermark_txt: "测试水印,1021002301,测试水印,100101010111101" })</script>
复制代码

注意:我们提供了init方法,用来初始化水印,添加load和resize事件

   <script>watermark.init({ watermark_txt: "测试水印,1021002301,测试水印,100101010111101" })</script>
复制代码

 

8、支持各种属性配置使用

watermark_id: 'wm_div_id',          //水印总体的id
watermark_prefix: 'mask_div_id',    //小水印的id前缀
watermark_txt:"测试水印",             //水印的内容
watermark_x:20,                     //水印起始位置x轴坐标
watermark_y:20,                     //水印起始位置Y轴坐标
watermark_rows:0,                   //水印行数
watermark_cols:0,                   //水印列数
watermark_x_space:100,              //水印x轴间隔
watermark_y_space:50,               //水印y轴间隔
watermark_font:'微软雅黑',           //水印字体
watermark_color:'black',            //水印字体颜色
watermark_fontsize:'18px',          //水印字体大小
watermark_alpha:0.15,               //水印透明度,要求设置在大于等于0.005
watermark_width:100,                //水印宽度
watermark_height:100,               //水印长度
watermark_angle:15,                 //水印倾斜度数
watermark_parent_width:0,      //水印的总体宽度(默认值:body的scrollWidth和clientWidth的较大值)
watermark_parent_height:0,     //水印的总体高度(默认值:body的scrollHeight和clientHeight的较大值)
watermark_parent_node:null     //水印插件挂载的父元素element,不输入则默认挂在body上
复制代码

上面的属性都支持配置的,怎么使用呢?

基本山需要自己配置的属性:watermark_txt,watermark_color,watermark_fontsize,watermark_alpha,watermark_anglewatermark_width,watermark_height这7个属性一般是经常用到的,其他属性一般用的偏少。需要用到的就设置一下,不需要用到的就可以不设置,插件内部会有默认值的。

 watermark.load({ watermark_txt:"测试水印,saucxs,测试水印,songEagle,工号等",  //水印的内容watermark_color:'#5579ee',            //水印字体颜色watermark_fontsize:'24px',          //水印字体大小watermark_alpha:0.5,               //水印透明度,要求设置在大于等于0.005watermark_angle:135,                 //水印倾斜度数watermark_width:200,                //水印宽度watermark_height:200,               //水印长度
});
复制代码

这个设置之后后的页面如下图所示:

 

image

 

 

所以一般先在watermark-dom的测试工具上,把需要配置的属性值,调试好之后在写入代码中,这样效率更高。

 

二、复杂(频域方式图片合并水印)

频域方式图片合并水印,意思就是说,从图片编码里进行水印的添加,这样从最根本上解决图片的水印,而且水印的形成之后的图片是用肉眼和PS显示不出来的,只有通过反向编码让水印显示,这样就算是开发人员也不会知道这个图片是否含有水印,只有开发这个系统的人员知道。

 

1、原理分析

 

image

 

 

 

image

 

 

编码的目的有两个:

1、对水印加密,

2、二控制水印能量的分布。

以下是频域方式图片合并水印的实验。

(1)原图像。尺寸300*240 ,汉子一枚,

 

image

 

 

(2)水印照片。

 

image

 

 

(3)水印编码。编码方式采用随机序列编码,通过编码,水印分布到随机分布到各个频率,并且对水印进行了加密。

 

image

 

 

(4)原图像频域。经历的是傅里叶变换,下图变换后的频域图像

 

image

 

 

(5)水印图像频域。经历的是傅里叶变换,下图变换后的频域图像

 

image

 

 

(6)合并水印和原图。之后,将叠加水印的频谱进行傅里叶逆变换,得到叠加数字水印后的图像,,将图像频域和水印编码进行合并。看不出来已经加了水印吧,

实际上,我们是把水印以噪声的形式添加到原图像中。

 

image

 

 

(7)水印图与原图的残差(看不出来残差区别,需要调整对比度才能看得出来)

 

image

 

 

(8)最终的均方差(MSE)和信噪比(PSNR)

 

image

 

 

(9)下图是原图频谱竖过来的样子,其能量主要集中在低频。

那么,为什么频谱发生了巨大的变化,而在空域却变化如此小呢?这是因为我们避开了图像的主要频率。

 

image

 

 

合并之后

 

image

 

 

(10)水印提取是水印叠加的逆过程,

 

image

 

 

(11)提取后,得到水印。

 

image

 

 

2、附上可以还原实验的全部代码(matlab代码)

clc;clear;close all;
alpha = 1;%% read data
im = double(imread('G:\2017学习\Work\图片水印\test.jpg'))/255;
mark = double(imread('G:\2017学习\Work\图片水印\watermark.png'))/255;
figure, imshow(im),title('original image');
figure, imshow(mark),title('watermark');%% encode mark
imsize = size(im);
%random
TH=zeros(imsize(1)*0.5,imsize(2),imsize(3));
TH1 = TH;
TH1(1:size(mark,1),1:size(mark,2),:) = mark;
M=randperm(0.5*imsize(1));
N=randperm(imsize(2));
save('G:\2017学习\Work\图片水印\encode.mat','M','N');
for i=1:imsize(1)*0.5for j=1:imsize(2)TH(i,j,:)=TH1(M(i),N(j),:);end
end
% symmetric
mark_ = zeros(imsize(1),imsize(2),imsize(3));
mark_(1:imsize(1)*0.5,1:imsize(2),:)=TH;
for i=1:imsize(1)*0.5for j=1:imsize(2)mark_(imsize(1)+1-i,imsize(2)+1-j,:)=TH(i,j,:);end
end
figure,imshow(mark_),title('encoded watermark');%% add watermark
FA=fft2(im);
figure,imshow(FA);title('spectrum of original image');
FB=FA+alpha*double(mark_);
figure,imshow(FB); title('spectrum of watermarked image');
FAO=ifft2(FB);
figure,imshow(FAO); title('watermarked image');
%imwrite(uint8(FAO),'watermarked image.jpg');
RI = FAO-double(im);
figure,imshow(uint8(RI)); title('residual');
%imwrite(uint8(RI),'residual.jpg');
xl = 1:imsize(2);
yl = 1:imsize(1);
[xx,yy] = meshgrid(xl,yl);
figure, plot3(xx,yy,FA(:,:,1).^2+FA(:,:,2).^2+FA(:,:,3).^2),title('spectrum of original image');
figure, plot3(xx,yy,FB(:,:,1).^2+FB(:,:,2).^2+FB(:,:,3).^2),title('spectrum of watermarked image');
figure, plot3(xx,yy,FB(:,:,1).^2+FB(:,:,2).^2+FB(:,:,3).^2-FA(:,:,1).^2+FA(:,:,2).^2+FA(:,:,3).^2),title('spectrum of watermark');%% extract watermark
FA2=fft2(FAO);
G=(FA2-FA)/alpha;
GG=G;
for i=1:imsize(1)*0.5for j=1:imsize(2)GG(M(i),N(j),:)=G(i,j,:);end
end
for i=1:imsize(1)*0.5for j=1:imsize(2)GG(imsize(1)+1-i,imsize(2)+1-j,:)=GG(i,j,:);end
end
figure,imshow(GG);title('extracted watermark');
%imwrite(uint8(GG),'extracted watermark.jpg');%% MSE and PSNR
C=double(im);
RC=double(FAO);
MSE=0; PSNR=0;
for i=1:imsize(1)for j=1:imsize(2)MSE=MSE+(C(i,j)-RC(i,j)).^2;end
end
MSE=MSE/360.^2;
PSNR=20*log10(255/sqrt(MSE));
MSE
PSNR
复制代码

 

三、总结

 

1、watermark-dom水印是一个简单的用于dom的水印,简单易上手,支持多选项配置。

 

2、频域方式图片合并水印是一个从图片的编码方式进行合成水印,水印不可见,直接反向编码才可以拿到水印,从最根本上解决了数据安全和数据泄露后的追踪问题。

关注下面的标签,发现更多相似文章

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/24173.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

记录一个制作图片水印的功能

功能介绍 对图片生成图片水印或者文字水印 ,用户可以自定义自己的图片水印 思路就是将文字和图片水印合成到一张图片上面去,前台展示合成效果 后台合成后保存到cos上面,并在数据库保存相关信息,方便用户下次引用 前台样式 后端代码 接参DTO Data public class WatermarkTe…

利用Thumbnilator对图片加文字水印

引言&#xff1a; 最近有给图片添加水印的需求&#xff0c;于是找了Thumbnailator工具&#xff1b;Thumbnailator中可以方便的对图片增加图片水印&#xff0c;但是在添加文字水印上却没有方法。 版本一&#xff08;未使用Thumbnailator依赖&#xff09;&#xff1a; /*** aut…

数字水印算法

任务背景及简介 随着互联网的普及和数字技术的广泛应用&#xff0c;信息媒体的数字化极大地提高了信息的存取效率, Intenet 的普及又为数字信息在世界范围内的迅速传递开辟了便捷的途径&#xff0c;数字产品变得极大丰富并且传播便捷&#xff0c;但与此同时版权保护问题也日益突…

数字图像中添加水印

实际上,在产品里能够设置密码并且在产品中添加水印是最理想的防盗措施,因为设置密码是为了防止别人剽窃技术或使用产品,而添加水印更多的是一种补救措施,是在他人成功盗取自己技术的前提下,在法律上夺取主动权的砝码。下面来介绍一下如何在MATLAB中实现往数字图像中添加水印效果…

信息隐藏与数字水印技术

1 信息隐藏 1. 1 信息隐藏模型信息隐藏 (Information Hiding)不同于传统的密码学技术。密码技术主要是研究如何将机密信息进行特殊的编码&#xff0c;以形成不可识别的密码形式 (密文 )进行传递&#xff1b;而信息隐藏则主要研究如何将某一机密信息秘密隐藏于另一公开的信息…

给图片加盲水印(数字水印)所有功能免费使用

盲水印是不可见&#xff0c;但实际存在图片中的水印。需通过特殊的技术手段才能获取到水印。 . 一次可以给十张图片加图片水印或文字水印&#xff0c;不限使用次数 . 只能给单张图片解水印且需要原水印图片或水印文字 . 水印密码必须为数字&#xff0c;可设可不设。如设置了…

“数字水印”来临,一波“反ChatGPT”的技术开始冒头 | 星球资讯

数科星球 原创 作者丨数数 编辑丨十里香 ChatGPT爆火&#xff0c;对于这项技术来说&#xff0c;似乎无所不能。从作曲、小说、文章再到编剧&#xff0c;人们这些天为该项技术忙活的不亦乐乎。 但事情很快得到了反转&#xff0c;有些人开始担心这项新的技术会被坏人所利用。而…

微软半日游,和CSDN同学们走进名企

上周三&#xff08;2021-11-24&#xff09;&#xff0c;跟随 CSDN 《新程序员》组织的 "走进名企"活动&#xff0c;和邹欣老师等一众大佬们探访了北京微软亚洲研究院。真是一次令我开眼界的旅程&#xff0c;一起看看~ 作为一个普普通通的北漂程序员来说&#xff0c;大…

Seata 与三大平台携手编程之夏,百万奖金等你来拿

作者&#xff1a;Seata社区 社区简介 Seata 是一款开源的分布式事务解决方案&#xff0c;致力于在微服务架构下提供高性能和简单易用的分布式事务服务。在 Seata 开源之前&#xff0c;Seata 在阿里系内部一直扮演着分布式数据一致性中间件的角色&#xff0c;几乎每笔交易都要…

阿里技术官整合的四大主流中间件笔记,让你高薪摸鱼,不再秃头背锅

RabbitMQ&#xff1a; 优点&#xff1a;轻量&#xff0c;迅捷&#xff0c;容易部署和使用&#xff0c;拥有灵活的路由配置 缺点&#xff1a;性能和吞吐量较差&#xff0c;不易进行二次开发 RocketMQ&#xff1a; 优点&#xff1a;性能好&#xff0c;稳定可靠&#xff0c;有活…

一位微软技术大牛,工作8年的职业经验分享

写在前面 进击的叻叻是小灰的一位朋友&#xff0c;本文整理了他今年9月返校进行校友职场经验分享的内容&#xff0c;从职业选择、职业发展、工作体验和职业认知四个方面&#xff0c;分享自己微软八年职业生涯的经历和感悟。 这篇文章是对当时校友职场经验分享会内容的精炼和补充…

尚硅谷商品汇项目复习文档

项目资料 项目源码&#xff1a;https://gitee.com/HusePanghu/project-SP 项目地址&#xff1a;HusePanghu.SPH 前言 提示&#xff1a;本文档的编撰初衷是用于复习和回顾该项目&#xff0c;而非该项目的教程文档&#xff0c;弊处多多&#xff0c;敬请包涵。欢迎大家在评论区交…

千橡CEO陈一舟5日聊微软入股Facebook和校内网

千橡CEO陈一舟5日聊微软入股Facebook和校内网 http://www.sina.com.cn 2007年11月01日 17:50 新浪科技 千橡集团董事长兼CEO陈一舟(新浪科技配图) 新浪科技讯 11月1日消息&#xff0c;千橡集团董事长兼CEO陈一舟将于11月5日10:30做客新浪科技白银时代&#xff0c;届时他将就微…

今天面了个阿里秒杀项目组的,见识到了基础天花板被震撼到了

在京东工作了8年&#xff0c;工作压力大&#xff0c;节奏快&#xff0c;但是从技术上确实得到了成长&#xff0c;尤其是当你维护与大促相关的系统的时候&#xff0c;熬到P7也费了不少心思&#xff0c;小编也是个爱学习的人&#xff0c;把这几年的工作经验整理成了一份完整的笔记…

互联网暴力裁员,唯有神技面试八股文手册,能助各位码农突破囧境

很多人都说今年对于IT行业根本没有所谓的“金三银四”“金九银十”。在各大招聘网站或者软件上不管是大厂还是中小公司大多都是挂个招聘需求&#xff0c;实际并不招人&#xff1b;在行业内的程序员基本都已经感受到了任老前段时间口中所谓的“寒气”。 虽然事实确实是如此&…

27位技术实战派负责人齐聚 深聊降本增效 你一定不想错过!

倒计时6天&#xff0c;11月4日 杭州云栖大会-探索增长动能峰会即将启动 阿里巴巴集团CTO线&#xff06;阿里云智能互联网行业线& ​阿里云智能基础产品事业部联合出品 27位技术实战派负责人齐聚 共同深入讨论企业降本增效的话题 欢迎一起来 看点 1&#xff1a;27位实战…

商汤科技推出“日日新SenseNova”,大模型体系赋能人工智能新未来

2023年4月10日&#xff0c;商汤科技SenseTime技术交流日活动在上海举行&#xff0c;分享了以“大模型大算力”推进AGI&#xff08;通用人工智能&#xff09;发展的战略布局&#xff0c;并公布了商汤在该战略下的“日日新SenseNova”大模型体系。 公开信息显示&#xff0c;商汤科…

AI抢饭碗成真!近500家美国企业用ChatGPT取代员工,有公司省下超10万美元

Alex 发自 凹非寺量子位 | 公众号 QbitAI 自从ChatGPT掀起浪潮&#xff0c;不少人都在担心AI快要抢人类饭碗了。 然鹅&#xff0c;现实可能更残酷QAQ...... 据就业服务平台Resume Builder调查统计&#xff0c;在1000多家受访美国企业中&#xff0c;用ChatGPT取代部分员工的&…

阿里CEO下令所有产品接入大模型!钉钉对标微软Office,已解锁近10项新功能

丰色 发自 凹非寺量子位 | 公众号 QbitAI “阿里版GPT”通义千问邀测没过几天—— 今天&#xff0c;在2023阿里云峰会现场&#xff0c;CEO张勇就宣布&#xff1a; 阿里巴巴所有产品未来都将接入“通义千问”大模型&#xff0c;进行全面改造。 与此同时&#xff0c;通义千问的能…

GPT-3核心成员出走打造ChatGPT最强竞品!12项任务8项更强,最新估值50亿美元

衡宇 萧箫 发自 凹非寺量子位 | 公众号 QbitAI 因不满老东家成为微软附庸&#xff0c;11名OpenAI前员工怒而出走。 如今带着“ChatGPT最强竞品”杀回战场&#xff0c;新公司估值50亿美元&#xff0c;一出手就获得3亿美元融资。 这家公司名叫Anthropic&#xff0c;新推出的聊天机…