一、获取代码方式

获取代码方式1:
完整代码已上传我的资源:【机械仿真】基于matlab水下机器人机械手系统仿真【含Matlab源码 1264期】

获取代码方式2:
通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码。

备注:
订阅紫极神光博客付费专栏,可免费获得1份代码(有效期为订阅日起,三天内有效);

二、简介

理论知识参照:基于重心调节的水下机器人—机械手系统姿态控制技术研究

三、部分源代码

classdef UvmsDynamicspropertiesuvms_kinematics;tau_c;endproperties(Constant)        %% Robot System Parameters% mass of linkm0 = 60; m1 = 4.2;m2 = 1;m3 = 1;% inertia matrix of linkI_0_0 = diag([3.368 3.553 6.244]);I_1_1 = diag([19.11*1e-3 15.56*1e-3  7.54*1e-3]);I_2_2 = diag([13.97*1e-3 24.66*1e-3 12.19*1e-3]);I_3_3 = diag([13.97*1e-3 24.66*1e-3 12.19*1e-3]);%% Gravitational Accelerationg_I = [0; 0; -9.81];       %% Hydrodynamic Effects% fluid densityrho = 1000;% drag coefficientsCd0 = 0.47; % sphereCd1 = 1.1;  % cylinderCd2 = 1.1;  % cylinderCd3 = 1.1;  % cylinderendmethodsfunction obj = UvmsDynamics(uvms_kinematics)if nargin == 1obj.uvms_kinematics = uvms_kinematics;obj.tau_c = zeros(9,1);elseerror('Not enough parameters');endend%% Direct Dynamicsfunction obj = DirectDynamics(obj, vf_I, af_I)   [M, C, Fe] = obj.GetModelParameters(vf_I, af_I);obj.uvms_kinematics.dzeta = M\(obj.tau_c - C - Fe);end%% Model Parametersfunction [M, C, Fe] = GetModelParameters(obj, vf_I, af_I)% generalized velocityv     = obj.uvms_kinematics.v;omega = obj.uvms_kinematics.omega;dq1   = obj.uvms_kinematics.dq(1);dq2   = obj.uvms_kinematics.dq(2);dq3   = obj.uvms_kinematics.dq(3);zeta  = obj.uvms_kinematics.zeta;% rotation matrixR_0_I = obj.uvms_kinematics.get_R_0_I();R_1_0 = obj.uvms_kinematics.get_R_1_0();R_2_1 = obj.uvms_kinematics.get_R_2_1();R_2_0 = obj.uvms_kinematics.get_R_2_0();R_3_0 = obj.uvms_kinematics.get_R_3_0();% coordinate origin[po_1_0, po_2_1, po_3_2] = obj.uvms_kinematics.GetCoordinateOrigin();% position vector of center of mass            [pc_0_0, pc_1_1, pc_2_2, pc_3_3] = obj.uvms_kinematics.GetCenterOfMass();% distance vector between C.M.[dc_1_0, dc_2_0, dc_3_0] = obj.uvms_kinematics.GetDistanceBetweenCM();% radius of vehicler0 = (obj.uvms_kinematics.Lx*obj.uvms_kinematics.Ly*obj.uvms_kinematics.Lz/8)^(1/3);% volume of link[V0, V1, V2, V3] = obj.GetVolume();% inertia matrix of link                        [I_1_0, I_2_0, I_3_0] = obj.GetInertiaMatrix();% added mass matrix[Ia_0_0, Ia_1_0, Ia_2_0, Ia_3_0] = obj.GetAddedMassMatrix();% gravitational accelerationg_0 = R_0_I'*obj.g_I;% fluid velocity & accelerationvf_0 = R_0_I'*vf_I;af_0 = R_0_I'*af_I;%% Coefficients of Derivative of Position Vector % dpA_dq1_1 = obj.S(obj.uvms_kinematics.z_1_0)*R_1_0*pc_1_1;A_dq1_2 = obj.S(obj.uvms_kinematics.z_1_0)*R_1_0*(R_2_1*pc_2_2 + po_2_1);A_dq2_2 = R_1_0*obj.S(obj.uvms_kinematics.y_2_1)*R_2_1*pc_2_2;A_dq1_3 = obj.S(obj.uvms_kinematics.z_1_0)*R_1_0*(R_2_1*(pc_3_3 + po_3_2) + po_2_1);A_dq2_3 = R_1_0*obj.S(obj.uvms_kinematics.y_2_1)*R_2_1*(pc_3_3 + po_3_2);A_dq3_3 = R_1_0*R_2_1*obj.uvms_kinematics.z_2_2;% ddpB_ddq1_1   = obj.S(obj.uvms_kinematics.z_1_0)*R_1_0*pc_1_1;B_dq1sqr_1 = obj.S(obj.uvms_kinematics.z_1_0)^2*R_1_0*pc_1_1;B_ddq1_2   = obj.S(obj.uvms_kinematics.z_1_0)*R_1_0*(R_2_1*pc_2_2 + po_2_1);B_ddq2_2   = R_1_0*obj.S(obj.uvms_kinematics.y_2_1)*R_2_1*pc_2_2;B_dq1sqr_2 = obj.S(obj.uvms_kinematics.z_1_0)^2*R_1_0*(R_2_1*pc_2_2 + po_2_1);B_dq2sqr_2 = R_1_0*obj.S(obj.uvms_kinematics.y_2_1)^2*R_2_1*pc_2_2;B_dq1dq2_2 = 2*obj.S(obj.uvms_kinematics.z_1_0)*R_1_0*obj.S(obj.uvms_kinematics.y_2_1)*R_2_1*pc_2_2;B_ddq1_3   = obj.S(obj.uvms_kinematics.z_1_0)*R_1_0*(R_2_1*(pc_3_3 + po_3_2) + po_2_1);B_ddq2_3   = R_1_0*obj.S(obj.uvms_kinematics.y_2_1)*R_2_1*(pc_3_3 + po_3_2);B_ddq3_3   = R_1_0*R_2_1*obj.uvms_kinematics.z_2_2;B_dq1sqr_3 = obj.S(obj.uvms_kinematics.z_1_0)^2*R_1_0*(R_2_1*(pc_3_3 + po_3_2) + po_2_1);B_dq2sqr_3 = R_1_0*obj.S(obj.uvms_kinematics.y_2_1)^2*R_2_1*(pc_3_3 + po_3_2);B_dq1dq2_3 = 2*obj.S(obj.uvms_kinematics.z_1_0)*R_1_0*obj.S(obj.uvms_kinematics.y_2_1)*R_2_1*(pc_3_3 + po_3_2);B_dq1dq3_3 = 2*obj.S(obj.uvms_kinematics.z_1_0)*R_1_0*R_2_1*obj.uvms_kinematics.z_2_2;B_dq2dq3_3 = 2*R_1_0*obj.S(obj.uvms_kinematics.y_2_1)*R_2_1*obj.uvms_kinematics.z_2_2;%% Jacobian Matrix% angular velocityJ_omega_0 = [zeros(3,3) eye(3) zeros(3,3)];J_omega_1 = [zeros(3,3) eye(3) obj.uvms_kinematics.z_1_0 zeros(3,2)];J_omega_2 = [zeros(3,3) eye(3) obj.uvms_kinematics.z_1_0 R_1_0*obj.uvms_kinematics.y_2_1 zeros(3,1)];J_omega_3 = J_omega_2;% linear velocityJ_v_0 = [eye(3) zeros(3,3) zeros(3,3)];J_v_1 = [eye(3) -obj.S(dc_1_0) A_dq1_1 zeros(3,2)];J_v_2 = [eye(3) -obj.S(dc_2_0) A_dq1_2 A_dq2_2 zeros(3,1)];J_v_3 = [eye(3) -obj.S(dc_3_0) A_dq1_3 A_dq2_3 A_dq3_3];% angular accelerationJ_alpha_dzeta_0 = [zeros(3,3) eye(3) zeros(3,3)];J_alpha_dzeta_1 = [zeros(3,3) eye(3) obj.uvms_kinematics.z_1_0 zeros(3,2)];J_alpha_dzeta_2 = [zeros(3,3) eye(3) obj.uvms_kinematics.z_1_0 R_1_0*obj.uvms_kinematics.y_2_1 zeros(3,1)];J_alpha_dzeta_3 = J_alpha_dzeta_2;J_alpha_zeta_0 = zeros(3,9);J_alpha_zeta_1 = [zeros(3,3) -0.5*obj.S(obj.uvms_kinematics.z_1_0)*dq1 -0.5*obj.S(obj.uvms_kinematics.z_1_0)*omega zeros(3,2)];J_alpha_zeta_2 = [zeros(3,3) -0.5*(obj.S(obj.uvms_kinematics.z_1_0)*dq1+obj.S(R_1_0*obj.uvms_kinematics.y_2_1)*dq2) ...-0.5*obj.S(obj.uvms_kinematics.z_1_0)*(omega-R_1_0*obj.uvms_kinematics.y_2_1*dq2) ...-0.5*(obj.S(R_1_0*obj.uvms_kinematics.y_2_1)*omega-obj.S(obj.uvms_kinematics.z_1_0)*R_1_0*obj.uvms_kinematics.y_2_1*dq1) zeros(3,1)];J_alpha_zeta_3 = J_alpha_zeta_2;% linear accelerationJ_a_dzeta_0 = [eye(3) zeros(3,3) zeros(3,3)];J_a_dzeta_1 = [eye(3) -obj.S(dc_1_0) B_ddq1_1 zeros(3,2)];J_a_dzeta_2 = [eye(3) -obj.S(dc_2_0) B_ddq1_2 B_ddq2_2 zeros(3,1)];J_a_dzeta_3 = [eye(3) -obj.S(dc_3_0) B_ddq1_3 B_ddq2_3 B_ddq3_3];J_a_zeta_0 = [0.5*obj.S(omega) -0.5*obj.S(v) zeros(3,3)];J_a_zeta_1 = [0.5*obj.S(omega) -(0.5*obj.S(v)+obj.S(A_dq1_1)*dq1) ...-(obj.S(A_dq1_1)*omega-B_dq1sqr_1*dq1) zeros(3,2)];J_a_zeta_2 = [0.5*obj.S(omega) -(0.5*obj.S(v)+obj.S(A_dq1_2)*dq1+obj.S(A_dq2_2)*dq2) ...-(obj.S(A_dq1_2)*omega-B_dq1sqr_2*dq1-0.5*B_dq1dq2_2*dq2) ...-(obj.S(A_dq2_2)*omega-B_dq2sqr_2*dq2-0.5*B_dq1dq2_2*dq1) zeros(3,1)];J_a_zeta_3 = [0.5*obj.S(omega) -(0.5*obj.S(v)+obj.S(A_dq1_3)*dq1+obj.S(A_dq2_3)*dq2+obj.S(A_dq3_3)*dq3) ...-(obj.S(A_dq1_3)*omega-B_dq1sqr_3*dq1-0.5*B_dq1dq2_3*dq2-0.5*B_dq1dq3_3*dq3) ...-(obj.S(A_dq2_3)*omega-B_dq2sqr_3*dq2-0.5*B_dq1dq2_3*dq1-0.5*B_dq2dq3_3*dq3) ...-(obj.S(A_dq3_3)*omega-0.5*B_dq1dq3_3*dq1-0.5*B_dq2dq3_3*dq2)];%% Model Parameters% inertia matrix (including added mass)M0 = [J_v_0; J_omega_0]'*([obj.m0*J_a_dzeta_0; obj.I_0_0*J_alpha_dzeta_0] + Ia_0_0*[J_a_dzeta_0; J_alpha_dzeta_0]);M1 = [J_v_1; J_omega_1]'*([obj.m1*J_a_dzeta_1; I_1_0*J_alpha_dzeta_1] + Ia_1_0*[J_a_dzeta_1; J_alpha_dzeta_1]);M2 = [J_v_2; J_omega_2]'*([obj.m2*J_a_dzeta_2; I_2_0*J_alpha_dzeta_2] + Ia_2_0*[J_a_dzeta_2; J_alpha_dzeta_2]);M3 = [J_v_3; J_omega_3]'*([obj.m3*J_a_dzeta_3; I_3_0*J_alpha_dzeta_3] + Ia_3_0*[J_a_dzeta_3; J_alpha_dzeta_3]);M = M0 + M1 + M2 + M3;% vector of Coriolis and centripetal terms (including added mass)C0 = [J_v_0; J_omega_0]'*([obj.m0*J_a_zeta_0; obj.I_0_0*J_alpha_zeta_0+obj.S(J_omega_0*zeta)*obj.I_0_0*J_omega_0]*zeta ...+ Ia_0_0*[J_a_zeta_0*zeta-af_0-obj.S(J_omega_0*zeta)*(J_v_0*zeta-vf_0); J_alpha_zeta_0*zeta-obj.S(J_omega_0*zeta)*J_omega_0*zeta] ...+ [obj.S(J_omega_0*zeta) zeros(3,3); obj.S(J_v_0*zeta-vf_0) obj.S(J_omega_0*zeta)]*Ia_0_0*[J_v_0*zeta-vf_0; J_omega_0*zeta]);C1 = [J_v_1; J_omega_1]'*([obj.m1*J_a_zeta_1; I_1_0*J_alpha_zeta_1+obj.S(J_omega_1*zeta)*I_1_0*J_omega_1]*zeta ...+ Ia_1_0*[J_a_zeta_1*zeta-af_0-obj.S(J_omega_0*zeta)*(J_v_1*zeta-vf_0); J_alpha_zeta_1*zeta-obj.S(J_omega_0*zeta)*J_omega_1*zeta] ...+ [obj.S(J_omega_1*zeta) zeros(3,3); obj.S(J_v_1*zeta-vf_0) obj.S(J_omega_1*zeta)]*Ia_1_0*[J_v_1*zeta-vf_0; J_omega_1*zeta]);C2 = [J_v_2; J_omega_2]'*([obj.m2*J_a_zeta_2; I_2_0*J_alpha_zeta_2+obj.S(J_omega_2*zeta)*I_2_0*J_omega_2]*zeta ...+ Ia_2_0*[J_a_zeta_2*zeta-af_0-obj.S(J_omega_0*zeta)*(J_v_2*zeta-vf_0); J_alpha_zeta_2*zeta-obj.S(J_omega_0*zeta)*J_omega_2*zeta] ...+ [obj.S(J_omega_2*zeta) zeros(3,3); obj.S(J_v_2*zeta-vf_0) obj.S(J_omega_2*zeta)]*Ia_2_0*[J_v_2*zeta-vf_0; J_omega_2*zeta]);C3 = [J_v_3; J_omega_3]'*([obj.m3*J_a_zeta_3; I_3_0*J_alpha_zeta_3+obj.S(J_omega_3*zeta)*I_3_0*J_omega_3]*zeta ...+ Ia_3_0*[J_a_zeta_3*zeta-af_0-obj.S(J_omega_0*zeta)*(J_v_3*zeta-vf_0); J_alpha_zeta_3*zeta-obj.S(J_omega_0*zeta)*J_omega_3*zeta] ...+ [obj.S(J_omega_3*zeta) zeros(3,3); obj.S(J_v_3*zeta-vf_0) obj.S(J_omega_3*zeta)]*Ia_3_0*[J_v_3*zeta-vf_0; J_omega_3*zeta]);C = C0 + C1 + C2 + C3;% vector of external forces (- Fg - Fb - Ff - Fd)vr_1_0_normal = J_v_1*zeta - vf_0 - dot(J_v_1*zeta-vf_0,R_1_0*obj.uvms_kinematics.z_1_1)*R_1_0*obj.uvms_kinematics.z_1_1;vr_2_0_normal = J_v_2*zeta - vf_0 - dot(J_v_2*zeta-vf_0,R_2_0*obj.uvms_kinematics.z_2_2)*R_2_0*obj.uvms_kinematics.z_2_2;vr_3_0_normal = J_v_3*zeta - vf_0 - dot(J_v_3*zeta-vf_0,R_3_0*obj.uvms_kinematics.z_3_3)*R_3_0*obj.uvms_kinematics.z_3_3;Fe0 = [J_v_0; J_omega_0]'*([-obj.m0*g_0+obj.rho*V0*(g_0-af_0); zeros(3,1)] ...+ [pi/2*obj.rho*obj.Cd0*r0^2*norm(J_v_0*zeta-vf_0)*(J_v_0*zeta-vf_0); zeros(3,1)]);Fe1 = [J_v_1; J_omega_1]'*([-obj.m1*g_0+obj.rho*V1*(g_0-af_0); zeros(3,1)] ...+ obj.rho*obj.Cd1*obj.uvms_kinematics.r1*norm(vr_1_0_normal)*...[obj.uvms_kinematics.L1*vr_1_0_normal; 1/2*obj.uvms_kinematics.L1^2*obj.S(R_1_0*obj.uvms_kinematics.z_1_1)*vr_1_0_normal]);Fe2 = [J_v_2; J_omega_2]'*([-obj.m2*g_0+obj.rho*V2*(g_0-af_0); zeros(3,1)] ...+ obj.rho*obj.Cd2*obj.uvms_kinematics.r2*norm(vr_2_0_normal)*...[obj.uvms_kinematics.L2*vr_2_0_normal; 1/2*obj.uvms_kinematics.L2^2*obj.S(R_2_0*obj.uvms_kinematics.z_2_2)*vr_2_0_normal]);Fe3 = [J_v_3; J_omega_3]'*([-obj.m3*g_0+obj.rho*V3*(g_0-af_0); zeros(3,1)] ...+ obj.rho*obj.Cd3*obj.uvms_kinematics.r3*norm(vr_3_0_normal)*...[obj.uvms_kinematics.L3*vr_3_0_normal; 1/2*obj.uvms_kinematics.L3^2*obj.S(R_3_0*obj.uvms_kinematics.z_3_3)*vr_3_0_normal]);Fe = Fe0 + Fe1 + Fe2 + Fe3;end%% Volume of Link (assume neutrally buoyant m = rho*V)function [V0, V1, V2, V3] = GetVolume(obj)
%             V0 = 4/3*pi*(obj.uvms_kinematics.Lx/2)*(obj.uvms_kinematics.Ly/2)*(obj.uvms_kinematics.Lz/2);
%             V1 = pi*obj.uvms_kinematics.r1^2*obj.uvms_kinematics.L1;
%             V2 = pi*obj.uvms_kinematics.r2^2*obj.uvms_kinematics.L2;
%             V3 = pi*obj.uvms_kinematics.r3^2*obj.uvms_kinematics.L3;V0 = obj.m0/obj.rho;V1 = obj.m1/obj.rho;V2 = obj.m2/obj.rho;V3 = obj.m3/obj.rho;end%% Inertia Matrix of Link        % inertia matrix of link 1 2 3 expressed in frame 0function [I_1_0, I_2_0, I_3_0] = GetInertiaMatrix(obj)R_1_0 = obj.uvms_kinematics.get_R_1_0();R_2_0 = obj.uvms_kinematics.get_R_2_0();R_3_0 = obj.uvms_kinematics.get_R_3_0();I_1_0 = R_1_0*obj.I_1_1*R_1_0';I_2_0 = R_2_0*obj.I_2_2*R_2_0';I_3_0 = R_3_0*obj.I_3_3*R_3_0';end%% Added Mass Matrix% added mass matrix of link 0 expressed in frame 0function Ia_0_0 = get_Ia_0_0(obj)          % semi-axis of vehicle (a > b)a = obj.uvms_kinematics.Lx/2;b = (obj.uvms_kinematics.Ly*obj.uvms_kinematics.Lz/4)^(1/2);e = 1 - (b/a)^2;m = 4/3*pi*obj.rho*a*b^2;alpha0 = 2*(1-e^2)/e^3 * (1/2*log((1+e)/(1-e)) - e);beta0  = 1/e^2 - (1-e^2)/(2*e^3) * log((1+e)/(1-e));Ia_0_0 = zeros(6,6);Ia_0_0(1,1) = -alpha0/(2-alpha0)*m;Ia_0_0(2,2) = -beta0/(2-beta0)*m;Ia_0_0(3,3) = -beta0/(2-beta0)*m;Ia_0_0(4,4) = 0;Ia_0_0(5,5) = -1/5 * (b^2-a^2)^2*(alpha0-beta0) / (2*(b^2-a^2)+(b^2+a^2)*(beta0-alpha0)) * m;Ia_0_0(6,6) = -1/5 * (b^2-a^2)^2*(alpha0-beta0) / (2*(b^2-a^2)+(b^2+a^2)*(beta0-alpha0)) * m;end% added mass matrix of link 1 expressed in frame 1function Ia_1_1 = get_Ia_1_1(obj)k1 = obj.rho*pi*obj.uvms_kinematics.r1^2*obj.uvms_kinematics.L1/4;           Ia_1_1 = diag([k1 k1 0 k1*obj.uvms_kinematics.L1^2/3 k1*obj.uvms_kinematics.L1^2/3 0]);end% added mass matrix of link 2 expressed in frame 2function Ia_2_2 = get_Ia_2_2(obj)k2 = obj.rho*pi*obj.uvms_kinematics.r2^2*obj.uvms_kinematics.L2/4;           Ia_2_2 = diag([k2 k2 0 k2*obj.uvms_kinematics.L2^2/3 k2*obj.uvms_kinematics.L2^2/3 0]);end% added mass matrix of link 3 expressed in frame 3function Ia_3_3 = get_Ia_3_3(obj)k3 = obj.rho*pi*obj.uvms_kinematics.r3^2*obj.uvms_kinematics.L3/4;            Ia_3_3 = diag([k3 k3 0 k3*obj.uvms_kinematics.L3^2/3 k3*obj.uvms_kinematics.L3^2/3 0]);end% added mass matrix of link 0 1 2 3 expressed in frame 0function [Ia_0_0, Ia_1_0, Ia_2_0, Ia_3_0] = GetAddedMassMatrix(obj)R_1_0 = obj.uvms_kinematics.get_R_1_0();R_2_0 = obj.uvms_kinematics.get_R_2_0();R_3_0 = obj.uvms_kinematics.get_R_3_0();Ia_0_0 = obj.get_Ia_0_0();Ia_1_1 = obj.get_Ia_1_1();Ia_2_2 = obj.get_Ia_2_2();Ia_3_3 = obj.get_Ia_3_3();Ia_1_0 = zeros(6,6);Ia_1_0(1:3,1:3) = R_1_0*Ia_1_1(1:3,1:3)*R_1_0';Ia_1_0(4:6,4:6) = R_1_0*Ia_1_1(4:6,4:6)*R_1_0';Ia_2_0 = zeros(6,6);Ia_2_0(1:3,1:3) = R_2_0*Ia_2_2(1:3,1:3)*R_2_0';Ia_2_0(4:6,4:6) = R_2_0*Ia_2_2(4:6,4:6)*R_2_0';Ia_3_0 = zeros(6,6);Ia_3_0(1:3,1:3) = R_3_0*Ia_3_3(1:3,1:3)*R_3_0';Ia_3_0(4:6,4:6) = R_3_0*Ia_3_3(4:6,4:6)*R_3_0';endendmethods(Static)       % matrix operator performing cross between two vectorsfunction out = S(x)out = [    0 -x(3)  x(2)x(3)     0 -x(1)-x(2)  x(1)     0];endend
end

