
Comments · 小山的 C# 教學-第22課- Array 陣列 · 【C 語言入門】19 - 產生不重複亂數的練習(使用陣列) · SharePoint Basics Beginner Tutorial · 【 C# 】3hours ... ... <看更多>
Search
Comments · 小山的 C# 教學-第22課- Array 陣列 · 【C 語言入門】19 - 產生不重複亂數的練習(使用陣列) · SharePoint Basics Beginner Tutorial · 【 C# 】3hours ... ... <看更多>
想設定一個二維陣列,但一開始還無法知道要有多大的大小, 上網Google了一下,C#好像沒有類似C++的動態記憶體配置, 但是可以先設定小陣列,再 ... ... <看更多>
#1. 多維陣列- C# 程式設計手冊 - Microsoft Learn
例如,下列宣告會建立具有四個資料列和兩個資料行的二維陣列。 C# 複製. int[,] array = new int[4, 2];. 下列宣告會建立三維(4、2 和3) 陣列。 C#
#2. Day17-C#陣列Array、不規則陣列。神啊 - iT 邦幫忙
C# 有提供不規則陣列(二維)的寫法,也就是陣列中可以存放陣列,每一列的長度可以不同,也稱為非矩形陣列。 宣告方法: 資料型別[ ][ ]陣列名稱= new 資料型別[陣列大小][ ].
#3. 二維陣列 - 小豆干就是我唷
建立二維陣列的方法 ... 方法1*/ /*指定維度,建立四列二行的二維int陣列, 可想成建立四樓2戶(每 ... c# 中使用foreach和for遍历一维数组; 二维数组; ...
#4. C#的多維陣列(簡易版) - pupu 的筆記本 - Google Sites
C# 多維陣列有2種,一種是固定陣列,另一種是動態大小(不定長度),宣告也不太一樣。 ... 二維陣列ta.Rank = 2 int[,,] ta[2,4,8]; // 三維陣列ta.Rank = 3. Array.
(1-1) 二維陣列的宣告:. (1-1-1) 不進行初始化的宣告:. 資料型態 ...
Comments · 小山的 C# 教學-第22課- Array 陣列 · 【C 語言入門】19 - 產生不重複亂數的練習(使用陣列) · SharePoint Basics Beginner Tutorial · 【 C# 】3hours ...
一維陣列使用陣列名稱與一個索引值來指定存取陣列元素,二維陣列使用陣列名稱與兩個索引值來指定存取陣列元素,宣告方式與一維陣列類似: int maze[5][10]; ...
#8. 陣列Array的操作 - C# 銳視測控平台| JYTEK Taiwan
陣列(Array)是程式語言中最常用的的數據類型之一, 由於C#語言是Managed程式碼(統一 ... SubtractOffset - 將指定的陣列(一維或二維)減掉指定值.
#9. 在C# 中復制一個二維數組 - Techie Delight
这篇文章将讨论如何在C# 中复制二维数组... 创建数组浅表副本的一个简单直接的解决方案是使用Array.Clone 方法。
#10. (6) C# 陣列Array 使用教學 - Weight遊戲作家- 痞客邦
也可以縮減成這樣 int[] array3 = { 1, 2, 3 };. // 二維陣列(多維陣列) // 第一次看到可能會覺得有點複雜 // 其實他只是在多一個大括弧塞兩個陣列 ...
#11. [C#] 基礎二維矩陣運算(2D Matrix)實作| 記憶裂縫 - - 點部落
二維 矩陣運算實作練習,包括基本加減法、純量乘法、矩陣乘法、行列式、伴隨矩陣、轉置矩陣、反矩陣.
#12. (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#)
4Filename : ArrayDynamicTwoDim.cs. 5Compiler : Visual Studio 2005 / C# 2.0. 6Description : Demo how to dynamic allocate 2 dim array
#13. C# 陣列
C# ,陣列大小可以是固定與動態二種型態,固定大小的陣列若以儲存事件定義好的元素 ... 多維陣列有2維、3維、4維等的陣列型態,2維陣列用來儲存矩陣、2D座標等問題領域 ...
#14. C# 多维数组 - 菜鸟教程
这个如果是从其他语言转来学习C# 可能会和交错数组的概念弄混。 (关于交错数组:http://www.runoob.com/csharp/csharp-jagged-arrays.html). 如果将二维数组 ...
#15. CSP203-範例-C# Array 陣列應用 - HackMD
CSP203-範例-C# Array 陣列應用## 1. ... WriteLine("顯示array2D1 第二維元素值及第二維加總:"); total = 0; index = 0; for (int i = 0; i < array2D1.
#16. 【CSharp】二维数组转一维数组_zhy29563的博客 - CSDN博客
Dump();2. Array.Copyvar one = new double[9];// 数组需要有相同的维数Array.Copy(two, one, one. ... C# 二维数组(2d Array)解析. 最新发布.
#17. (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#) - 博客园
4 Filename : ArrayDynamicTwoDim.cs 5 Compiler : Visual Studio 2005 / C# 2.0 6 Description : Demo how to dynamic allocate 2 dim array
#18. 在C# 中獲取2D 陣列的長度| D棧- Delft Stack
GetLength() 函式的引數來獲取2D 陣列 array2D 的寬度和高度。 使用C# 中的 Array.GetUpperBound() 函式獲取二維陣列的寬度和高度. 在C# 中, Array.
#19. C#陣列原來這麼簡單,你學廢了嗎? - tw511教學網
由具有兩個或多個下標的下標變數所組成的陣列稱為二維陣列或多維陣列,多維陣列元素的下標之間用逗號分隔,如A[2,3]表示是一個二維陣列。 2.
#20. C# Array 陣列- 教學筆記(使用visual studio) - 關於網路那些事...
C# Array 陣列- 教學筆記(使用visual studio) · 一維陣列 · 二維陣列 · 三維陣列 · 不規則(不對稱)陣列(Jagged Arrays) · 進階用法.
#21. 小山的C# 教學-第38課-Multidimensional Arrarys 多維陣列
1. 多維陣列中的元素需要超過一個以上的索引(編號) 才能指出元素的位置。需要兩個索引的陣列稱為二維陣列,需要三個的稱為三維陣列,以此類推。 2. 以下 ...
#22. [Java,C#]foreach 二維陣列用法 - MRcoding筆記
[Java,C#]foreach 二維陣列用法 ... 筆記:. 今天筆記一下常用foreach的巡覽用法,相當實用,C# 尋覽雖然方便,但他初始化矩陣規則多一點,Java 要走多維 ...
#23. 【C#】Array 與ArrayList @ 次元茶水間:: 隨意窩Xuite日誌
備註:關於多維陣列的念法,例如int[ ][ , , ][ , ] 型別,是一個int 二維陣列的三維陣列的一維陣列。 【ArrayList 物件】. 使用陣列時,往往需要在實作的同時確定元素的個 ...
#24. [C#] 如何取得二維陣列最大與最小值 - m@rcus 學習筆記
Cast<int>().Min();. 在.NET Framework 3.5之後,Array類別實做了 ...
#25. C# 入門指南- 單元8 - 陣列與字串 - 程式語言教學誌
本篇文章介紹C# 的陣列與字串。 ... 陣列(array) 可以含有多筆資料,每一筆資料稱之為元素(element) ,陣列中的元素必須是 ... int[] a = new int[5] {1, 2, 3, 4, 5};.
#26. 陣列Array
GetLength(0) 是取得第一維(列)的長度, GetLength(1)是取得第二維(行)的長度 ... Array.Sort(d);. 這是C#幫我們寫好的排序, 但上面的原理一定要搞懂, ...
#27. 2維陣列,計算學生平均成績,全班總成績
(1).javascript的二維陣列,2種方法: 方法1:(較常用) var stu = new Array();//一維陣列 stu[0] = ["john","tainan","boy"]; stu[1] = ["jolin","taipei","girl"];
#28. Week 4. 陣列 - 國立臺灣大學
一維陣列. 2. 亂數產生器. 3. 猜數字遊戲. 4. 一維陣列的排序、倒排、搜尋 ... 大多現代的程式語言,包括C#,都已有現成的函式庫來. 完成這些工作.
#29. C# — 陣列、陣列方法 - Medium
Array.Sort()方法可以將指定陣列內的元素由小到大遞增排序 寫法. Array.Sort(陣列名稱1,陣列名稱2);//最多兩個引數ex1:成績排序
#30. 第7 章- 陣列(Array)
第4 行就是實際配置2 維陣列的空間, 這就. 等於是先配置一個擁有3 個元素的陣列, 其中. 每一個元素各指向一個擁有4 個int 型別資. 料的陣列。 2. 由於a 是指向一個擁有3 個 ...
#31. [C#] 陣列& List<T> - Tim Chang's Blog
陣列在C# 當中 可以使用Array 類別 此類別可以提供做為所有陣列的基底類別 ... 但如果今天的資料型別改成結構或是類別(陣列就得使用二維以上的陣列).
#32. C#多維數組- C#教學 - 極客書
一個2二維數組可被看作是一個表,該表將具有x行數和列y個。下麵是一個2維數組,其中包含3行和第4列:. Two Dimensional Arrays in C#. 因此,在數組中每個元素由如下 ...
#33. 6-3 二維陣列
二維 陣列(two dimension array)表示法與一維陣列類似,是由兩個中括. 號所組成的,如下一敘述: int j[2][3];. 表示j 是陣列名稱,且是由2 列(rows)與 ...
#34. C#教學(五)流程控制與陣列 - 圖之光
陣列上一篇中有簡單的提到了陣列(array)的使用方法,這裡再強調一下,陣列是由型態加上 ... Length可以知道陣列中總元素的數量,像是上述的2維陣列。
#35. 用c#定义一个n*m的二维数组,在键盘上输入,求全部元素的平均值
for (int i = 0; i < intArr.Length; i++) { //取得每个第二维大于平均值的数组 int[] bigAvg = Array.FindAll(intArr[i], (s => s > avgValue)); if (bigAvg.
#36. 二維陣列的宣告與使用
◎ 概念:如果要大量儲存同一種型態、而且彼此又有密切關係的「表格式」資料,例如數學中的矩陣,這時候就應將其宣告並設定為「二維陣列」。 ◎ 語法範例:. (1) int a[50][ ...
#37. 宣告二維陣列
宣告全班50個人的成績陣列. C#.NET, int[] score = new int[陣列長度];. int[] score = new int[50]; ... double array[2][4] = {{1, 2, 3 }, //第0列, 0, 1, 2, 3行.
#38. 標籤: 陣列 - Rayfly0225
先前有提過一維陣列,而將一維陣列再多一個座標資訊的的陣列方式則可以稱做二維陣列(two-dimensional array),本篇將介紹二維陣列的基本用法。閱讀更多» ...
#39. 陣列
2 /27. 陣列. ▫ 7.1 一維陣列. ▫ 7.2 將陣列當成函數的參數. ▫ 7.3 二維陣列 ... 一維陣列 double Temperature [600]; int Record [52]; char Name [15];.
#40. 如何快速尋找多維陣列中的值?- 藍色小舖BlueShop
如果是二維的話, 可以用改成Jagged Array, 然後再變化. 我寫的是c#, 您參考看看囉. ... 要怎樣才能把二維陣列複製給一維陣列? 我用了Array.
#41. C#二維陣列基本用法例項 - ITREAD01.COM - 程式入門教學
這篇文章主要介紹了C#二維陣列基本用法,以例項形式分析了C#中二維陣列的定義、初始化、遍歷及列印等用法,具有一定參考借鑑價值,需要的朋友可以參考下.
#42. 多維陣列的Resize - 希爾程式個人摘錄
new int[] { 2, 3, 4 }, ... myJaggedArray[1]的Length由2改為1。 Array.Resize(ref myJaggedArray[0], 4); Array. ... 多維陣列、C#.
#43. 二維陣列 - C/C++
5.2 二維陣列 對於兩個變數的問題,其形式為. z = f(x,y). 從資料結構來看,就是一個二維的資料陣列。影像資料屬於這類的資料典型;又如第四章所練習的九九乘法表也 ...
#44. 交错数组(C# 编程指南)
Assign 77 to the second element ([1]) of the first array ([0]): jaggedArray3[0][1] ... 下面声明和初始化一个一维交错数组,该数组包含大小不同的二维数组元素: ...
#45. C#程式設計-41-不規則二維陣列 - 健行科技大學eclass易課平台
本範例檔案可至下面連結下載。 Uploaded by 歐陽芳泉on 2017-06-03.
#46. 字元陣列
本程式的第一個for語句中,用gets函數輸入五個國家名字串。上面說過C語言允許把一個二維陣列按多個一維陣列處理,本程式說明cs[5][20] ...
#47. 第8章字串與陣列8-1 字串處理8-2 一維陣列的處理8-3 建立多維 ...
3 8-1-1 字串的基礎-說明 C#語言內建的string資料型別就是. ... 18 8-2-1 陣列的基礎-說明 「陣列」(Arrays)是一種程式語言的基本資料結構,屬於一種循序性的資料 ...
#48. [C#][Visual Studio] 陣列、集合與列舉(Array, Collection, and ...
[C#][Visual Studio] 陣列、集合與列舉(Array, Collection, and Enum) ... 2. 多維陣列 集合集合與陣列類似,都是建立物件群集的方法。
#49. 陣列(Array) 簡介- NotFalse 技術客
陣列(Array),又稱數組,為一資料結構(Data Structure), 是用來儲存一群『相同資料 ... 計算二維(多維) 陣列位址,普遍的兩種方式: ... C、C++、C#…
#50. C# 二維向量排序 - 天天向上- 痞客邦
1 public class iArray : IComparable 2 { 3 private int x, y; 4 public iArray. ... C# 二維向量排序 ... 17 Array.Sort(vec); 18 foreach (iArray ...
#51. [入門] [Array] .NET 陣列詳論
其實更明確的講, 這個陣列的Upper Bound 仍然是2, 只不過在宣告陣列大小時, C# 是利用string[元素個數] 的方式宣告, 而VB 則是利用String(上限值) 來宣告 ...
#52. Jagged Array for C# - DEV Community
1 String reversal for C# 2 Jagged Array for C# . ... 從古自今,筆者對於陣列的認知不外乎就是一維與多維陣列,然而在工作上也從未遇過不規則陣列 ...
#53. 二維陣列| Java SE 6 技術手冊 - caterpillar
在上面的宣告中,arr 是個int[] 型態的參考名稱,程式會為arr 配置可以儲存10 個int 整數的一維陣列物件,索引為0 到9,初始值預設為0,在Java 中配置陣列之後,若還沒有 ...
#54. [資料結構(Data Structure, DS) 教學教程教材Tutorial] 二維陣列
二維 陣列 · 公式:A[i,j] = I0 + (i + j × m )× d 由(0,0)起始,二維陣列Column-Major · 範例:若陣列A[5, 4]第一個元素為A[0, 0], I0=1000,d=1,求A[3, 2]=?. A[i,j] = 1000 ...
#55. 頭暈沒精神: C# 學習筆記part 22 差異比較,教你使用array 陣列
C# 入門教學22 教你使用array 陣列,有初始值,無初始值,右邊代碼之寫法差異 ... Rank 屬性,是用來得知array 陣列的維度,一維、二維、三維 ...
#56. C#教材(10) 陣列與集合 - 暗黑布萊恩
C# 教材(10) 陣列與集合 ... (1) 一維陣列 陣列宣告方式: ... Reverse(Array), 逆排序, Reverse// 10,9,8,7,6,5,4,3,2,1. Sort(Array), 順排序 ...
#57. [問題] 多維陣列的Resize用法? - C_Sharp - PTT Web
想設定一個二維陣列,但一開始還無法知道要有多大的大小, 上網Google了一下,C#好像沒有類似C++的動態記憶體配置, 但是可以先設定小陣列,再 ...
#58. Python 2D 陣列:二維列表示例 - LearnCode01
列索引是列索引位置從行中的0 開始。 例:. 在此範例中,我們將使用索引位置訪問值 #creare 2D array with 4 rows and 5 columns array=[[ ...
#59. C# 使用List 達成多維不特定長度的陣列效果 - XYZ的筆記本
C# 在使用時array 時,要先宣告陣列大小。 若一開始不確定陣列大小, ... List<List<string>> my2d;// 2維:List 裡面放不確定數量的List<string>
#60. [C#.NET 拾遺補漏]02:陣列的幾個小知識
int[] arr = new int[3] {1, 2, 3}; // 定義一個長度為3 的陣列並初始化 ... 把一個數組的元素複製到另一個數組,可以使用 Array.
#61. [心得] 比較陣列的相減後取絕對值速度- 看板C_Sharp
在C#中使用一維陣列做影像處理能夠大幅度的減少運算時間。 2. ... Lucemia:一維比二維快是應該的,因為少了array到記憶體的加法 01/16 13:55.
#62. C#二维数组初始化概括(新手篇) - 腾讯云开发者社区
C# 数组(Array). 初始化数组: 声明一个数组不会在内存中初始化数组。当初始化数组变量时,您可以赋值给数组。
#63. Algorithm Design - 演算法筆記
void selection_sort(int array[], int n); {; for (int i=0; i<n; i++) ... 一個二維的方格平面,每個格子都有一個細胞,可能是活的,可能是死的。
#64. C語言二維加法程式解釋 - 香腸炒章魚- 痞客邦
大大們能幫忙小弟解釋這個程式嗎?? ~ 拜託哩~這是一個~ 二維陣列的例題程式要求你輸入兩個3X3陣列, 然後將加算結果存入第三陣列內!
#65. [轉貼] C# 陣列的宣告方式 - 聽打逐字稿、字幕- nidBox 親子盒子
[轉貼] C# 陣列的宣告方式 ... 第2種宣告方式,不指定陣列大小 ... [轉貼] JavaScript Array 陣列操作方法大全( 含ES6 ) ...
#66. 二維中一維陣列的亂數不重複 - 陳立仁的部落格
二維 中一維陣列的亂數不重複 ... int[] array = new int[10]; public Form1() ... vb的亂數不重複和C#的推盤遊戲一維矩陣亂數不重複.
#67. C# Arrays 陣列 - 上帝的藝術-微軟的神域
C# 和Java 在陣列宣告方式以及陣列用法上有著一些重大差異。 一維陣列一維陣列以線性 ... arr = new int[5]; // create a 5 element integer array
#68. 0021. C# ASP.net MVC 前端javascript傳遞到後端Controller 二 ...
0021. C# ASP.net MVC 前端javascript傳遞到後端Controller 二維陣列傳遞方法 · 6064 · 0 · C#學習筆記 · 2017-11-02 ...
#69. PowerShell 筆記- 陣列 - 黑暗執行緒
其實,PowerShell 陣列語法比C# 靈活(例如: 索引可以是負數、用. ... 第幾個 $tenNums[0..2 + 4..5] | ConvertTo-Json #0 1 2 4 5 # 二維陣型 [int[, ]] ...
#70. PHP 如何排序二維陣列[第1維:陣列,第2維:關聯式陣列] 分享
由此可見我的第一維陣列只是一般陣列,第二維陣列是關聯式陣列(Associated Array),而排序的需求是依據第二為陣列的type_id 的值進行排序。 我到Sorting ...
#71. 【c# .net】数组(Array) - 知乎专栏
例如:如果二维数组a的两个维度的长度分别为2和3,则该数组的元素总数为6。 1.多维数组的声明和创建形式: 数组类型[ 维度] 数组名= new 数组类型[ 维度长度];.
#72. C#從零開始_自學C#、Visual Studio實境秀28/ 五子棋小遊戲 ...
28/ 五子棋小遊戲排序棋子座標試作二維陣列二階排序Array List<T>LinQ sort OrderBy ThenBy{ https://youtu.be/r_PfLdUFXOU 40:00 國文重要不重要?
#73. C#的多維陣列_加百列の號角學習計畫1____ The plan of ...
C# 一維陣列宣告 ... 二維. 型別[ , ] 陣列名稱= new 型別[ 列數, 行數];. int[,] ta = new int [1,2];. Array.Length 是所有元素數量的總合。 多維.
#74. C#陣列 - 興小弟讀書筆記- 痞客邦
x[2,0]=12; x[2,1]=24; x[2,2]=36; x[2,3]=48;. 語法:int[,]array = new int[3,4] {{10,20,30,40},{5,15,25,35},{12,24,36,48}};. 二維陣列資料輸出.
#75. C# 教學課程陣列教學課程 - CODE MEMO
int[,,] buttons = new int[4,5,3]; //可視為4組二維陣列,每組二維陣列有3個元素,所以總共有4*5*3=60個元素. 範例.
#76. 陣列的運用
宣告score 是一個二維整數陣列,存放10 位同學 ... 2. score(1,1) 陣列元素代表座號2號同學的第2次計概成績。 ... 稱為二維陣列(Two-Dimensional Array)或矩形陣列.
#77. Introduction To Blender Cgcookie Free Download Pdf
VOLUME 4 Blender - La guida definitiva - volume 2 BLENDER -. LA GUIDA DEFINITIVA - VOLUME 2 ... Boolean, Mirror, and Array Modifiers Practicing Mesh.
#78. Visual C# 2013/2012程式設計16堂課(電子書)
9-3 |二維以上陣列的宣告與使用擁有一維陣列已經使程式的彈性大幅增加, ... 以二維陣列為例,C#中宣告二維陣列的方法與一維陣列相似,語法如下: type[,] array-name ...
#79. Visual C# 2015程式設計16堂課(適用2015/2013)(電子書)
int sum = 0; for(int i = 0; i < num; i++) sum += array[i]; Console.WriteLine("本班學生平均分數為: " +(sum/num));執行結果 9-3 |二維以上陣列的宣告與使用擁有一 ...
#80. Visual C# 2017程式設計(適用2017/2015)(電子書)
程•式•設•計隨堂練習透過索引子將一維陣列當作二維陣列使用,這個索引子有兩個參數 i和 j,分別表示二維陣列的第一維及第二維的索引,至於二維陣列的第一維及第二維的大小 ...
#81. Visual C# 2017程式設計經典(電子書) - 第 3-6 頁 - Google 圖書結果
GetLength(1) ⇦取 a2 第 2 維陣列元素總數,傳回 4 CreateInstance 方法建立指定陣列資料型別和 ... 5); 2 產生一個名稱為 a2 的 2x3 字串二維陣列 Array a2 = Array.
#82. Visual C# 2013程式設計經典(電子書) - 第 4-6 頁 - Google 圖書結果
GetLength(1) 取 a2 第 2 維陣列元素總數,傳回 4 建立指定陣列資料型別和大小的一維陣列(具有以零起始 ... 產生一個名稱為 a2 的 2x3 字串二維陣列 Array a2=Array.
#83. Visual C# 2015程式設計經典(電子書) - 第 4-6 頁 - Google 圖書結果
GetLength(1) 取 a2 第 2 維陣列元素總數,傳回 4 建立指定陣列資料型別和大小的一維陣列(具有以零起始 ... 產生一個名稱為 a2 的 2x3 字串二維陣列 Array a2=Array.
c# array二維 在 [心得] 比較陣列的相減後取絕對值速度- 看板C_Sharp 的必吃
這份文章起因是因為目前遇到影像處理的小問題,CCD可以每秒抓6張(2452*2054*16),
但是自己寫的影像處理的時間需要280ms,也就是每秒只能處理3.5張影像,跟不上影像進
來的速度。第一種解決方案是使用市面上的影像處理軟體(ex. Matlab, LabView Vison,
OpenCV),第二種是想辦法改進演算法。在經過方案一的交叉測試後後,我開始著手方案
二。
這邊簡單的說明一下我所使用的CCD運作模式,ActiveX元件將影像放入CCD宣告的顯示
記憶體,這時可呼叫ActiveX方法將影像複製一份到我所想要的記憶體,可以是一維,也
可以是二維,但是陣列內的元素數量相同。我想要達成的目標是即時的影像相減(第n張與
第1張相減取絕對值然後以PictureBox顯示),為了簡化問題,本次文章直接以亂數產生陣
列代表取入的影像,並將重點放在加快陣列相減後取絕對值的速度。
我所使用的硬體為C2D E6550 2.34G*2 RAM 3.25G,,30次測試平均值如下:
Visual Studio 2008 C# 的測試結果
兩組一維陣列(1,2452*2054)相減取絕對值,所需時間為52.604ms
兩組二維陣列(2452,2054)相減取絕對值,所需時間為278.125ms
Matlab2009b 的測試結果
兩組一維陣列(1,2452*2054)相減取絕對值,所需時間為42.819ms
兩組二維陣列(2452,2054)相減取絕對值,所需時間為41.405ms
NI Measurement Studio 8.6 的測試結果(使用axCWArray元件)
兩組一維陣列(1,2452*2054)相減取絕對值,所需時間為559.375ms
兩組二維陣列(2452,2054)相減取絕對值,所需時間為1443.75ms
Maltlab影像處理測試結果
imabsdiff所需時間為86.724ms (兩張相減後取絕對值)
imsubstract所需時間為17.726ms (兩張影像相減)
Visual Studio 2008 C# 將一維陣列轉成影像輸出給PictureBox所需時間為31.250ms
小結論:
1. 在C#中使用一維陣列做影像處理能夠大幅度的減少運算時間。
2. 兩組一維陣列相減後取絕對值,轉成影像輸出給PictureBox總共需要時間83.854ms
,小贏Matlab(86.724ms) XDD。
3. 若要再加快處理速度,需要考慮多執行緒與組合語言搭配使用。
小問題:
1. 承小結論3,請版上強者大大能夠指點我的程式碼,提供改進的建議,謝謝。
附上我的程式碼
// 比較相同element數量的一維陣列與二維陣列相減時間
// 一維陣列相減52.08ms 、二維陣列相減285.9375ms
// 同迴圈內頭尾同時計算對時間沒有影響
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace myImageSub
{
public partial class mainForm : Form
{
public mainForm()
{
InitializeComponent();
ushort[] myArray1 = new ushort[2452 * 2054];
ushort[] myArray2 = new ushort[2452 * 2054];
ushort[] myArray3 = new ushort[2452 * 2054];
ushort[,] myArray4 = new ushort[2452, 2054];
ushort[,] myArray5 = new ushort[2452, 2054];
ushort[,] myArray6 = new ushort[2452, 2054];
Random myRnd = new Random();
double tempTime01, tempTime02;
TimeSpan clock01 = new TimeSpan();
int cycleTimes = 5;
// 一維陣列計算速度
for (int i = 0; i < cycleTimes; i++)
{
for (int j = 0; j < myArray1.Length; j++)
{
myArray1[j] = (ushort)myRnd.NextDouble();
myArray2[j] = (ushort)myRnd.NextDouble();
}
System.DateTime startTime = DateTime.Now;
for (int j = 0; j < myArray1.Length; j++)
{
myArray3[j] = (ushort)Math.Abs(myArray1[j] - myArray2[j]);
}
clock01 = (DateTime.Now - startTime) + clock01;
}
tempTime01 = (clock01.TotalMilliseconds / cycleTimes);
// 二維陣列計算速度
for (int i = 0; i < cycleTimes; i++)
{
for (int j = 0; j < myArray4.GetLength(1); j++)
{
for (int k = 0; k < myArray4.GetLength(0); k++)
{
myArray4[k, j] = (ushort)myRnd.NextDouble();
myArray5[k, j] = (ushort)myRnd.NextDouble();
}
}
System.DateTime startTime = DateTime.Now;
for (int j = 0; j < myArray4.GetLength(1); j++)
{
for (int k = 0; k < myArray4.GetLength(0); k++)
{
myArray6[k, j] = (ushort)Math.Abs(myArray4[k, j] -
myArray5[k, j]);
}
}
clock01 = (DateTime.Now - startTime) + clock01;
}
tempTime02 = (clock01.TotalMilliseconds / cycleTimes);
MessageBox.Show("一維陣列相減所需時間為" + tempTime01.ToString()
+ " ms \r\n" +
"二維陣列相減所需時間為" + tempTime02.ToString() + " ms");
}
}
}
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.46.87
... <看更多>