Browse Source

led颜色检测

wutt 5 năm trước cách đây
mục cha
commit
ca3ade8f22

BIN
LEDTest/bin/com/fire/LightingTestingTask.class


+ 17 - 13
LEDTest/src/com/fire/LightingTestingTask.java

@@ -57,9 +57,8 @@ public class LightingTestingTask {
 					rgb[1] = (pixel & 0xff00) >> 8;
 					rgb[1] = (pixel & 0xff00) >> 8;
 					rgb[2] = (pixel & 0xff);
 					rgb[2] = (pixel & 0xff);
 					//黄  红=255	绿=250	蓝=194   红=255	绿=246	蓝=191  
 					//黄  红=255	绿=250	蓝=194   红=255	绿=246	蓝=191  
-					//红=250	 绿=248	蓝=191    红=247	绿=215	蓝=174   红=254	绿=216	蓝=179  
+					//红=250	 绿=248	蓝=191    红=247	绿=215	蓝=174   红=254	绿=216	蓝=179    红=255	绿=168	蓝=187   红=250	绿=172	蓝=185
 					//绿 红=119	绿=255	蓝=191  红=152	绿=222	蓝=188  红=141	绿=223	蓝=177  红=117	绿=253	蓝=189 红=136	绿=211	蓝=168
 					//绿 红=119	绿=255	蓝=191  红=152	绿=222	蓝=188  红=141	绿=223	蓝=177  红=117	绿=253	蓝=189 红=136	绿=211	蓝=168
-					
 //							绿色i=251,j=203:(117,116,114)
 //							绿色i=251,j=203:(117,116,114)
 //							绿色i=251,j=204:(116,115,113)
 //							绿色i=251,j=204:(116,115,113)
 //							绿色i=251,j=205:(115,114,112)
 //							绿色i=251,j=205:(115,114,112)
@@ -74,28 +73,33 @@ public class LightingTestingTask {
 //							绿色i=251,j=214:(117,116,114)
 //							绿色i=251,j=214:(117,116,114)
 //							绿色i=251,j=215:(119,118,116)
 //							绿色i=251,j=215:(119,118,116)
 					
 					
-					if(i==543 && j==483) {
+					if((i>=533 && i<=561) && (j>=471 && j<=501)) {
 						System.out.println("红="+rgb[0]+"\t绿="+rgb[1]+"\t蓝="+rgb[2]);
 						System.out.println("红="+rgb[0]+"\t绿="+rgb[1]+"\t蓝="+rgb[2]);
 					}
 					}
 					if (rgb[0] != 255 || rgb[1] != 255 || rgb[2] != 255) {
 					if (rgb[0] != 255 || rgb[1] != 255 || rgb[2] != 255) {
-						
 //						红色判断
 //						红色判断
-						if (rgb[0]>=244 && rgb[1] <=170 && rgb[2] <= 186) {
+						if ((rgb[0]>=175 && rgb[0]<=254) && (rgb[1] <=180 && rgb[1] >= 160) && (rgb[2] >= 165 && rgb[2] <= 190)) {
 							red++;
 							red++;
-//							System.out.println("红色i=" + i + ",j=" + j + ":(" + rgb[0] + ","
-//									+ rgb[1] + "," + rgb[2] + ")");
-						} else if (rgb[0] <= 50 && rgb[1] >= 200 && rgb[2] <= 50) {
+							System.out.println("红色i=" + i + ",j=" + j + ":(" + rgb[0] + ","
+									+ rgb[1] + "," + rgb[2] + ")");
+//						}else if (rgb[0] <= 50 && rgb[1] >= 200 && rgb[2] <= 50) {
 //							System.out.println("蓝色i=" + i + ",j=" + j + ":(" + rgb[0] + ","
 //							System.out.println("蓝色i=" + i + ",j=" + j + ":(" + rgb[0] + ","
 //									+ rgb[1] + "," + rgb[2] + ")");
 //									+ rgb[1] + "," + rgb[2] + ")");
-						} else if (rgb[0] >= 135 && rgb[1] >= 200 && rgb[2] >=165) {
+						} else if ((rgb[0]>=130 && rgb[0]<=170) && (rgb[1] <=230 && rgb[1] >= 154) && (rgb[2] >= 136 && rgb[2] <= 195)) {
 							green++;
 							green++;
-//							System.out.println("绿色i=" + i + ",j=" + j + ":(" + rgb[0] + ","
-//									+ rgb[1] + "," + rgb[2] + ")");
-						}else if(rgb[0] >= 244 && rgb[1] >= 215 && rgb[2] >=190) {
-							yellow++;
+							System.out.println("绿色i=" + i + ",j=" + j + ":(" + rgb[0] + ","
+									+ rgb[1] + "," + rgb[2] + ")");
+						}else {
+							//由于黄色不好检测,则除了红和绿就默认是黄色
 							System.out.println("黄色i=" + i + ",j=" + j + ":(" + rgb[0] + ","
 							System.out.println("黄色i=" + i + ",j=" + j + ":(" + rgb[0] + ","
 									+ rgb[1] + "," + rgb[2] + ")");
 									+ rgb[1] + "," + rgb[2] + ")");
+							yellow++;
 						}
 						}
+//						}else if((rgb[0]>=240 && rgb[0]<=255) && (rgb[1] <=225 && rgb[1] >= 180) && (rgb[2] >= 165 && rgb[2] <= 200)) {
+//							System.out.println("黄色i=" + i + ",j=" + j + ":(" + rgb[0] + ","
+//									+ rgb[1] + "," + rgb[2] + ")");
+//							yellow++;
+//						}
 					}
 					}
 				}
 				}
 			}
 			}