-
#include "iostream" using namespace std;
class Matrix
{
private:
double** A; //矩陣A
double *b; //向量b
public:
int size;
Matrix(int );
~Matrix();
friend double* Dooli(Matrix& );
void Input();
void Disp();
};
Matrix::Matrix(int x) {
size=x;
//為向量b分配空間并初始化為0
b=new double [x];
for(int j=0;j<x;j++)
b[j]=0;
//為向量A分配空間并初始化為0
A=new double* [x];
for(int i=0;i<x;i++)
A[i]=new double [x];
for(int m=0;m<x;m++)
for(int n=0;n<x;n++)
A[m][n]=0;
}
Matrix::~Matrix() {
cout<<"正在析構中~~~~"<<endl;
delete b;
for(int i=0;i<size;i++)
delete A[i];
delete A;
}
void Matrix::Disp()
{
for(int i=0;i<size;i++)
{
for(int j=0;j<size;j++)
cout<<A[i][j]<<" ";
cout<<endl;
}
}
void Matrix::Input()
{
cout<<"請輸入A:"<<endl;
for(int i=0;i<size;i++)
for(int j=0;j<size;j++){
cout<<"第"<<i+1<<"行"<<"第"<<j+1<<"列:"<<endl;
cin>>A[i][j];
}
cout<<"請輸入b:"<<endl;
for(int j=0;j<size;j++){
cout<<"第"<<j+1<<"個:"<<endl;
cin>>b[j];
}
}
double* Dooli(Matrix& A) {
double *Xn=new double [A.size];
Matrix L(A.size),U(A.size);
//分別求得U,L的第一行與第一列
for(int i=0;i<A.size;i++)
U.A[0][i]=A.A[0][i];
for(int j=1;j<A.size;j++)
L.A[j][0]=A.A[j][0]/U.A[0][0];
//分別求得U,L的第r行,第r列
double temp1=0,temp2=0;
for(int r=1;r<A.size;r++){
//U
for(int i=r;i<A.size;i++){
for(int k=0;k<r-1;k++)
temp1=temp1+L.A[r][k]*U.A[k][i];
U.A[r][i]=A.A[r][i]-temp1;
}
//L
for(int i=r+1;i<A.size;i++){
for(int k=0;k<r-1;k++)
temp2=temp2+L.A[i][k]*U.A[k][r];
L.A[i][r]=(A.A[i][r]-temp2)/U.A[r][r];
}
}
cout<<"計算U得:"<<endl;
U.Disp();
cout<<"計算L的:"<<endl;
L.Disp();
double *Y=new double [A.size];
Y[0]=A.b[0];
for(int i=1;i<A.size;i++ ){
double temp3=0;
for(int k=0;k<i-1;k++)
temp3=temp3+L.A[i][k]*Y[k];
Y[i]=A.b[i]-temp3;
}
Xn[A.size-1]=Y[A.size-1]/U.A[A.size-1][A.size-1];
for(int i=A.size-1;i>=0;i--){
double temp4=0;
for(int k=i+1;k<A.size;k++)
temp4=temp4+U.A[i][k]*Xn[k];
Xn[i]=(Y[i]-temp4)/U.A[i][i];
}
return Xn;
}
int main()
{
Matrix B(4);
B.Input();
double *X;
X=Dooli(B);
cout<<"~~~~解得:"<<endl;
for(int i=0;i<B.size;i++)
cout<<"X["<<i<<"]:"<<X[i]<<" ";
cout<<endl<<"呵呵呵呵呵";
return 0;
}
標簽:
道理特分解法
上傳時間:
2018-05-20
上傳用戶:Aa123456789
-
AR0231AT7C00XUEA0-DRBR(RGB濾光)安森美半導體推出采用突破性減少LED閃爍 (LFM)技術的新的230萬像素CMOS圖像傳感器樣品AR0231AT,為汽車先進駕駛輔助系統(ADAS)應用確立了一個新基準。新器件能捕獲1080p高動態范圍(HDR)視頻,還具備支持汽車安全完整性等級B(ASIL B)的特性。LFM技術(專利申請中)消除交通信號燈和汽車LED照明的高頻LED閃爍,令交通信號閱讀算法能于所有光照條件下工作。AR0231AT具有1/2.7英寸(6.82 mm)光學格式和1928(水平) x 1208(垂直)有源像素陣列。它采用最新的3.0微米背照式(BSI)像素及安森美半導體的DR-Pix?技術,提供雙轉換增益以在所有光照條件下提升性能。它以線性、HDR或LFM模式捕獲圖像,并提供模式間的幀到幀情境切換。 AR0231AT提供達4重曝光的HDR,以出色的噪聲性能捕獲超過120dB的動態范圍。AR0231AT能同步支持多個攝相機,以易于在汽車應用中實現多個傳感器節點,和通過一個簡單的雙線串行接口實現用戶可編程性。它還有多個數據接口,包括MIPI(移動產業處理器接口)、并行和HiSPi(高速串行像素接口)。其它關鍵特性還包括可選自動化或用戶控制的黑電平控制,支持擴頻時鐘輸入和提供多色濾波陣列選擇。封裝和現狀:AR0231AT采用11 mm x 10 mm iBGA-121封裝,現提供工程樣品。工作溫度范圍為-40℃至105℃(環境溫度),將完全通過AEC-Q100認證。
標簽:
圖像傳感器
上傳時間:
2022-06-27
上傳用戶:XuVshu
-
CPU:MSP430系列單片機的CPU和通用微處理器基本相同,只是在設計上采用了面向控制的結構和指令系統。MSP430的內核CPU結構是按照精簡指令集和高透明的宗旨而設計的,使用的指令有硬件執行的內核指令和基于現有硬件結構的仿真指令。這樣可以提高指令執行速度和效率,增強了MSP430的實時處理能力。存儲器:存儲程序、數據以及外圍模塊的運行控制信息。有程序存儲器和數據存儲器。對程序存儲器訪問總是以字形式取得代碼,而對數據可以用字或字節方式訪問。其中MSP430各系列單片機的程序存儲器有ROM、OTP、EPROM和FLASH型。外圍模塊:經過MAB、MDB、中斷服務及請求線與CPU相連。MSP430不同系列產品所包含外圍模塊的種類及數目可能不同。它們分別是以下一些外圍模塊的組合:時鐘模塊、看門狗、定時器A、定時器B、比較器A、串口0、1、硬件乘法器、液晶驅動器、模數轉換、數模轉換、端口、基本定時器、DMA控制器等。
標簽:
msp430
單片機
上傳時間:
2022-07-28
上傳用戶:slq1234567890
-
Chipcon CC2420 reference design w/PA board rev B
CC2420_w_PA_PCB.ZIP
FABRICATION.PHO - fabrication drawing
COPPER1.PHO - copper layer #1 (top side)
COPPER2.PHO - copper layer #2 (inner ground plane)
COPPER3.PHO - copper layer #3 (inner power plane)
COPPER4.PHO - copper layer #4 (bottom side)
TOPMASK.PHO - top side solder mask
BOTTOMMASK.PHO - bottom side solder mask
NCDRILL.DRL - drill data file
NCDRILL.LST - drill list
NCDRILL.REP - drill report
標簽:
2420
FABRICATION
reference
fabricati
上傳時間:
2015-05-12
上傳用戶:xc216
-
車牌定位---VC++源代碼程序
1.24位真彩色->256色灰度圖。
2.預處理:中值濾波。
3.二值化:用一個初始閾值T對圖像A進行二值化得到二值化圖像B。
初始閾值T的確定方法是:選擇閾值T=Gmax-(Gmax-Gmin)/3,Gmax和Gmin分別是最高、最低灰度值。
該閾值對不同牌照有一定的適應性,能夠保證背景基本被置為0,以突出牌照區域。
4.削弱背景干擾。對圖像B做簡單的相鄰像素灰度值相減,得到新的圖像G,即Gi,j=|Pi,j-Pi,j-1|i=0,1,…,439 j=0,1,…,639Gi,0=Pi,0,左邊緣直接賦值,不會影響整體效果。
5.用自定義模板進行中值濾波
區域灰度基本被賦值為0??紤]到文字是由許多短豎線組成,而背景噪聲有一大部分是孤立噪聲,用模板(1,1,1,1,1)T對G進行中值濾波,能夠得到除掉了大部分干擾的圖像C。
6.牌照搜索:利用水平投影法檢測車牌水平位置,利用垂直投影法檢測車牌垂直位置。
7.區域裁剪,截取車牌圖像。
標簽:
1.24
256
圖像
閾值
上傳時間:
2013-11-26
上傳用戶:懶龍1988
-
1.24位真彩色->256色灰度圖。
2.預處理:中值濾波。
3.二值化:用一個初始閾值T對圖像A進行二值化得到二值化圖像B。
初始閾值T的確定方法是:選擇閾值T=Gmax-(Gmax-Gmin)/3,Gmax和Gmin分別是最高、最低灰度值。
該閾值對不同牌照有一定的適應性,能夠保證背景基本被置為0,以突出牌照區域。
4.削弱背景干擾。對圖像B做簡單的相鄰像素灰度值相減,得到新的圖像G,即Gi,j=|Pi,j-Pi,j-1|i=0,1,…,439 j=0,1,…,639Gi,0=Pi,0,左邊緣直接賦值,不會影響整體效果。
5.用自定義模板進行中值濾波
區域灰度基本被賦值為0。考慮到文字是由許多短豎線組成,而背景噪聲有一大部分是孤立噪聲,用模板(1,1,1,1,1)T對G進行中值濾波,能夠得到除掉了大部分干擾的圖像C。
6.牌照搜索:利用水平投影法檢測車牌水平位置,利用垂直投影法檢測車牌垂直位置。
7.區域裁剪,截取車牌圖像。
標簽:
Gmax-G
1.24
Gmax
閾值
上傳時間:
2014-01-08
上傳用戶:songrui
-
Floyd-Warshall算法描述
1)適用范圍:
a)APSP(All Pairs Shortest Paths)
b)稠密圖效果最佳
c)邊權可正可負
2)算法描述:
a)初始化:dis[u,v]=w[u,v]
b)For k:=1 to n
For i:=1 to n
For j:=1 to n
If dis[i,j]>dis[i,k]+dis[k,j] Then
Dis[I,j]:=dis[I,k]+dis[k,j]
c)算法結束:dis即為所有點對的最短路徑矩陣
3)算法小結:此算法簡單有效,由于三重循環結構緊湊,對于稠密圖,效率要高于執行|V|次Dijkstra算法。時間復雜度O(n^3)。
考慮下列變形:如(I,j)∈E則dis[I,j]初始為1,else初始為0,這樣的Floyd算法最后的最短路徑矩陣即成為一個判斷I,j是否有通路的矩陣。更簡單的,我們可以把dis設成boolean類型,則每次可以用“dis[I,j]:=dis[I,j]or(dis[I,k]and dis[k,j])”來代替算法描述中的藍色部分,可以更直觀地得到I,j的連通情況。
標簽:
Floyd-Warshall
Shortest
Pairs
Paths
上傳時間:
2013-12-01
上傳用戶:dyctj
-
I wrote this code early this year using ColdFire MCF5213 in codewarrior IDE. The LCD is STN B/W 320x240 dot matrix LCD. The code include 3 different fonts, and basic LCD driver. All original!
標簽:
this
codewarrior
ColdFire
wrote
上傳時間:
2013-12-20
上傳用戶:皇族傳媒
-
替代加密:
A B C D E F G H I J K L M N O P Q R S T U V W 密文
Y Z D M R N H X J L I O Q U W A C B E G F K P 明文
X Y Z
T S V
I HAVE A DREAM!#
密文??
用ARM編程實現替代加密。
標簽:
加密
上傳時間:
2016-07-17
上傳用戶:qq521
-
W.B.Gragg改進的解微分方程組的解法,為改進中點法,并給出解一個方程組得例子。
標簽:
Gragg
微分方程
上傳時間:
2016-09-20
上傳用戶:wangdean1101