四、运行结果






五、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1] 门云阁.MATLAB物理计算与可视化[M].清华大学出版社,2013.

【机械仿真】基于matlab水下机器人机械手系统仿真【含Matlab源码 1264期】相关推荐

  1. 【Matlab生物电信号】生物电信号仿真【含GUI源码 684期】

    一.代码运行视频(哔哩哔哩) [Matlab生物电信号]生物电信号仿真[含GUI源码 684期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]董兵,超于毅,李 ...

  2. 【Matlab路径规划】改进的遗传算法机器人避障路径规划【含GUI源码 703期】

    一.代码运行视频(哔哩哔哩) [Matlab路径规划]改进的遗传算法机器人避障路径规划[含GUI源码 703期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] ...

  3. 【Matlab通信】DTMF双音多频电话拨号仿真【含GUI源码 805期】

    一.代码运行视频(哔哩哔哩) [Matlab通信]DTMF双音多频电话拨号仿真[含GUI源码 805期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅 ...

  4. 【Matlab语音分析】语音信号分析【含GUI源码 1718期】

    一.代码运行视频(哔哩哔哩) [Matlab语音分析]语音信号分析[含GUI源码 1718期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]韩纪庆,张磊,郑铁 ...

  5. 【Matlab验证码识别】遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别【含GUI源码 1694期】

    一.代码运行视频(哔哩哔哩) [Matlab验证码识别]遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别[含GUI源码 1694期] 二.matlab版本及参考文献 1 matlab ...

  6. 【Matlab人脸识别】BP神经网络人脸识别(含识别率)【含GUI源码 891期】

    一.代码运行视频(哔哩哔哩) [Matlab人脸识别]BP神经网络人脸识别(含识别率)[含GUI源码 891期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] ...

  7. 【Matlab人脸识别】形态学教室人数统计(带面板)【含GUI源码 1703期】

    一.代码运行视频(哔哩哔哩) [Matlab人脸识别]形态学教室人数统计(带面板)[含GUI源码 1703期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]孟 ...

  8. 【Matlab人脸识别】人脸实时检测与跟踪【含GUI源码 673期】

    一.代码运行视频(哔哩哔哩) [Matlab人脸识别]人脸实时检测与跟踪[含GUI源码 673期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]孟逸凡,柳益君 ...

  9. 【Matlab图像融合】小波变换遥感图像融合【含GUI源码 744期】

    一.代码运行视频(哔哩哔哩) [Matlab图像融合]小波变换遥感图像融合[含GUI源码 744期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 包子阳,余 ...

  10. 【Matlab语音加密】语音信号加密解密(带面板)【含GUI源码 181期】

    一.代码运行视频(哔哩哔哩) [Matlab语音加密]语音信号加密解密(带面板)[含GUI源码 181期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]韩纪庆 ...

最新文章

  1. 狂汗!售货员竟遭遇到最彪悍的付款方式(转)
  2. ibatis增删改、批量增删改以及查询
  3. 微软老毛病还没改:Win10版本多达七个 咋选?
  4. 为已创建好的临时表添加字段列
  5. C 语言 普通基本数据类型 以及 其储存形式
  6. python读取有空行的csv_如何在使用python读取CSV文件时跳过空行
  7. 神器:多卡同步的Batch Normalization
  8. 在线html编辑器 asp,(ewebeditor)比较简单好用的ASP网页在线编辑器
  9. 一个简单的优酷视频链接探测与分享功能
  10. Message Authentication Code
  11. linux下安装rabbitMQ和springboot+rabbitMQ使用案例
  12. 【2022.1】电脑重装系统后浏览器密码恢复:Edge需自己打开自动同步,Chrome默认直接同步
  13. VirtualBox虚拟机的网卡地址重复导致的问题
  14. 2021 CNSS招新赛 WEB WP
  15. 扫描仪没有linux 驱动怎么安装,怎么安装没有驱动盘的扫描仪
  16. 如何将RAW格式的磁盘修改为NTFS?教给你三种操作方法
  17. 什么是OSI模型,OSI模型各层的是什么?OSI模型各层的作用是什么?
  18. 什么是Race Condition?
  19. 一文读懂NLP之隐马尔科夫模型(HMM)详解加python实现
  20. 【9008】香甜的黄油

热门文章

  1. [原创]Java开发如何在线打开Word文件
  2. 数据库——MySQL
  3. 工作中,什么情况下应该负责到底?
  4. 对字节输入输出流的理解以及几道练习题
  5. Building a Better Vocabulary: Lecture 1 Five Principles for Learning Vocabulary
  6. 传智播客Java 二维数组
  7. unity 插件 color picker htc手柄控制,扣动扳机生成三维点线
  8. java DefaultMutableTreeNode 树形结构 目录 1. Tree的概念 1 1.1. treeNode接口,mutabletreenode接口 1 1.2. 10-4:以T
  9. Atitit 图像处理知识点体系知识图谱 路线图attilax总结 v4 qcb.xlsx
  10. Atitit. 衡量项目规模 ----包含的类的数量 .net java类库包含多少类 多少个api方法??